[an error occurred while processing this directive]

The Pentium FDIV bug - a Picture

Intel Pentium chips manufactured before a certain date have a bug in their floating point processor which returns less than full precision results for some combinations of divisor and dividend when performing a Floating point DIVision (FDIV). A well known operation which exhibits this phenomenon is 4195835/3145727. You can check to see if your Pentium has the FDIV bug by entering the following formula in the Windows calculator:

(4195835 / 3145727) * 3145727 - 4195835

The image below is a 3d graph of the function x/y in the region of 4195835/3145727. Specifically, the region is:

4195833.0 <= x <= 4195836.4

3145725.7 <= y <= 3145728.4

On a 486/66, the function graphs as a monotonically increasing surface with the low point in the foreground corner (where x is low and y is high) and a high point in the background corner (where x is high and y is low). On a Pentium with the FDIV bug there are two triangular areas in the region where an incorrect result is returned. The correct values all would round to 1.3338 and the incorrect values all would round to 1.3337, an error in the 5th significant digit.

An archive of principal papers on the Pentium FDIV bug is available at: http://www.mathworks.com/company/pentium/index.shtml

click here to retrieve the GIF file

A ZIP file containing the Microsoft Excel spreadsheet along with an Encapsulated Postscript copy of this graphic can be retrieved from: http://www.ipsr.unit.ku.edu/stafffil/hoyle/pentium_fdiv/pentgrph.zip

Larry Hoyle (larryhoyle@ku.edu)
Institute for Policy & Social Research
University of Kansas
Nov. 30, 1994

[an error occurred while processing this directive]