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] Improves __ieee754_exp() performance by 2x-5x on sparc/x86.


On Wed, 3 Jan 2018, Patrick McGehearty wrote:

> Using the glibc perf tests on sparc,
>       sparc (nsec)    x86 (nsec)
>       old     new     old     new
> max   17629   395    5173     144
> min     399    54      15      13
> mean   5317   200    1349      23

These are exactly the same figures as in the previous version that was 
reverted.  Are you *sure* they are the correct results of retesting with 
this patch version?  Remember, the patch submission message must be 
correct for the patch version being submitted and there must be an 
unambiguous division between the content intended for the commit message 
(describing the current patch version) and any other content such as 
descriptions of differences from previous patch versions (which don't go 
in the commit message).

I'd suggest following the conventions used by the Linux kernel, of the 
description of the current patch version for the commit message going 
*first*, then a line "---", then any other text not for the commit message 
(such as information about differences from previous patch versions), then 
the diff itself.

> In addition, because ieee754_exp() is used by other routines, cexp()
> showed test results with very small imaginary input values where the
> imaginary portion of the result was off by 3 ulp when in upward
> rounding mode, but not in the other rounding modes.  For x86, tgamma
> showed a few values where the ulp increased to 6 (max ulp for tgamma
> is 5). Sparc tgamma did not show these failures.  I presume the tgamma
> differences are due to compiler optimization differences within the
> gamma function.The gamma function is known to be difficult to compute
> accurately.

Is this still accurate for the current patch version?

If you tested on a platform requiring ulps updates, you should include the 
updates from "make regen-ulps" as part of the patch, and explicitly 
confirm that, given the patch applied including those ulps updates, all 
the math/ tests PASS on platforms that you specify in the patch submission 
message.

-- 
Joseph S. Myers
joseph@codesourcery.com


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