This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH 0/9] Optimized expf, exp2f, logf, log2f and powf
- From: Arjan van de Ven <arjan at linux dot intel dot com>
- To: "H.J. Lu" <hjl dot tools at gmail dot com>, Szabolcs Nagy <szabolcs dot nagy at arm dot com>
- Cc: GNU C Library <libc-alpha at sourceware dot org>, nd at arm dot com
- Date: Sat, 23 Sep 2017 17:53:33 -0700
- Subject: Re: [PATCH 0/9] Optimized expf, exp2f, logf, log2f and powf
- Authentication-results: sourceware.org; auth=none
- References: <59C1123F.9080003@arm.com> <59C23691.8080100@arm.com> <CAMe9rOqCq0iThPW9e=j9fdf4bZzS6xEth2fC5Q-W6eLkkF78DA@mail.gmail.com>
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