Vor 25 Jahren: Intel Pentium mit FDIV-Bug

Es ist einer der berühmtesten Bugs der Computergeschichte: 1994 wurde bekannt, dass der Pentium 60 Gleitkommazahlen nicht immer richtig dividiert.

In Pocket speichern vorlesen Druckansicht 37 Kommentare lesen
Vor 25 Jahren: Intel Pentium mit FDIV-Bug

(Bild: c't/Christof Windeck)

Lesezeit: 2 Min.

51 Jahre hat die Firma Intel mittlerweile auf dem Buckel, aber vor 25 Jahren leistete sie sich einen Fehler mit großen Folgen: Am 30. Oktober 1994 veröffentlichte der kürzlich verstorbene Mathematikprofessor Dr. Thomas Nicely von der Uni Lynchburg den FDIV-Bug des Intel Pentium 60. Die Bezeichung FDIV stammt daher, dass der Fehler bei der Division mancher Gleitkommazahlen auftrat: Floating Point Divides, FDIV.

Intel versuchte zunächst, den Fehler herunterzuspielen, erntete aber stattdessen das, was man heute einen Shitstorm nennt. In der Folge legte Intel ein teures Austauschprogramm auf. Wichtiger jedoch: Man gelobte, in Zukunft öffentlich transparenter über Prozessorfehler zu berichten. Das war die Geburtsstunde der euphemistisch so genannten "Specification Updates" (Spec Updates).

Vom FDIV-Bug betroffen waren nur bestimmte Produktionsversionen (Steppings) von Pentium 60 und 66 (P5) sowie Pentium 90 und 100 (P54C), etwa der Pentium 60 mit SSpec-Code SX879 im Bild oben. Mit korrigierten Belichtungsmasken fertigte Intel dann Pentiums ohne FDIV-Bug, etwa das Stepping SX957.

Die meisten der zahlreichen "Errata", die sich in Specification Updates finden, lassen sich durch Maßnahmen der Mainboard-Hersteller oder mit Patches für BIOS, Microcode oder Betriebssystem umgehen (Workarounds). Doch immer wieder schleichen sich Fehler ein, die einen Austausch der Hardware erforderlich machen. So gab es etwa bei manchen Atom-Celerons Ausfälle nach langjähriger Nutzungsdauer und auch die Sandy-Bridge-Chipsatz-Baureihe Serie 6 hatte anfangs ein Problem. AMDs CPU-Baureihe "Barcelona" wiederum war vom TLB-Bug geplagt.

Schon zum 20-jährigen Jubiläum hatte c't die Hintergründes des FDIV-Bugs genauer beschrieben. (ciw) (ciw)