Re: Pentium bug. Is it fixed?
- To: mathgroup at christensen.cybernetics.net
- Subject: [mg276] Re: [mg268] Pentium bug. Is it fixed?
- From: Jerry Keiper <keiper>
- Date: Sat, 3 Dec 1994 15:07:35 -0600
Michal Jarski <jarski at venus.iis.pw.edu.pl> writes: I've recently heard about bug in Pentium FDIV dividing procedure. That's horrible because we don't know what other bugs we can find in this processor. Is it true that Intel fixed the problem and is ready to replace Bug-Pentium with Bug-Free(?)-Pentium? -- As I understand the problem, not all Pentium chips exhibit the problem and the only way to tell is to check it. (No external labeling of the chip can be used to distinguish the good chips from the bad.) The first thing you need to do is figure out whether your chip exhibits the bug. This is easily done with the following test: N[4195835/3145727] - N[4195835/3145727, 30] Mathematically this should be 0, but due to rounding errors in machine arithmetic you can expect to get a small error on the order of $MachineEpsilon. On Pentium chips with the division problem, however, you get a much larger error. (Note: the "division" 4195835.0/3145727.0 will give the correct answer even with the bug because Mathematica has only 2 arithmetic operations: Plus[ ] and Times[ ]. Division is done as multiplication by the reciprocal and 1.0/3145727.0 is calculated correctly. There are, however, rare examples where the reciprocal is also calculated incorrectly, and this would affect Mathematica's machine floating-point "division".) This bug in the Pentium will not affect Mathematica's software floating- point arithmetic because that is based entirely on integer arithmetic. If you are concerned about the accuracy of critical calculations you can use the software floating-point arithmetic instead of the hardware arithmetic by requesting higher precision. As to the question of what Intel's response will be, that remains to be seen. We are anxiously awaiting information on that. Jerry B. Keiper keiper at wri.com Wolfram Research, Inc.