[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [OctDev] i686-specific install failure in java-1.2.6
From: |
Dmitri A. Sergatskov |
Subject: |
Re: [OctDev] i686-specific install failure in java-1.2.6 |
Date: |
Sat, 29 Aug 2009 20:34:57 -0500 |
BTW, while looking into this, I checked netlib's paranoia
(against gcc version 4.4.1 20090725 (Red Hat 4.4.1-2))
While on x86_64 it passed all tests with flying colors even with highest level
of optimization, on i386 it failed quite miserably:
===============================
gcc -O0 -o paranoia paranoia.c -lm
<skipping some passed tests>
Running test of square root(x).
Testing if sqrt(X * X) == X for 20 Integers X.
Test for sqrt monotonicity.
sqrt has passed a test for Monotonicity.
Testing whether sqrt is rounded or chopped.
Square root is neither chopped nor correctly rounded.
Observed errors run from -5.0000000e-01 to 5.0000000e-01 ulps.
Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065218e+00 as X -> 1.
DEFECT: Calculated 7.38905609548934539e+00 for
(1 + (-1.11022302462515654e-16) ^ (-1.80143985094819840e+16);
differs from correct value by -3.44130679508225512e-09 .
This much error may spoil financial
calculations involving tiny interest rates.
<deletia>
====================
Now trying with -O2
<deletia>
Checking for guard digit in *, /, and -.
SERIOUS DEFECT: - lacks Guard Digit, so cancellation is obscured.
Checking rounding on multiply, divide and add/subtract.
* is neither chopped nor correctly rounded.
/ is neither chopped nor correctly rounded.
Addition/Subtraction neither rounds nor chops.
Sticky bit used incorrectly or not at all.
FLAW: lack(s) of guard digits or failure(s) to correctly round or chop
(noted above) count as one flaw in the final tally below.
Running test of square root(x).
Testing if sqrt(X * X) == X for 20 Integers X.
Test for sqrt monotonicity.
DEFECT: sqrt(X) is non-monotonic for X near 2.0000000e+00 .
Testing whether sqrt is rounded or chopped.
Square root is neither chopped nor correctly rounded.
Observed errors run from -5.5000000e+00 to 5.0000000e-01 ulps.
SERIOUS DEFECT: sqrt gets too many last digits wrong.
Testing powers Z^i for small Integers Z and i.
DEFECT: computing
(1.30000000000000000e+01) ^ (1.70000000000000000e+01)
yielded 8.65041591938133811e+18;
which compared unequal to correct 8.65041591938133914e+18 ;
they differ by -1.02400000000000000e+03 .
Errors like this may invalidate financial calculations
involving interest rates.
Similar discrepancies have occurred 4 times.
Seeking Underflow thresholds UfThold and E0.
FAILURE: multiplication gets too many last digits wrong.
Smallest strictly positive number found is E0 = 0 .
FAILURE: Either accuracy deteriorates as numbers
approach a threshold = 0.00000000000000000e+00
coming down from 0.00000000000000000e+00
or else multiplication gets too many last digits wrong.
Testing X^((X + 1) / (X - 1)) vs. exp(2) = 7.38905609893065041e+00 as X -> 1.
DEFECT: Calculated 1.00000000000000000e+00 for
(1 + (0.00000000000000000e+00) ^ (inf);
differs from correct value by -6.38905609893065041e+00 .
This much error may spoil financial
calculations involving tiny interest rates.
Searching for Overflow threshold:
This may generate an error.
Can `Z = -Y' overflow?
Trying it on Y = -inf .
finds a FLAW: -(-Y) differs from Y.
Overflow threshold is V = -inf .
Overflow saturates at V0 = inf .
No Overflow should be signaled for V * 1 = -inf
nor for V / 1 = -inf .
Any overflow signal separating this * from the one
above is a DEFECT.
FAILURE: Comparisons involving +--inf, +-inf
and +-0 are confused by Overflow.
SERIOUS DEFECT: X / X differs from 1 when X = -inf
instead, X / X - 1/2 - 1/2 = nan .
SERIOUS DEFECT: X / X differs from 1 when X = 0.00000000000000000e+00
instead, X / X - 1/2 - 1/2 = nan .
The number of FAILUREs encountered = 4.
The number of SERIOUS DEFECTs discovered = 4.
The number of DEFECTs discovered = 3.
The number of FLAWs discovered = 2.
The arithmetic diagnosed has unacceptable Serious Defects.
Potentially fatal FAILURE may have spoiled this program's subsequent diagnoses.
END OF TEST.
===========================================
-mieee-fp does not seem to change anything....
FWIW.
Dmitri.
--
- Re: [OctDev] i686-specific install failure in java-1.2.6, Dmitri A. Sergatskov, 2009/08/29
- Re: [OctDev] i686-specific install failure in java-1.2.6, John W. Eaton, 2009/08/29
- Re: [OctDev] i686-specific install failure in java-1.2.6, Dmitri A. Sergatskov, 2009/08/29
- Re: [OctDev] i686-specific install failure in java-1.2.6, Dmitri A. Sergatskov, 2009/08/29
- Re: [OctDev] i686-specific install failure in java-1.2.6, Alex Lancaster, 2009/08/31
- Re: [OctDev] i686-specific install failure in java-1.2.6, Dmitri A. Sergatskov, 2009/08/31
- Re: [OctDev] i686-specific install failure in java-1.2.6, Dmitri A. Sergatskov, 2009/08/31