[PATCH 0/9] Optimized expf, exp2f, logf, log2f and powf

Arjan van de Ven arjan@linux.intel.com
Sun Sep 24 00:53:00 GMT 2017


>>>
>>
>> now i added these to an nsz/math branch so others can test it.
>>
> 
> I created hjl/nsz/math branch to replace x86-64 assembly versions of
> e_expf with generic
> e_expf.c.  I got
> 

<snip results>

all results are <= 1ulp

> 
> Test suite completed:
>    356 test cases plus 352 tests for exception flags and
>      352 tests for errno executed.
>    6 errors occurred.
> [hjl@gnu-efi-2 build-x86_64-linux]$
> 
> Arjan, have you measured performance assembly versions of expf vs generic expf?
> 

the generic expf is faster than the ASM version; the generic version has an order 3 polyinomal
while the ASM version has an order 4.
In addition, the embedding of the errno stuff is a big deal (I already had that for exp() in my
own project) since the exp[f]() code knows exactly when it's not needed at all (the fast path)

so we really should move x86-64 over to this generic version if the 1ulp is acceptable



More information about the Libc-alpha mailing list