Unterthema: Europäer entwickeln Parallel-Software
Bitte beachten Sie auch diese Ergänzung!
In den letzten Jahren hat sich die Meinung durchgesetzt, daß nur massiv parallele Rechner (Massively Parallel Processor, MPP) mit mehreren hundert oder tausend Prozessoren das angestrebte Ziel im Teraflops-Bereich (= 1 Million MFLOPS) erreichen können. Die Idee besteht darin, hundert oder tausend Prozessoren gleichzeitig an einer Problemstellung arbeiten zu lassen und so Aufgaben lösen zu können, die klassische Supercomputer mit ihren maximal 16 Prozessoren nicht in akzeptabler Zeit bewältigen.
Wesentliche Komponente eines jeden Parallelrechners ist ein Kommunikationsnetzwerk, über das die Prozessoren miteinander verbunden sind, um Abläufe zu koordinieren und Daten auszutauschen. Das Netzwerk muß ausreichend schnell sein, damit der Zeitgewinn durch die verteilte Bearbeitung nicht durch den Zeitbedarf für die Kommunikation und das Zusammenfassen der Ergebnisse aufgehoben wird.
Es gibt unterschiedliche Abschätzungen für den Koordinationsaufwand und die erzielbare Leistungssteigerung. (aus [1])
Ein weiteres Merkmal ist die weitgehende Skalierbarkeit, also die Möglichkeit, kleinste Systeme mit wenig Prozessoren über viele Zwischenstufen bis zum größten System ausbauen zu können. Um die maximale Leistung eines Parallelrechners zu erreichen, muß die Software das zu lösende Problem so organisieren, daß alle Prozessoren gleichzeitig und möglichst vollständig ausgelastet sind.
Das MIMD-Prinzip (Multiple Instruction Stream, Multiple Data Stream) wird charakterisiert durch die Verarbeitung vieler unabhängiger Befehlsströme auf verschiedenen Prozessoren mit unterschiedlichen Daten. Dieses Prinzip erlaubt die flexiblere Umsetzung von parallelen Algorithmen und ist die Grundlage der meisten MPPs. Die Synchronisation der einzelnen Prozessoren erfordert dann allerdings einen höheren Aufwand. Um Befehle und Daten zu holen, muß jeder Prozessor mit dem Speicher kommunizieren. Dies kann durch direkten Zugriff jedes Prozessors auf einen physikalisch gemeinsamen, globalen Speicher erfolgen oder durch Zugriff auf eigene, lokale Speichereinheiten. Auch beim verteilten Speicherprinzip ist durch geeignete Software- und Hardware-Organisation der Aufbau logisch gemeinsamer, globaler Speicher möglich.
In massiv parallelen Systemen ist ein gemeinsamer Speicher für alle Prozessoren wegen der extremen Anzahl erforderlicher Verbindungswege oder der notwendigen hohen Bandbreite eines gemeinsamen Busses nicht optimal realisierbar. Daher bestehen die Funktionseinheiten massiv paralleler Rechner häufig aus Prozessorspeicherpaaren, den sogenannten Knoten.
Die Hypercube-Topologie wird bei den Systemen von nCube angewandt. Die Kombination zweier Anordnungen bildet den Hypercube der nächsthöheren Dimension.
In neueren, massiv parallelen Systemen wird oft eine Baumstruktur oder eine zweidimensionale Gitteranordnung der Knoten gewählt. Bei der Baumstruktur spricht man auch von einem `fat tree´, wenn die Kommunikationsbandbreite der Knotenverbindungen in Richtung der `Baumwurzel´ höher ausgelegt ist als zwischen den `Ästen´ und `Zweigen´. Für die Effizienz einer Problemlösung auf einem massiv parallelen System ist es wichtig, das Verhältnis zwischen Rechen- und Kommunikationsleistung der Knoten an die Anforderungen der Software anzupassen. Es gibt Probleme, die bei einer parallelen Zerlegung fast gar keine oder aber extrem hohe Kommunikation zwischen den Knoten erfordern. Nach diesem kurzen, sicher nicht vollständigen Überblick über die Unterscheidungsmerkmale massiv paralleler Systeme sollen nun einige aktuelle Maschinen vorgestellt und charakterisiert werden.
Schon 1986 stellte die Thinking Machines Corporation des Amerikaners W. Daniel Hillis ihre erste Connection Machine mit 65 536 Prozessoren in SIMD-Struktur vor. Das im November 1991 vorgestellte Modell CM-5 ist prinzipiell (ohne Berücksichtigung der Kosten) skalierbar bis zu 64 Knoten mit 16 384 Prozessoren und der erste Rechner dieses Herstellers, der die SIMD- und MIMD-Architektur miteinander verbindet. Die bislang höchste Ausbaustufe mit 1024 Prozessoren wurde zu einem Preis von zirka 30 Millionen Dollar an das Los Alamos National Laboratory in New Mexico ausgeliefert. Nach Aussage des amerikanischen Marktforschungsinstituts IDC hält die TMC mit ihren Maschinen einen Weltmarktanteil von 39,2 Prozent.
Immer wieder beliebt: blinkende Lämpchen signalisieren Rechneraktivität bei der Connection Machine CM-5. Sie kombiniert das SIMD- mit dem MIMD-Prinzip.
Für das aktuelle Einstiegsmodell CM-5 Scale 3 mit einer theoretischen Spitzenleistung von 4 Gigaflops und einem Preis von unter 1 Million Dollar, hat sich zum Beispiel die Bergische Universität GHS Wuppertal entschieden. Diese Maschine enthält 32 Knoten mit einer Rechenleistung von je 128 Megaflops, die über ein breitbandiges Kommunikationsnetzwerk gekoppelt sind. Dabei greifen Rechen- und Plattenspeicherknoten gleichberechtigt auf dieses Netzwerk zu. Dies führt zu einer neuen, höheren Flexibilität bei der Wahl zwischen hoher Rechenleistung und/oder hoher Speicherkapazität. Die CM-5-Maschinen haben ein komplexes Verbindungsnetzwerk, bestehend aus dem Datennetzwerk, dem Kontrollnetzwerk und einem Diagnosenetzwerk. Genau diese Aufteilung erlaubt die Kombination des SIMD- und MIMD-Prinzips bei der Abbildung der zu lösenden Aufgaben auf die Hardware der Maschine. Die Knoten enthalten einen 33-MHz-SPARC-Prozessor und vier optionale Vektorprozessoren des Herstellers Weitek sowie maximal 32 MByte Speicher. Die Rechenleistung ohne/mit Vektorprozessoren beträgt 5 Megaflops / 128 Megaflops je Knoten. Das Kommunikationsnetzwerk gewährleistet mindestens 5 MByte/s Übertragungsrate zwischen beliebigen Knoten. Für die Struktur der Netzwerke wurde der `fat tree´ gewählt.
Zu den fünf europäischen Paragon-Installationen zählen das Kernforschungszentrum Jülich und die Universität Stuttgart, die jeweils Systeme mit 72 Knoten und maximal 5 GFLOPS anschafften. Anfang Mai lieferte Intel erstmalig ein für die Paragon-Systeme entwickeltes, skalierbares Betriebssystem aus, das an OSF/1 angelehnt ist.
nCube bietet in der Serie 2S Systeme mit bis zu 8192 Prozessoren und maximal 34 GFLOPS an.
Mit 8 Prozent Weltmarktanteil zählt die nCUBE Corporation ebenfalls zur Runde der Marktführer. nCUBE hat durch ihre Zusammenarbeit mit dem Softwarehaus Oracle Corp. den kommerziellen Markt ins Auge gefaßt. Das aktuelle Modell nCube 2S in Hypercube-Topologie, MIMD-Architektur und mit herstellerspezifischen 64-Bit-CMOS-Prozessoren leistet 3,5 Megaflops pro Knoten, von denen jeder bis zu 64 MByte Speicher enthält. Ein Knotenprozessor vereinigt eine 64-Bit-CPU, eine 64-Bit-IEEE-FPU, eine Message Routing Unit und 14 DMA-Kanäle auf einem Chip. Durch die relativ niedrige Rechenleistung der einzelnen Knoten müssen damit aufzubauende Höchstleistungssysteme mit bis zu 8192 Knoten ausgestattet werden. Tatsächlich bestand das bisher größte verkaufte System aus 2048 Knoten, es ging an das Los Alamos National Laboratory in New Mexico. In Deuschland hat sich die Universität Hannover einen nCUBE zugelegt, allerdings mit nur 64 Knoten.
Die Multiplex- und Routing-Einheiten des Parsytec GC erlauben wahlfreie Topologien. Die vorläufige el-Version des GC ist noch nicht mit den aktuellen 25-MFLOPS-T9000-Transputern bestückt.
Die virtuellen 65 536 Verbindungsmöglichkeiten des T9000 werden durch Inmos-C104-Routing-Chips auf reale Links abgebildet. Durch den hohen Integrationsgrad von Scheduling-, Multiplexing- und Routing-Mechanismen auf dem Transputerknoten können beliebige Topologien für das Gesamtsystem verwirklicht werden. Die virtuelle Kommunikationsstruktur erleichtert die Skalierbarkeit des Parallelrechners und die Abstimmung von Rechen- und Kommunikationsleistung.
Weitere Teilnehmer des Rennens um den Teraflops-Rechner sind beispielsweise das britische Unternehmen Meiko Scientific Ltd. mit ihrer Maschine `Computing Surface´, die bisher über 400mal installiert wurde. In der MIMD-Architektur mit variabler Topologie arbeiten Intel-i860- oder Sun-SPARC-Prozessoren mit Inmos-T800-Transputern als Kommunikationsprozessoren zusammen und erreichen 40 Megaflops pro Knoten. Das System kann auf bis zu einigen hundert Knoten ausgebaut werden.
Der 1992 vorgestellte KSR-1 des amerikanischen Herstellers Kendall Square Research ist zur Zeit der einzige massiv parallele Rechner auf dem Markt, der das Modell der gemeinsamen Speicherbenutzung der maximal 1088 Knotenrechner verwirklicht. Jeder Knoten enthält einen superskalaren 20-MHz-RISC-Chip und 32 MByte Speicher, der durch Hardware-Unterstützung als virtuell gemeinsamer Speicher angesprochen werden kann. Die Spitzenleistung eines Knotens beträgt 40 Megaflops.
Bei DEC gibt es die Serie DECmpp 12000 in Ausbaustufen von 1024 bis 16 384 Prozessoren. Die Spitzenleistung liegt bei 6,3 GFLOPS (32 Bit).
Auch Schwergewichte wie IBM und Cray Research planen die Markteinführung von MPPs. Vulcan, so der Projektname der IBM-Maschine, soll in ein bis zwei Jahren marktreif sein. IBM plant dabei mehrere hundert Knoten mit physikalisch verteiltem Speicher, der aber von allen Knoten aus ansprechbar sein soll. Crays Maschine `Tera 3D´ enthält den DEC-Alpha-Mikroprozessor und soll auf maximal 1024 Knoten ausgebaut werden können, bei einem Speicherprinzip ähnlich dem der IBM-Maschine. Anvisiert sind 300 Gigaflops für dieses System in diesem Jahr und bis 1997 eine Sustained Performance von einem Teraflops. Das Jet Propulsion Laboratory (JPL) soll noch in diesem Jahr ein System mit 256 Prozessoren und einer Spitzenleistung von 38 Gigaflops erhalten.
Im `Real World Computing´-Programm des japanischen Industrieministeriums MITI sind neben neuronalen und optischen Computern auch massiv parallele Systeme in der Entwicklung. NEC, Fujitsu und andere japanische Supercomputerhersteller verfolgen ebenfalls Ideen zur Teilnahme am Teraflops-Rennen.
[2] Wolfgang Müller, Parallelrechner - Transputeranwendungen in Industrie und Forschung, Gemini Multimedia Verlag 1992
[3] Landesinitiative Softech NRW, Situation und Perspektiven des Einsatzes der parallelen Datenverarbeitung 1992
[4] J.J. Dongarra, Experimental Parallel Computing Architectures, North-Holland 1987
[5] Dr. Thomas Bräunl, Parallaxis, Modula massiv parallel, c't 6/91, S. 34
[6] IEEE Spectrum, 9/1992, Special Issue: Supercomputers
Vater Staat greift in die Tasche, um die parallele Datenverarbeitung in Schwung zu bringen. So fließen knapp 6 Millionen aus Steuermitteln des Landes Nordrhein-Westfalen und der EG in das ZIAM (Zentrum für industrielle Anwendungen massiver Parallelität). Es wurde im September 1992 in Herzogenrath gegründet und soll als Technologie-Tranfer-Drehscheibe für die Datenverarbeitung auf Parallelrechnern fungieren. Das ZIAM wird sich sicher nicht nur auf NRW, sondern auf ganz Deutschland positiv auswirken. Das Geld ist dort wahrscheinlich besser angelegt als beim Suprenum-Projekt.
Wenn man sich beispielsweise das Software-Angebot von Genias und Pallas ansieht, taucht immer wieder der Satz `Runs wherever EXPRESS is available´ auf. Im Bereich der Software gibt es einen Trend zur Vereinheitlichung. Programme sollen unabhängig von der Topologie der Hardware laufen. EXPRESS ist neben PICL, PARMACS, PVM (Parallel Virtual Machine) und anderen eine der parallelen Programmierumgebungen. Hierbei handelt es sich nicht um eine neue Form von Betriebssystem, sondern um eine Sammlung von Unterprogrammen, die auf jeder Hardware identisch implementiert sind. Mit EXPRESS werden die Sprachen C und Fortran unterstützt. Nicht nur rein wissenschaftliche Programme, sondern auch kommerzielle Software erobert den Markt der massiv parallelen Rechner. Das bekannte Datenbankprogramm Oracle ist bereits seit einiger Zeit für den nCube 2 verfügbar.