[Bug libc/15676] New: Benchtest inputs are not reprezentative.
neleai at seznam dot cz
sourceware-bugzilla@sourceware.org
Tue Jun 25 05:28:00 GMT 2013
http://sourceware.org/bugzilla/show_bug.cgi?id=15676
Bug ID: 15676
Summary: Benchtest inputs are not reprezentative.
Product: glibc
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: libc
Assignee: unassigned at sourceware dot org
Reporter: neleai at seznam dot cz
CC: drepper.fsp at gmail dot com
Now benchtest inputs vary only five values. These inputs are 0.1 0.2 0.3 0.4
0.5. and five worstcase ones.
When we look to math function implementation we see that this is nearly not
enough to cover all paths, from sysdeps/x86_64/fpu/s_sinf.S below there are
following cases and as there are no inputs for cases 3 and 5 there may be
regression that benchtests cannot catch.
* 1) if |x| == 0: return x.
* 2) if |x| < 2^-27: return x-x*DP_SMALL, raise underflow only when needed.
* 3) if |x| < 2^-5 : return x+x^3*DP_SIN2_0+x^5*DP_SIN2_1.
* 4) if |x| < Pi/4: return x+x^3*(S0+x^2*(S1+x^2*(S2+x^2*(S3+x^2*S4)))).
* 5) if |x| < 9*Pi/4:
A proper way is use randomized inputs to ensure we cover all cases now and
everytime when case analysis changes.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Glibc-bugs
mailing list