Veranschaulichung des von Neumann-Syndrom und des Reconfigurable Computing Paradox

- auch für Laien verständlich -

Reiner Hartenstein, TU Kaiserslautern

Die Einführung des von-Neumann-Computers etwa Mitte der 40er Jahre war die größte Fehlentscheidung [2] in der Geschichte der Datenverarbeitung. So sieht es ein Student:

Von-Neumann-basierte Computer und deren Software als massive Energieverschwender bedrohen die Energie-Wende nicht nur in Deutschland wo das Internet und andere ICT- Infrastrukturen mehr als 15 % des gesamten Stromver- brauchs ausmachen, mit stark steigender Tendenz [3 - 5].

Zur Datenverarbeitung müssen die Daten und der Prozessor zusammengebracht werden. Siehe folgendes Bild.

Hier gibt es zwei voneinander verschiedene Möglichkeiten:

Dies ist das seit den 40er-Jahren dominante von-Neumann- Paradigma, welches den ersten seit 1884 serienreifen elektrischen Computer ablöste: den Hollerith Tabulator, dessen Datenstrom auf dem Lochkarten-Stapel basierte:

Für Reconfigurable Computing [7] kamen erste FPGAs 1984 von Fa. Xilinx als Mikrochips auf den Markt. Vor Beginn des Betriebs werden diese maßgeschneidert „konfiguriert“ zu einem parallelen sogenannten pipeline-Netzwerk. Während des Betriebs laufen durch ein FPGA1 keinerlei Befehlsströme hindurch, sondern nur noch Datenströme.

1 Field-Programmable Gate Array

Das Reconfigurable Computing Paradox.

Mit vielen Transistoren quasi als Weichen, wie in einem Rangierbahnhof, wird das Pipeline-Netzwerk passend zur Anwendung rekonfiguriert. Deshalb werden für eine Anwendungs-Operation etwa 30 mal so viele Transistoren benötigt wie im von-Neumann-basierten Mikroprozessor. Außerdem ist die FPGA-Taktfrequenz sehr viel niedriger. Aus diesem Blickwinkel erscheint die Effizienz dieser Technologie als sehr, sehr viel schlechter.

Trotzdem wurden bei Migrationen von Anwendungen vom Mikroprozessoren hinüber auf FPGAs Beschleunigungs- Faktoren um mehrere Größenordnungen erreicht wie beispielsweise für das Knacken von DES-Verschlüsselungen der Faktor 28.514, gleichzeitig mit einem Energie-Ersparnis- Faktor von 3439 [1].

Diese dramatisch erhöhten Rechenleistungen trotz der sehr niedrig erscheinenden Effizienz der FPGA-Technologie nenne ich das „Reconfigurable Computing Paradox“.

Was heißt das ? Von Neumann ist derart massiv ineffizient, daß ein Paradigmen-Wechsel massive Verbesserungen selbst dann bringt, wenn eine viel schlechtere Technologie verwendet wird, nämlich durch Migration von einem von- Neumann-basierten Mikroprozessor auf eine Datenstrom- getriebene rekonfigurierbare Plattform wie ein FPGA.

Das von-Neumann-Syndrom

Nach meiner Keynote-Adresse auf der 9th IDPT, 2006 in San Diego, prägte Prof. C. V. Ramamoorthy (UC Berkeley) diesen Begriff bei Eröffnung der Diskussion. Das nach dem Ersatz des Lochkartenstapel durch elektronische Speicher heute noch dominante Computer-Modell ist benannt nach dem Mathematiker John von Neumann. Unter von-Neumann- Syndrom werden alle Arten von Ursachen der massiven Ineffizienz dieses Architektur-Modells zusammengefaßt.

Der von-Neumann- Engpaß

Gravierendstes Problem ist dabei der sogenannte „von- Neumann-Engpaß“ (von Neumann bottleneck). D. h., der Prozessor wartet die meiste Zeit auf die Ankunft von Befehlen aus komplexen Speicher-Hierarchien voller riesiger Software-Pakete, oft in der Größe vieler „MLOC“ (Million Lines of Code). Laut Wikipedia hat beispielsweise Windows XP (2001) die Größe von 40 MLOC, Mac OS X 10.4 (2006) die Größe von 86 MLOC, SAP NetWeaver (2007) sogar von 238 MLOC. Zur Behebung des Engpaß gibt es Vorschläge zu „non-von-Neumann“- oder „non-von“-Systemen: rekonfigurierbar [7] und/oder Datenstrom-getrieben [6].

Parallel-Prozessoren sind nicht die Lösung

Bis vor ca. 10 Jahren wurden durch Technologie-Fortschritt (Moore’s Gesetz [9]) die Mikroprozessoren per se immer schneller. Aber ab 2004 wäre die Verlustleistung zu hoch geworden. Den Laptop mit Wasserkühlung wollte man vermeiden. Seitdem werden deshalb sogenannte Mehrkern-Mikroprozessor-Chips angeboten [10], die eine Parallel-Programmierung erfordern. Abgesehen vom starken Rückgang der Programmierer-Produktivität ist der von-Neumann-Engpass bei Befehlsstrom-basierten Systemen auch hier immer noch ein ungeheuer massives Effizienz-Problem (siehe rechte Seite in folgendem Bild).

Nur bei Datenstrom-basierten Systemen, wie z. B. unter Anwendung von FPGAs, tritt dieser von-Neumann-Engpaß nicht mehr auf [6] (siehe linke Seite des obigen Bildes).

Von Neumann-Systeme in den Ruhestand?

Versucht Prof. Gernot Heiser (Univ. of New South Wales in Sydney) Angela Merkel davon zu überzeugen, daß die von- Neumann-Architektur in den Ruhestand gehen sollte ? [8]:

Literatur:

[1]Speed-up-Faktoren

[2]The Biggest Mistake

[3]Unbezahlbare Betriebskosten für Computer drohen

[4]Computer stehen vor einem katastrophalen Umbruch

[5]Warum Computer neu erfunden werden müssen

[6]Computer gegen Xputer - sehr stark vereinfacht

[7]Reconfigurable Systems: A Potential Solution to the von Neumann Bottleneck

[8]Gernot Heiser: The von Neumann architecture is due for retirement

[9] Wikipedia: Mooresches Gesetz

[10] Wikipedia: Mehrkernprozessor