This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] update libm-test-ulps for new exp


On 18/07/18 18:25, Joseph Myers wrote:
On Thu, 12 Jul 2018, Szabolcs Nagy wrote:

Update error bounds for the new exp implementation on alpha, hppa,
m68k/coldfire, microblaze, mips/mips32, mips/mips64, nios2, powerpc,
riscv/nofpu, riscv/rv64, s390, sh and sparc.  Only non-nearest
rounding ulp bounds increased.  Did not run the math tests on real
hardware, but used the following ULP bounds to generate the new files:

This is adding ulps for non-to-nearest tests on some architectures that
only support round-to-nearest and so have no such ulps in their existing
files.

(I am generically dubious of such an update not based on actually running
tests on the architectures involved - there can be architecture variations
because of differences in e.g. whether multiply and add get fused - but
adding ulps for tests that would not run on those architectures is
definitely wrong.)


i created this patch in case the changes get accepted late
so there is no time for maintainers to update the ulp file.
i agree that this is not good practice.

the numbers are upper bounds so max(fma-ulp,nofma-ulp) was
used for all targets.

in the long term i'd prefer if there was a generic ulp error
file and a target could just say it uses the generic bounds
(probably per function), so if a generic implementation is
changed, less ulp modifications are needed (targets may still
need to test in case of variation in target behaviour but
most of the time i'd expect the same bound to work for all,
if some target wants its own implementation then the burden
of maintaining separate ulp bounds is on that target)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]