On Tue, Sep 16, 2025, at 15:20 CDT, Matthias Maier <[email protected]> wrote:

>> C program that I assume is the worst case for FlexiBLAS: doing
>> 100,000,000 scalar (1x1 matrix) multiplications with repeated calls to
>> cblas_dgemm(). These numbers obviously fluxuate, but they are
>> representative:
>>
>>   * netlib:               8.51s
>>   * openblas:             13.75s
>>   * flexiblas (netlib):   24.71s
>>   * flexiblas (openblas): 27.45s

> So this is basically measuring the pure function call overhead
> introduced by flexiblas which amounts to roughly 15s for 100,000,000
> repeated calls to cblas_dgemm(). This is pretty good I would say.

Just for reference what we are talking about: 100,000,000 scalar
multiplications (with 2 cycle inverse throughput) on a core with 3GHz
will amount to 0.07s.

So calling into blas for that adds roundabout a factor ~100
inefficiency. Flexiblas will worsen that to a factor ~300.


Best,
Matthias

Reply via email to