Analoge & digitale Vorgänger
Hemming begann seine Hardwaregeschichte mit einer Unterscheidung: Analogrechnen (Rechenschieber, Differentialanalysator) versus Digitalrechnen (Napier-Stöcke, Schreibtischrechner). Beide Linien entwickelten sich parallel; die digitale Linie dominierte schließlich.
Napier (1550–1617)
John Napier erfand Logarithmen, die den Rechenschieber ermöglichten – ein analoges Gerät, bei dem die physische Länge einen logarithmischen Wert darstellt. Addition von Längen = Multiplikation von Zahlen. Napier entwarf auch ‚Napier-Stöcke': Elfenbeinstäbe zur Unterstützung der Multiplikation. Digital, nicht zu verwechseln mit dem Rechenschieber.
Von Schickert zu Babbage
Wilhelm Schickert (1623) entwarf eine Maschine für die vier Grundrechenarten; sie brannte ab, bevor sie fertiggestellt wurde. Pascal (1623–1662) baute eine Addiermaschine für die Steuerbewertung. Leibniz fügte Multiplikation & Division hinzu, aber die Maschinen waren unzuverlässig.
Charles Babbage (1791–1871) entwarf die Differenzenmaschine: eine Maschine zur Auswertung von Polynomen an gleich beabstandeten Werten durch sukzessive Addition und zur Erzeugung fehlerfreier gedruckter Tabellen. Er vervollständigte sie nie; ein norwegisches Vater-Sohn-Team (Scheutz) baute funktionierende Versionen. 1992 baute ein Team in England Babbages analytische Maschine nach seinen Zeichnungen – sie funktionierte.
Babbages analytische Maschine war der von Neumann-Architektur nahe: ein Speicher (Speicher), eine Mühle (Rechenwerk), & bedingte Verzweigung. Lady Lovelace veröffentlichte die ersten Programme dafür.
Relaiscomputer bis ENIAC
Die moderne Ära des Rechnens begann mit Relaiscomputern in den frühen 1940er Jahren. Hemming verfolgten die Geschwindigkeitsentwicklung:
| Ära | Technologie | Geschwindigkeit | |---|---|---| | Vor 1940 | Handrechner | 1/20 Ops/Sek | | ~1940 | Relais (Bell Labs) | 1 Op/Sek | | 1946 | ENIAC (Vakuumröhre) | ~5.000 Ops/Sek | | 1952 | IBM 701 | ~17.000 Ops/Sek | | ~1993 | Moderner Arbeitsplatzrechner | 10⁹ Ops/Sek |
George Stibitz bei den Bell Telephone Laboratories baute Relaiscomputer aus Teilen von verworfenen M9-Waffenrichtern. Hemming nutzte jahrelang einen davon. Diese Relaismaschinen waren nicht schnell – etwa eine Operation pro Sekunde – aber sie waren zuverlässig & programmierbar.
ENIAC (1945–1946) lief zunächst durch Plugboard-Verdrahtung, wie ein riesiger Plugboard-Computer. Nick Metropolis & Dick Clippenger konvertierten ihn später zu dezimalem Switch-Programmieren aus ballistischen Tabellen. ENIAC verbrauchte etwa 150 kW.
Interne Programmierung wurde erst praktisch, als ausreichend Speicher vorhanden war. Von Neumanns Rolle war die eines Beraters für Mauchly & Eckert; interne Programmierung wurde im Team besprochen, bevor von Neumanns Beteiligung, obwohl seine weit verbreiteten (aber nie formell veröffentlichten) Berichte die Konzepte verbreiteten.
Größenordnungen der Geschwindigkeit
Die Geschwindigkeitsentwicklung vom Handrechner zu dem Arbeitsplatzrechner der 1990er Jahre umfasst mehr als zehn Größenordnungen in etwa 50 Jahren.
Wo Hardware nicht hingehen kann
Hemming präsentierte drei physikalische Grenzen, die begrenzen, wie schnell Computer letztendlich laufen können. Dies waren keine technischen Herausforderungen, die Einfallsreichtum überwinden würde – sie waren physikalische Gesetze.
Grenze 1: Molekülgröße
Komponenten können unter atomare Dimensionen nicht schrumpfen. Ein Transistorgatter von 10 Atomen Breite: Quantentunneln dominiert & der Transistor schaltet nicht mehr zuverlässig. 1993 schätzte Hemming, dass eine Unterschreitung von etwa 100.000 Atomabständen zwischen verbundenen Geräten (grob 3 Picosekunden Lichttransitzeit) eine echte physikalische Grenze darstellte.
Grenze 2: Lichtgeschwindigkeit
Signale breiten sich höchstens mit c = 3×10⁸ m/s im Vakuum aus (weniger in der Leitung, grob 2×10⁸ m/s). Ein 1-GHz-Taktzyklus ist 1 Nanosekunde; in 1 ns legt Licht 30 cm zurück. Ein Chip, der ein Signal über 15 cm senden & innerhalb eines Taktzyklus eine Antwort erhalten muss, arbeitet nahe der Lichtgeschwindigkeitsgrenze.
Mit zunehmenden Taktgeschwindigkeiten müssen die Chipabmessungen schrumpfen, um die Signalrundlaufzeit unter einer Taktperiode zu halten.
Grenze 3: Wärmeableitung
Mehr Komponenten pro Flächeneinheit + schnelleres Schalten = mehr Leistung pro Flächeneinheit = mehr Wärme. Wärme muss abgeleitet werden, oder Komponenten schmelzen. 1993 sanken die Betriebsspannungen gegen 2-3 V, um Schaltleistung zu reduzieren. Diamantschichten als Wärmeleiter wurden untersucht. Reversibles Rechnen (thermodynamisch verlustfrei) existierte nur theoretisch.
Diese drei Grenzen zusammen erklären, warum Einzelprozessor-Geschwindigkeitsgewinne um die 1990er Jahre zur Sättigung neigten & warum das Interesse an parallelen Architekturen wuchs.
Anwendung der Lichtgeschwindigkeitsgrenze
Eine CPU läuft mit 3 GHz. Ein Taktzyklus = 1/3 ns ≈ 0,333 ns. Signalgeschwindigkeit in Kupfer: ~2/3 c ≈ 2×10⁸ m/s.
Die Experten, die spektakulär falsch lagen
Hemming bemerkte einen der berühmtesten Vorhersagefehler in der Technologiegeschichte: Experten Ende der 1940er Jahre schätzten, dass die Welt höchstens drei bis fünf Computer benötigen würde. Tom Watson von IBM soll zwei gesagt haben.
1993 waren Millionen von Computern in Betrieb.
Warum Experten versagten
Die Experten extrapolierten aus den damaligen Anwendungsfällen: wissenschaftliche Berechnung in nationalen Laboratorien. Sie ahnten nicht die gleichwertige Produktintuition: Computer würden nicht tun, was Menschen bereits taten, schneller. Computer würden völlig neue Kategorien von Arbeit ermöglichen, die es vorher nicht gab.
Das Versagensmuster: Experten in einer reifen Technologie sind am zuversichtlichsten über ihre Grenzen & am ehesten falsch über ihre zukünftigen Anwendungen. Ihre Expertise gibt ihnen genaue Modelle der Gegenwart; sie gibt ihnen keine Modelle von dem, was möglich werden wird.
Parallele Architekturen
Die Einzelprozessor-Geschwindigkeit näherte sich um die 1990er Jahre einer Sättigung. Die Branchenantwort: mehrere Recheneinheiten, Pipelines, Cache-Hierarchien, & massiv parallele Maschinen. 1993 gab es keine einzelne dominierende parallele Architektur – viele konkurrierende Designs mit unterschiedlichen Kompromissen & unterschiedlichen Programmiermodellen. Hemming vermerkte diese Zersplitterung als ein Problem: ohne einen Standard wird die Programmieranstrengung über inkompatible Systeme verteilt.
Warum Experten Fehler vorhersagen
Hemming behandelte die Vorhersage von 3-5 Computern nicht als Kuriosität, sondern als Lektion über die Grenzen von Fachwissen. Experten modellieren die Gegenwart gut; sie versagen bei Anwendungen, die es noch nicht gibt.
Los-Alamos-Daten & die Wachstumsgleichung
Hemming zitierte ein von den Los-Alamos-Nationallaboratorien (LANL) erstelltes Diagramm, das die Geschwindigkeit des schnellsten am Markt erhältlichen Computers zu jedem Zeitpunkt verfolgten. Die Daten passten zu einer Exponentialgleichung: Die Geschwindigkeit verdoppelte sich ungefähr alle 18 Monate – später als Moores Gesetz für Transistorzahl popularisiert.
Die LANL-Gleichung: Geschwindigkeit(t) = Geschwindigkeit₀ × 10^(bt), wobei b ≈ 0,09 pro Jahr (Verdoppelung grob alle 3,3 Jahre in Operationen pro Sekunde, unterschiedlich von Transistor-Zahl-Verdoppelung).
Hemming benutzte dies, um einen Punkt über Extrapolation zu machen: Die Exponentialfunktion kann nicht auf unbestimmte Zeit fortdauern. Die drei physikalischen Grenzen setzen eine Obergrenze. Wann trifft die Exponentialfunktion die Obergrenze? Diese Übergangspunkt markiert das Ende der Einzel-Prozessor-Ära.
1993 näherte sich die Industrie bereits dieser Obergrenze, was Interesse in parallelen Architekturen, Pipeline-Tricks & Cache-Hierarchien antrieb – alles kleine Schritte zu Parallelität, anstatt schnellere Einzelthread-Ausführung.