Pentium is unreliable for floating-point calculations

Bernard Murray bernard at elsie.nci.nih.gov
Tue Nov 29 18:26:21 EST 1994


In article <3beqpr$1h9 at lyra.csx.cam.ac.uk>, tjrc1 at mole.bio.cam.ac.uk (Tim Cutts) writes:
> prm at aber.ac.uk (Pedro Mendes) writes:
> 
> >4195835.0 - (4195835.0 / 3145727.0 ) * 3145727.0
> 
> >The result should be 0, but the pentiums seem to think it is 256...
> 
> Bear in mind you should make sure that the program doing the
> calculation is using double precision.  It is apparently only double
> precision that is affected.
> 
> Tim.

I am also led to believe that the bug only affects the floating point side
of things (equivalent of 80x87 instructions) so packages which use software
emulation for floating point instructions will give the correct result.
Unfortunately it is the number crunching packages that are most likely to
encounter the error that will be compiled for the built-in FPU.
I hope that no one is using a Pentium machine for control of life-dependent
machinery (life support apparatus, biological laser targeting, NMR/PET
etc. scanning analysis).  I'd hate to see Intel murder people using a
microcode bug.

I think Intel are being rather shoddy in their treatment of the customer.
They refuse to recall known faulty (but unsold) chips and will not give
details on how to tell if a chip is faulty or not other than buying it in
a machine.  Roll on the Power PC!!

	Bernard (a 486 user)

Bernard Murray, Ph.D.
bernard at elsie.nci.nih.gov (National Cancer Institute, NIH, Bethesda MD, USA)




More information about the Bio-soft mailing list