Hypercomputer (Teil II): Der selbst gebastelte Supercomputer
Wer ein großes, gewaltigen Rechenaufwand erforderndes Problem zu lösen hat, muss nicht unbedingt den modernsten, sündhaft teuren Parallelrechner in Anspruch nehmen. Mit geeigneter Verkabelung und Software tut es auch ein Haufen schrottreifer PCs.
Ein hungriger Wanderer kommt mit einem Kessel in ein armes Dorf und verspricht, er werde aus nichts weiter als einem glänzenden Stein und Wasser eine köstliche Suppe kochen. Mit ein wenig Kohl schmecke sie allerdings noch etwas besser … Zuerst sind die Dorfbewohner skeptisch, doch dann bringen sie kleine Gaben: einen Kohlkopf, ein Bündel Karotten, ein Stückchen Fleisch. Am Ende ist der Kessel mit genügend herzhafter Suppe gefüllt, um alle satt zu machen. Und die Moral von der Geschichte: Durch Kooperation kommen bedeutende Leistungen zu Stande, selbst mit bescheidenen und anscheinend unbedeutenden Zutaten.
So geht die Geschichte von der Steinsuppe, die in vielen Variationen erzählt wird. Und ausgerechnet in der Hochtechnologie wird dieses Märchen wahr: Aus Material, das andere Leute weggeworfen hätten, entstehen Supercomputer, also leistungsstarke Rechner, die Milliarden von Rechenoperationen pro Sekunde ausführen können.
Ein Supercomputer ist heute in der Regel ein Parallelrechner: Zahlreiche ultraschnelle Mikroprozessoren arbeiten gleichzeitig an der Lösung hochkomplexer Probleme wie der Vorhersage des Wetters oder der Simulation einer Kernwaffenexplosion (Hypercomputer (Teil I): "Auf dem Weg zum Billiarden-Rechner", Spektrum der Wissenschaft 1/2002, S. 78). Diese Rechner werden von renommierten Firmen wie IBM oder Cray hergestellt und kosten meist mehrere zehn Millionen Dollar – viel zu teuer für eine Forschungsgruppe mit bescheidenem Budget. Aus dieser Not machten Wissenschaftler an nationalen Forschungszentren und Universitäten in den letzten Jahren eine Tugend: Schließlich steckt in jedem billigen PC ein Mikroprozessor. Also übten sich die Wissenschaftler in der Kunst, durch geeignete Datenleitungen und Programme die vielen PCs so zusammenarbeiten zu lassen, als steckten sie alle im Gehäuse eines Superrechners.
Für zwei von uns (Hargrove und Hoffman) entstand der Bedarf an großer Rechenleistung 1996 bei unserer Arbeit am Oak Ridge National Laboratory (ORNL) in Tennessee. Wir wollten die Fläche der USA nach Ökoregionen kartieren, das heißt nach Gebieten gleicher Umweltbedingungen wie Klima, Oberflächengestalt und Bodenbeschaffenheit. Dazu teilten wir das Land (ohne die Inseln) in 7,8 Millionen quadratische Zellen ein, jede mit der Fläche von einem Quadratkilometer. Für jede Zelle mussten wir 25 Variablen berücksichtigen, von der durchschnittlichen monatlichen Niederschlagsmenge bis zum Stickstoffgehalt des Bodens. Ein einzelner PC oder eine Workstation hätte diese Aufgabe nicht bewältigen können. Wir benötigten einen Parallelrechner, und zwar einen, den wir uns leisten konnten!
Die Lösung unseres Problems fanden wir im Wortsinne auf dem Schrott. Wir bauten einen Verbund (einen computing cluster) aus veralteten PCs, die das ORNL ansonsten weggeworfen hätte, und nannten ihn Stone SouperComputer ("Steinsuppen/Super-Computer"), weil wir die Zutaten praktisch geschenkt bekommen hatten. Das Gerät war leistungsfähig genug, unsere Ökoregionen-Kartierung in unübertroffener Qualität zu bewältigen. Andere Forschungsgruppen haben dasselbe Bauprinzip noch wesentlich weiter getrieben: Ihre Rechencluster nehmen es an Leistung mit den besten Computern der Welt auf – für einen Bruchteil der Kosten. Dieses vorteilhafte Preis-Leistungs-Verhältnis hat bereits die Aufmerksamkeit einiger Unternehmen erregt, die so komplexe Aufgaben wie die Entschlüsselung des menschlichen Genoms mit Clustern angehen wollen (siehe auch den Beitrag auf Seite 94/95). Insgesamt verspricht das Konzept des Rechenclusters, das Hochleistungsrechnen zu revolutionieren, indem es praktisch jedem – Kleinunternehmen, Ingenieurbüro, Schule … – eine gewaltige Rechenleistung bietet.
Beowulf: der schmächtige Held unter den Supercomputern
Das Prinzip, Computer zu gemeinsamer Arbeit zu verkoppeln, ist nicht neu. Bereits in den fünfziger und sechziger Jahren schaltete die amerikanische Luftwaffe Computer, damals noch in Röhrentechnik, zu einem Raketen-Frühwarnsystem namens SAGE zusammen. Mitte der achtziger Jahre prägte die Digital Equipment Corporation (DEC) den Begriff "Cluster" für integrierte Systeme aus mittelgroßen VAX-Minicomputern. In der wissenschaftlichen Welt wurde es bald darauf üblich, Workstations, Computer, die in der Leistungsfähigkeit zwischen einem Minicomputer und einem PC liegen, zu vernetzen. Die Idee, Cluster aus PCs zu bauen, kam Anfang der Neunziger auf, einerseits weil deren massenproduzierte Mikroprozessoren so billig geworden waren, vor allem aber, weil die Kosten für das Ethernet, die Standard-Verbindungstechnik für lokale Netze, dramatisch gefallen waren.
Außerdem ebneten Fortschritte in der Software den Weg für PC-Cluster. In den Achtzigern hatte sich Unix als das dominierende Betriebssystem für wissenschaftliche und technische Berechnungen durchgesetzt. Die Betriebssysteme für PCs konnten allerdings mit dessen Leistungsfähigkeit und Flexibilität nicht mithalten. Da entwickelte 1991 ein finnischer Student namens Linus Torvalds im Alleingang ein Betriebssystem namens Linux, das ähnlich wie Unix arbeitete, aber auch auf PCs lief. Torvalds machte Linux kostenlos im Internet verfügbar, und schon bald begannen Hunderte von Programmierern Verbesserungen beizutragen. Mittlerweile ist Linux ein höchst populäres Betriebssystem für Einzelcomputer; aber es ist auch für Cluster ideal geeignet.
Der erste PC-Cluster entstand 1994 am Goddard-Raumflugzentrum der Nasa. Die Luft- und Raumfahrtbehörde suchte für die typischen Rechenprobleme der Erd- und Weltraumwissenschaft einen Rechner mit einer Leistung von einem Gigaflops, das sind eine Milliarde elementare Rechenoperationen pro Sekunde. Damals kostete jedoch ein kommerzieller Supercomputer dieser Größe ungefähr eine Million Dollar – zu viel, um ihn einer einzelnen Forschergruppe exklusiv zur Verfügung zu stellen.
Einer von uns (Sterling) entschied sich für das damals radikale Konzept, einen Rechencluster aus PCs zu bauen. Sterling und sein Kollege Donald J. Becker verbanden 16 PCs, die jeder einen Mikroprozessor vom Typ Intel 486 enthielten, unter dem Betriebssystem Linux mit der für lokale Netze üblichen Verkabelung, dem so genannten Ethernet. Bei wissenschaftlichen Anwendungen vollführte der Cluster im Dauerbetrieb 70 Millionen Gleitkommaoperationen pro Sekunde (70 Megaflops). Nach heutigen Maßstäben ist das nicht viel, kam aber der Leistung eines kleineren kommerziellen Supercomputers dieser Zeit schon ziemlich nahe, und das für ein Zehntel des Preises: nur 40000 Dollar.
Die Nasa-Forscher nannten ihren Cluster Beowulf, nach dem schmächtigen Helden einer frühmittelalterlichen Legende, der das riesige Monster Grendel besiegte, indem er ihm einen Arm ausriss. Seitdem hat sich Beowulf als Name für jeden kostengünstigen Cluster aus kommerziell verfügbaren PCs eingebürgert. Der ursprüngliche Cluster fand 1996 zwei Nachfolger: Hyglac am California Institute of Technology gemeinsam mit dem Jet Propulsion Laboratory in Pasadena und Loki am Nationallaboratorium in Los Alamos. Beide bestanden aus 16 Mikroprozessoren vom Typ Intel Pentium Pro und lieferten eine Dauerleistung von über einem Gigaflops bei Kosten von weniger als 50000 Dollar, womit eine Zielvorgabe der Nasa erreicht wurde.
Für unser Problem, die Kartierung der Ökoregionen der Vereinigten Staaten, war offensichtlich ein Parallelrechner das Mittel der Wahl. Eine einzelne Workstation konnte allenfalls die Daten einiger Bundesstaaten auf einmal verarbeiten, und Teilprobleme an getrennte Workstations zuzuweisen war nicht sinnvoll, da die Daten jeder Region mit denen jeder anderen Region in Beziehung zu setzen waren (siehe Kasten Seite 92/93). Also stellten wir 1996 einen Antrag auf 64 Pentium-II-PCs, um daraus einen Beowulf-Cluster zu bauen. Leider konnten wir die Gutachter am ORNL nicht überzeugen.
Eine digitale Ausschlacht-Werkstatt
Unverdrossen sannen wir auf Abhilfe. Wir wussten, dass veraltete PCs am Standort des Energieministeriums in Oak Ridge regelmäßig durch neuere Modelle ersetzt wurden. Die alten Geräte wurden auf einer internen Website angeboten; es stellte sich bald heraus, dass Hunderte von veralteten Computern ihrer Entsorgung harrten. Vielleicht könnten wir uns ja aus den Dingern, die niemand mehr haben wollte, einen Beowulf-Cluster basteln. Wir besorgten uns einen Raum im ORNL, der vorher einen veralteten Großrechner beherbergt hatte, und sammelten dort überzählige PCs.
Das Prinzip hinter der parallelen Verarbeitung ist "Teile und herrsche". Ein komplexes Problem ist in kleinere Teilaufgaben zu zerlegen. Jede Teilaufgabe wird dann einem "Rechenknoten" zugewiesen: einem Prozessor innerhalb des Parallelrechners oder eben einem der PCs in einem Beowulf-Cluster. Jeder Knoten arbeitet selbstständig an seinem Teilproblem und tauscht gelegentlich Zwischenergebnisse mit seinesgleichen aus.
Bei den heutigen technischen Gegebenheiten lautet die Grundregel: Rechnen geht schnell, aber Kommunikation ist mühsam. Man zerlege daher das Problem möglichst so, dass alle Knoten viel zu rechnen und wenig zu kommunizieren haben, also in Teilprobleme, die möglichst nur lose miteinander zusammenhängen. Wie weit das gelingt, hängt weitgehend von der Natur des Problems ab. Eine "feinkörnige" Zerlegung in sehr viele sehr kleine Teilprobleme gibt den Knoten wenig zu tun und viel zu reden, mit dem Ergebnis, dass sie sehr viel Zeit mit dem Warten auf Nachrichten verschwenden. Dagegen sind "grobkörnige" Probleme für die Verarbeitung mit Parallelrechnern weitaus besser geeignet.
Für die Hardware zur Kommunikation innerhalb eines Beowulf-Clusters stehen im Prinzip das übliche Ethernet oder schnellere, spezialisierte Netzwerke wie Myrinet zur Auswahl. Unsere knappe Finanzausstattung ließ uns keine Wahl: Ethernet kostet keine Lizenzgebühren. Wir installierten in jeden PC des Clusters eine Ethernet-Karte zur Kommunikation der Knoten untereinander und in einen speziellen, unsere "Empfangsdame" (front-end node), eine zweite Ethernet-Karte für die Kommunikation mit der Außenwelt. Vom Standpunkt des Programmierers findet die interne Kommunikation über das Weiterleiten von Nachrichten (message passing) statt: Ein Knoten schickt zu einem Zeitpunkt, den er selbst bestimmt, einem anderen seine neuesten Zwischenergebnisse über die Datenleitung. Die beiden meistverwendeten Programmsammlungen für diesen Zweck, das Message-Passing Interface (MPI) und die Parallel Virtual Machine (PVM), sind kostenlos im Internet verfügbar. Wir benutzen beide Systeme im Stone SouperComputer.
Viele Beowulf-Cluster sind homogen, das heißt aus lauter gleichen PCs aufgebaut. Das erleichtert die Bedienung der Geräte, ist aber nicht immer erforderlich. Da wir möglichst kein Schrottgerät ungenutzt verkommen lassen wollten, nahmen wir in Kauf, dass unser Stone SouperComputer wie jeder gute Eintopf aus den verschiedensten Zutaten bestehen würde. Wir begannen mit 486er PCs, verschmähten diese allerdings später zu Gunsten besserer Ware: Ein Pentium-Chip, mindestens 32 Megabyte Arbeitsspeicher und 200 Megabyte Festplattenspeicher sollten es schon sein.
Unter den PCs, die hereinkamen, erfüllten nur die wenigsten unsere Anforderungen. Wir gingen daher dazu über, wie ein Altautoverwerter die Geräte auszuschlachten und aus deren besten Teilen geeignete Knoten für unseren Cluster zu machen. Einen neu eintreffenden Rechner zu öffnen war fast so schön wie eine Weihnachtsüberraschung: Vielleicht würden wir ja diesmal eine große Festplatte, viel Speicher oder (am besten) ein Motherboard mit einem modernen Prozessor finden, das aus Versehen auf dem Schrott gelandet war? Na ja – meistens war es doch nur ein müder alter Veteran mit einem staubverstopften Lüfter.
Unser Raum in Oak Ridge verwandelte sich in eine Leichenhalle voll gefledderter Computer. An jedem einmal geöffneten Rechner befestigten wir einen "Leichenzettel" mit der Angabe seiner brauchbaren Teile für spätere Verwendung. Wir entwickelten Vorlieben und Abneigungen für gewisse Marken, Modelle und Gehäuse und übten uns in der Kunst, den Passwordschutz des letzten Vorbesitzers unwirksam zu machen. Im Durchschnitt mussten wir fünf PCs einsammeln und auseinander nehmen, um einen guten Knoten herzustellen.
Chef und Sklaven
Um dem Cluster einen neuen Knoten hinzuzufügen, installierten wir Linux auf dem Rechner. Wir bekamen schnell he-raus, wie wir Tastatur und Bildschirm für einzelne Knoten entbehrlich machen konnten. Wir bastelten uns mobile Werkstattwagen mit Bildschirm und Tastatur, die man zu Diagnosezwecken an defekte Knoten anschließen konnte. Schließlich kaufte uns sogar jemand, der selbst Platz in unserem Raum nutzen wollte, noch Regale für unsere Hardwaresammlung. Anfang 1997 führte der Stone SouperComputer sein erstes Programm aus; im Mai 2001 bestand er aus 133 Knoten, darunter 75 PCs mit 486er Prozessoren, 53 schnellere Rechner mit Pentium und fünf noch schnellere Alpha-Workstations von Compaq.
Modernisierungen am Stone SouperComputer sind einfach: Wir ersetzen immer den jeweils langsamsten Knoten durch einen besseren. Jeder Knoten lässt routinemäßig stündlich einen einfachen Geschwindigkeitstest laufen. Diese Geschwindigkeitswerte helfen uns bei der Feinabstimmung unseres Clusters. Anders als bei kommerziellen Rechnern verbessert sich die Leistung des Stone SouperComputers kontinuierlich, da der Zustrom immer besserer Schrott-Computer nicht versiegt.
Noch schwieriger als das Zusammenbauen der Hardware eines Parallelrechners ist zuweilen dessen Programmierung. Die Betreiber von Beowulf-Clustern folgen in der Regel dem "Master-Slave"-Schema: Ein Knoten ist der "Chef"; er verteilt die Aufgaben an eine oder mehrere Gruppen von "Sklaven". Wir laden auf jeden Knoten das komplette Programm; Chef und Sklaven führen nur jeweils verschiedene Programmteile aus. Programmierfehler wirken sich noch wesentlich dramatischer aus als bei der herkömmlichen Programmierung, weil das Versagen eines Knotens eine Lawine von Fehlern in anderen Knoten auslösen kann. Die ursprüngliche Fehlerursache ist dann möglicherweise sehr mühsam zu eruieren.
Ein weiteres Problem ist die gleichmäßige Auslastung aller Knoten. Es wäre abwegig, jedem von ihnen die gleiche Arbeitslast zuzuweisen; denn da die einzelnen Mikroprozessoren sehr unterschiedlich leistungsfähig sind, müssten die schnellen beim Warten auf die langsamen viel Zeit vergeuden. Stattdessen lassen wir durch einen selbst entwickelten Algorithmus den Chef den schnellen Sklaven entsprechend mehr Stoff aufbürden. Obgleich sie in der Minderheit sind, erledigen sie so den größten Teil der Arbeit; immerhin tragen die langsameren Maschinen auch ihren Teil zur Gesamtleistung bei.
Für unsere Kartierung der Ökoregionen sah die Arbeitsteilung zwischen Chef und Sklaven wie folgt aus. Wir hatten enorme Datenmengen zu verarbeiten: 25 durch Zahlen ausgedrückte Umweltmerkmale von jeder der 7,8 Millionen Zellen vom Festland der USA. Jeder Datensatz einer Zelle entspricht einem Punkt in einem abstrakten 25-dimensionalen Raum, dessen Koordinaten den 25 Variablen (mittlere Temperatur, Niederschläge, Bodenfeuchtigkeit und so weiter) entsprechen. Wenn zwei dieser Punkte dicht beieinander liegen, dann haben ihre Zellen per Definition sehr ähnliche Merkmale; ob sie geografisch eng benachbart sind, ist unerheblich. So können zwei Berggipfel im Datenraum dicht beieinander liegen, weil sie nahezu dasselbe Klima, dieselben Bodenmineralien und so fort aufweisen, und in Wirklichkeit tausende Kilometer voneinander entfernt sein.
Diese 7,8 Millionen Punkte im Datenraum waren nun sinnvoll zu wohl unterschiedenen Teilmengen zusammenzufassen. Wenn der Datenraum nur dreidimensional wäre und man sich die Punktmenge von allen Seiten anschauen könnte, wäre die Sache relativ einfach. Man würde vielleicht entdecken, dass die Punkte sich an gewissen Stellen zu "Wolken" häufen, und jede Punktwolke durch einen geeignet definierten Mittelpunkt charakterisieren. Jeder Punkt würde dann derjenigen Ökoregion (Wolke) zugerechnet, zu deren Mittelpunkt er am nächsten liegt.
Nun ist das, was das menschliche Sehsystem automatisch erledigt, algorithmisch eine hoch komplexe Aufgabe. Ein Computer kann nicht auf Anhieb Wolken sehen, einerlei, ob der Raum drei oder 25 Dimensionen hat. Stattdessen wird ein iteratives Verfahren angewandt: Man lässt das Programm zunächst genauso viele Punkte irgendwohin in den Datenraum legen, wie man am Ende Ökoregionen unterscheiden will. Diese Punkte sollen später die Mittelpunkte der Ökoregionen werden. Jeder dieser Mittelpunkts-Kandidaten sammelt dann gewissermaßen diejenigen Punkte um sich, die ihm näher liegen als jedem anderen Kandidaten. Diese bilden eine "vorläufige Ökoregion". Das Programm berechnet nun den Schwerpunkt dieser Punktmenge, das heißt den Mittelwert aller ihrer Punkte, und ersetzt den bis-herigen Kandidaten durch diesen Schwerpunktswert. Danach läuft immer wieder dieselbe Folge von Aktionen ab: Die Punkte werden den Kandidaten zugeordnet, denen sie nunmehr am nächsten liegen; dadurch werden neue vorläufige Ökoregionen definiert und deren Schwerpunkte berechnet … In jedem Iterationsschritt wechselt dieser oder jener Punkt von einem vorläufigen Ökosystem zum anderen. Die Klassifikation ist abgeschlossen, wenn dieser Wechselprozess im Wesentlichen zum Erliegen gekommen ist.
Dieser Problemtyp ist gut geeignet für die parallele Verarbeitung, da verschiedene Knoten im Cluster unabhängig voneinander an Teilmengen der 7,8 Millionen Datenpunkte arbeiten können. In jeder Iteration berechnen die Sklaven-Knoten die Entfernungen der Datenpunkte zu den jeweiligen Mittelpunkts-kandidaten und liefern an den Chef eine Liste zurück, die zu jedem bearbeiteten Datenpunkt den nächstgelegenen Kandidaten benennt. Der Chef berechnet da-raus die Schwerpunkte der neuen vorläufigen Ökoregionen und schickt sie den Sklaven für die nächste Runde ihrer Berechnungen zurück.
Auch die Anfangspositionen der Kandidaten lassen sich durch parallele Berechnungen effizient bestimmen. Nach einem von uns erdachten Algorithmus bestimmen die Knoten im Stone SouperComputer kollektiv, welche Punkte in den extremsten Außenseiterpositionen liegen. Diese werden dann als Anfangswerte für die Kandidaten gewählt. Wenn das Iterationsverfahren mit derart gut verstreuten Datenpunkten beginnt, kommt es in weniger Schritten zum Ziel.
Das Ergebnis unserer Arbeit ist eine Reihe von Landkarten, die jede Ökoregion in einer anderen Farbe zeigen, von einer sehr groben Einteilung in nur vier Ökoregionen, die immerhin so großräumige Strukturen wie die Rocky Mountains und den wüstenartigen Südwesten erkennen lässt, bis zu einem Flickenteppich aus 5000 Ökoregionen, der weitaus differenzierter ist als alle vorhergehenden Klassifikationen der Umweltbedingungen des Landes. Ihrer Unübersichtlichkeit zum Trotz ist die Detailkarte für die Wissenschaft äußerst wertvoll, denn es gibt viele bedrohte Pflanzen und Tiere, die nur in einer oder zwei der so identifizierten Ökoregionen überhaupt vorkommen.
In unseren ersten Landkarten hatten wir die Ökoregionen noch per Zufall eingefärbt; später konnten wir die Farben so zuweisen, dass sie die Ähnlichkeit der entsprechenden Ökoregionen widerspiegeln. Wir kombinierten neun der Umweltvariablen mit statistischen Hilfsmitteln zu drei zusammengesetzten Merkmalen, deren Werte wir auf der Landkarte durch entsprechende Intensitäten von Rot, Grün und Blau wiedergaben. Derart erzeugte Landkarten zeigen dann Abstufungen der Farben anstelle von scharfen Grenzen: Der Südosten mit seiner üppigen Vegetation ist vorwiegend grün, der kalte Nordosten blau und der trockene Westen rot.
Darüber hinaus konnte der Stone SouperComputer in allen Einzelheiten zeigen, wie sich die Ökoregionen der USA durch die globale Erwärmung verschieben würden. Unter Verwendung von ausgearbeiteten Klimaszenarien zweier anderer Forschergruppen erstellten wir Ökoregionen-Kartierungen für das Jahr 2099. Unter der Voraussetzung, dass diese Szenarien eintreten, können wir das Klima einzelner Regionen detailliert vorhersagen. So wird etwa Minneapolis (Minnesota), das heute klimatisch etwa Moskau vergleichbar ist, in einem Jahrhundert ungefähr so feuchtwarm sein wie heute St. Louis (Missouri).
Man pflegt die Leistung eines Supercomputers daran zu messen, wie schnell er ein gegebenes Standard-Problem (ein "Benchmark"-Problem) löst. Uns als Wissenschaftlern kam es allerdings weit mehr auf die Leistungsfähigkeit bei unseren speziellen Problemen an. Um unseren Stone SouperComputer zu bewerten, haben wir unser Kartierungsproblem zum Vergleich auf einem Supercomputer des ORNL laufen lassen, kurz bevor dieser ausgemustert wurde. Diese Maschine, ein Intel Paragon mit 150 Gigaflops theoretischer Spitzenleistung, war immerhin einmal die schnellste im ORNL gewesen. Die Rechengeschwindigkeit je Prozessor war auf der Paragon vergleichbar mit der auf dem Stone SouperComputer.
Wir haben unseren Cluster zwar nie offiziell vermessen (wir wollten dafür ungern CPU-Zyklen von den wichtigen Arbeiten wegnehmen), aber das System hat eine theoretische Spitzenleistung von 1,2 Gigaflops. Genialität im Design pa-ralleler Algorithmen ist wichtiger als nackte Geschwindigkeit oder Größe: In dieser jungen Wissenschaft kann David (beziehungsweise Beowulf) noch mit Goliath (Grendel) mithalten.
Seit unserem Stone SouperComputer hat sich der Trend zu Gunsten des Beowulf-Konzepts beschleunigt. Neue Cluster bieten immer höhere Geschwindigkeit zu immer niedrigeren Kosten. Ihre Namen sind unter anderem der mittel-alterlichen Sagenwelt entlehnt: Grendel, Naegling, Megalon, Brahma, Avalon, Medusa and theHive, um nur einige wenige zu nennen.
Im November 2001 standen 43 Cluster aus PCs, Workstations oder anderen Servern auf der Liste der 500 schnellsten Computer der Welt. Die Plätze 2 und 6 auf der Liste werden von Clustern eingenommen: Ein Verbund aus 3024 AlphaServern von Compaq am Pittsburgh Supercomputing Center und einer von 1536 Stück am Nationallaboratorium in Los Alamos liefern reichlich 4000 bzw. 2000 Gigaflops an theoretischer Maximalleistung. Sechs Systeme auf der Liste tragen die Herstellerbezeichnung "self-made", darunter ein Cluster an der TU Chemnitz (Platz 137) und einer an der Universität Tübingen (Platz 495).
Beowulf-Systeme dringen auch in die Industrie ein. Die großen Computerhersteller verkaufen Cluster an Firmen mit großem Bedarf an Rechenleistung. Zum Beispiel baut IBM einen Cluster aus 1250 Servern für NuTec Sciences, eine Biotechnologie-Firma, die mit diesem System krankheitsverursachende Gene identifizieren will.
Eine weitere Variante des Cluster-Prinzips ist verteiltes Rechnen auf vielen weit verstreuten Computern. Projekte wie SETI@home (Search for Extraterrestrial Intelligence) verschicken größere Pakete an Berechnungsaufgaben über das Internet an mehr als drei Millionen PCs, die diese Signaldaten in ihrer Leerlaufzeit bearbeiten (Spektrum der Wissenschaft 1/2002, S. 109, und 2/2002, S. 111). Einige Experten in der Computerindustrie sagen für die Zukunft ein "Rechennetz" (computational grid) voraus, das ähnlich funktionieren soll wie das Stromnetz (power grid): Rechenleistung kommt wie der Strom aus der Steckdose. Auf kommerzieller Ebene sind die ersten Großhandelsorganisationen für Rechenleistung (grid computing) im Aufbau.
Wir messen unserem Konzept auch erhebliche gesellschaftliche Bedeutung bei. Beowulf entwindet das Hochleistungsrechnen den Händen der wenigen Privilegierten und bietet preisgünstige Parallelrechner für das Volk. Forschergruppen, Hochschulen, Schulen und kleine Betriebe können ihren eigenen Cluster bauen oder kaufen – das eröffnet die Aussicht auf einen Supercomputer in jedem Hobbykeller. Sollten auch Sie den Bau eines eigenen Clusters planen oder schon durchführen, nehmen Sie bitte über unsere Web-Seiten (http://extremelinux.esd.ornl.gov/) Verbindung mit uns auf und erzählen Sie uns über Ihre Erfahrungen. Wir haben festgestellt, dass die Steinsuppe wirklich sehr herzhaft ist.
Aus: Spektrum der Wissenschaft 3 / 2002, Seite 88
© Spektrum der Wissenschaft Verlagsgesellschaft mbH
Schreiben Sie uns!
Beitrag schreiben