Pentium is unreliable for floating-point calculations
prm at aber.ac.uk
Mon Nov 28 10:50:03 EST 1994
Since many of the readers in these two groups use computers regularly for
calculations, I would like to bring your attention to the fact that computers
based on the intel pentium processor cannot be garanteed to produce results
that are even close to the real answer. This is due to a bug in the microcode
of the FDIV (floating-point division) instruction. Intel has confirmed that
the bug is there and that the next stepping of the chip will have the bug
corrected. Reading comp.sys.intel reveals that all the pentiums on the market
all have the bug (including machines bought a few weeks ago).
The bug is repeatable although it only ocurrs with a finite number of numbers.
However you can never be sure that one of these numbers popped up in some
intermediate calculations. Remembe, there is no way you can know your results
are right, except if you repeat the calculations on other processors (eg 486).
Intel is trying to play down the importance of the bug by saying that with
random selected numbers the error will only appear on average once every 27000
years. The problem is it can happen and if it does it will cause major
problems (eg non-convergence of iterative methods, like ODE solvers).
My next posting is a copy of the intel press release, for further information
read comp.sys.intel. Intel currently says that it will only substitute the
processors if users can prove that they do intensive floating-point
calculations (they seemed to have mentioned applications like chaos research).
The following are for sure in danger of being totally wrong if ran on a
-minimization (protein structure calculations use this a lot)
-integration of ODEs (eg simulation of the dynamics of metabolic pathways)
-time series analysis and processing (including image analysis)
To test if you have a defective pentium or not do the following operation (the
windows calculator will be enough for this):
4195835.0 - (4195835.0 / 3145727.0 ) * 3145727.0
The result should be 0, but the pentiums seem to think it is 256...
Pedro Mendes Inst. Biological Sciences
prm at aber.ac.uk Univ. Wales Aberystwyth
(home: pedro at enzyme.demon.co.uk) Dyfed SY23 3DA
More information about the Bio-soft