Wiener Supercomputer geht an den Start
Die TU Wien, die Universität Wien und die Universität für Bodenkultur haben mit vereinten Kräften einen neuen Rechencluster eingerichtet. Der Vienna Scientific Cluster ist der derzeit schnellste Rechner Österreichs und nimmt Platz 156 der aktuellen Top-500-Liste der Supercomputer ein.
Der neue Supercomputer wurde am Freitag im "Freihaus" der TU Wien an der Wiedner Hauptstraße offiziell eingeweiht. ORF.at sprach mit Herbert Störi, dem Vorsitzenden des Instituts für Angewandte Physik und Leiter des Großcomputerprojekts, über den Aufbau des Rechners, die Aufgaben des Systems und dessen Lebensdauer.
ORF.at: Wie ist der neue Rechencluster aufgebaut?
Störi: Das Gerät besteht aus 436 einzelnen Computern, die wir in diesem Zusammenhang als Knoten bezeichnen. Jeder Knoten besteht aus einem Rechner mit zwei Quad-Core-Prozessoren der Nehalem-Reihe (X5550) von Intel mit einer Taktfrequenz von 2,66 GHz und jeweils 24 GB DDR3-RAM. In Summe haben wir 3.488 Prozessorenkerne und 11,2 Terabyte Hauptspeicher. Dazu kommt noch der Fileserver, der einige zig Terabyte hat. Der ist aber im Vergleich gar nicht so umfangreich. Für die Anwendungen, die wir haben, ist der Bedarf an Massenspeicher vor Ort nicht so groß.
ORF.at: Sie sagten, dass Energiebedarf und Hitzeentwicklung relativ groß seien.
Störi: Bei Volllast hat der ganze Rechner eine Leistungsaufnahme von 180 Kilowatt. Dazu kommt nochmals ein Drittel davon, um die Maschine zu kühlen. Im Gebäude der TU gibt es Großklimaanlagen mit einer Leistung von jeweils zweimal 400 Kilowatt. Der neue Rechner wird mit Wasser gekühlt, das über Wasserrohre von der Klimaanlage ins Rechenzentrum geleitet wird. Die Kühlung ist überhaupt eines der wesentlichen Probleme. Die Energieaufnahme von Rechnern wird, wenn man an die globale Bilanz denkt, zunehmend schwieriger. Wobei es mit den Hochleistungsrechenzentren in etwa so ist wie in der Formel 1: Da wird zwar sehr viel Energie verbraucht, aber in der weltweiten Bilanz spielen sie doch keine Rolle. Da hinterlassen Rechenzentren von Großbanken, von Google oder Microsoft schon eher einen Fußabdruck in der Klimabilanz.
ORF.at: Wie lange haben Sie gebraucht, um den Rechner zu entwerfen und aufzubauen?
Störi: Wir haben vor drei Jahren damit angefangen, darum zu kämpfen, dass wir so einen Hochleistungsrechner erhalten. Nachdem die Entscheidung im Dezember 2008 gefällt wurde, den Rechner gemeinsam zu kaufen, musste dann eine EU-weite Ausschreibung erstellt werden. Die wurde im Jänner 2009 veröffentlicht. Im April gab es die Angebote, und dann wurde Ende April der Zuschlag erteilt und Ende Juni mit der Lieferung begonnen. Abgenommen wurde die Maschine dann am 19. Oktober.
ORF.at: Liegen Sie gut im Zeitplan?
Störi: Wenn alles ganz, ganz glattgegangen wäre, hätte man fast einen Monat sparen können. Wir hatten zwei kleine Probleme. Das eine bestand darin, dass die Maschinen zum Zeitpunkt des Benchmark-Tests nicht verfügbar waren. Da hat Intel die Benchmark-Tests durchgeführt und uns erst sehr spät gesagt, dass der sogenannte Turbo-Modus der CPUs dabei eingeschaltet war, der die Rechenleistung um ein wenig, aber den Stromverbrauch kräftig erhöht. Das zweite Problem bestand darin, dass wir in einem Teil des Systems eine Serie von defekten Hauptspeichermodulen hatten. Da gab es DIMMs, die nicht hundertprozentig funktioniert haben. In einem PC würden Sie das jahrelang nicht merken, dass da etwas nicht stimmt. Wir haben allerdings Fehler entdeckt, die schließlich auf die Speicherbausteine zurückgeführt werden konnten. Alle diese DIMMs wurden dann übrigens vom Hersteller weltweit zurückgezogen. Das wiederum hat dazu geführt, dass die Ersatzmodelle erst einmal knapp waren, was die Abnahme unseres Rechners bis Mitte Oktober verzögert hat. Ich hatte gehofft, dass wir in den letzten September-Wochen fertig werden würden.
ORF.at: Es dauert ja ziemlich lange, bis man mit den üblichen Tools Speicherbausteine durchgetestet hat.
Störi: Die üblichen Tools würden den Fehler nicht finden! Es waren 120 schlechte Speicherbausteine. Es gab jeweils ein Problem alle zwei Tage. Bei extremer voller Belastung liefert so ein Speicherbaustein alle 240 Tage einen Fehler. Das können Sie nicht finden!
ORF.at: Offenbar doch. Wie haben Sie den Bug gefunden?
Störi: Naja, durch Statistik. Der Fehler ist bei uns aufgetreten und bei einer ähnlichen Installation in der Schweiz. Dabei hat sich herausgestellt, dass genau jene Knoten, die diese DIMMs enthalten, Fehler verursachen. Das ist Schicksal. Das kann immer passieren. Gut, dass man bei diesen Maschinen über das Netzwerk auslesen kann, welche Teile eingebaut sind. Dadurch braucht man nicht überall reinzuschauen, was bei 436 Kisten ein gewisser Aufwand wäre.
ORF.at: Die Knoten-Rechner selbst sind wenig spektakulär. Sie sehen aus wie die üblichen Server-Pizzaschachteln. Die Hardware unterscheidet sich nicht so radikal von handelsüblichen PCs, wie man sich das vielleicht denken würde.
Störi: Nein, überhaupt nicht. Das ist absolut Standard. Die Maschinen sind aber mit extrem schnellen Netzwerkkarten ausgestattet, mit sogenannten Infiniband-Karten, die 16 Gigabit pro Sekunde übertragen können. Das ist eine PCI-Extended-Karte, die übrigens extreme Last auf dem Speicher erzeugt, wie es in normalen Maschinen nie vorkommt. Ich vermute, dass uns das auch auf den Fehler bei den Speicherbausteinen gebracht hat.
ORF.at: Wie schnell ist eigentlich der Systembus?
Störi: Diese Geräte haben keinen Systembus. Die haben einen speziellen Link zwischen den beiden Nehalem-Prozessoren, der 6,4 Gigatransfers pro Sekunde schafft, 6,4 mal acht Byte pro Nanosekunde, die da transferiert werden können. Und die RAM-Module hängen dann direkt an den Prozessorchips. Dann gibt es noch einen speziellen Kommunikationschip für die Netzwerkkarte und das war's. Die Maschine hat so gesehen keinen Bus, weil man nichts mehr dazuhängen kann.
ORF.at: Normalerweise stellt man sich unter einem Supercomputer eben eine sehr spezielle Hardware vor, so etwas wie diese berühmten "Sofas" von Cray, seinerzeit.
Störi: Auch die modernen Cray-Systeme bestehen aus solchen herkömmlichen Modulen. Um das zu illustrieren: Der erste Supercomputer in der ersten Rangliste von 1993 war die Connection Machine mit 1.000 Prozessoren. Die schaffte 59 Giga-FLOPS. Das ist ungefähr 70 Prozent davon, was ein einziges dieser Knotenmodule unseres Rechners schafft.
ORF.at: Wie schnell ist die neue Maschine dann insgesamt?
Störi: Sie schafft 35,5 Tera-FLOPS.
ORF.at: A propos Top-500-Liste: In der kürzlich veröffentlichten Rangliste stand ja ein Rechner auf Platz 124, der auf die österreichische Tochter einer russischen IT-Großhandelsfirma angemeldet war. Der Vienna Scientific Cluster folgte erst auf Rang 156. Leider hat die russische Firma auf unsere Anfrage, ob der Rechner wirklich in Österreich steht, nie geantwortet.
Störi: Es ist so, dass die Verwalter der Top-500-Liste der schnellsten Supercomputer ganz offiziell akzeptieren, dass ein System nur einmal zusammengebaut und getestet und dann wieder zerlegt wird. Und dieses System ist in Österreich nie zusammengebaut gewesen. Soweit wir das ermitteln konnten, ist es wahrscheinlich im Benchmark-Zentrum von HP in Grenoble getestet worden, bevor dann die Benchmark-Files samt der Maschine nach Russland exportiert wurden. Diese Maschine steht sicher nicht in Österreich. Die russische Firma hat hier nur ein kleines Büro. Diese sechs Maschinen, die diese Firma in der Liste hat, würden zusammen ein Megawatt Leistung aufnehmen. Das fiele auf. Die bringt man nicht in einer Besenkammer unter. Die Top-500-Liste wird von einer Handvoll Wissenschaftler unterhalten. Die können nicht auf der ganzen Welt rumfahren und Systeme kontrollieren.
ORF.at: Also ist der Vienna Scientific Cluster doch der schnellste Computer, der tatsächlich in Österreich steht.
Störi: Davon kann man ausgehen, ja.
ORF.at: Gehen wir einmal von der Hardware- auf die Software-Ebene. Unter welchem Betriebssystem läuft der Cluster?
Störi: Wir verwenden CentOS, das ist eine Freeware-Version von Red Hat Enterprise Linux. Auf jedem Knoten läuft also ein ganz normales Linux. Wenn man auf dem Cluster rechnen will, loggt man sich an einem der drei speziellen Knotenrechner ein - es gibt einen für jede der drei teilnehmenden Universitäten - dann kann man einen Rechenauftrag, einen Job, abschicken. Der Front-End-Knoten benimmt sich wie ein ganz normales Linux. Darunter läuft die sogenannte Grid Engine. Das ist eine Management-Software, die dann die Jobs auf die einzelnen Knoten verteilt. Die Grid Engine selbst läuft auf zwei sogenannten Head Nodes, also Steuerknoten-Computern. Damit haben wir fünf spezielle Knotenrechner: Drei Login-Knoten und die zwei Head Nodes - ein normaler und einer in Reserve, auf denen die Grid Engine läuft und die für die Verteilung der Rechenjobs sorgen. Die Grid Engine verschickt Einzeljobs auf die Knoten und die Jobs kommunizieren über das Netzwerk miteinander, über die bereits erwähnten Infiniband-Systeme mit 16 Gigabit pro Sekunde, die wiederum an ein Glasfaser-Backbone angeschlossen sind, das mit 40 Gigabyte pro Sekunde mehr als doppelt so schnell ist. Die Grid Engine ist ein Freeware-Produkt von Sun Microsystems. Es gäbe auch kommerzielle Systeme, die demselben Zweck dienen würden. Nach unseren Tests bringen diese allerdings nicht wirklich so viel mehr, als dass die zusätzlichen Kosten gerechtfertigt gewesen wären.
ORF.at: Wie geht das vor sich, wenn ein Wissenschaftler der Uni oder der BOKU einen Job hier abschicken will?
Störi: Über das Netz. Es ist so, dass jeder der drei Log-in-Knoten logisch zum lokalen Netz der jeweiligen Universität gehört, obwohl er physisch hier bei uns an der TU steht. Das hat den praktischen Grund, dass zum Rechnen zum Teil sehr große Datenmengen transferiert werden, um hier berechnet zu werden, beispielsweise detaillierte Klimadaten aus mehreren Jahren. Das sind schnell einige hundert Gigabyte. Wenn man diese Mengen durch eine Firewall schicken müsste, würde das sehr langsam sein. Jeder der drei Log-in-Knoten sitzt hinter der jeweiligen Uni-Firewall. Ansonsten hätten wir nochmals kräftig in zusätzliche Firewall-Systeme investieren müssen. Doch zurück zum Ablauf: Das Schwierige am Rechnen auf dem Cluster ist, dass nicht nur das Programm selbst verteilt werden muss, sondern auch die zur Berechnung notwendigen Daten. Die einzelnen Knoten können ja nur auf ihr lokales RAM zugreifen. Wenn sie etwas brauchen, das sie nicht lokal im RAM haben, müssen sie sich das von einem anderen Knoten schicken lassen. Da steckt ein gewisser Organisationsaufwand drin. Einige Programme lassen sich auch leichter parallelisieren als andere. Es gibt Anwendungen, bei denen das ziemlich schwierig ist.
ORF.at: Parallele Rechnersysteme stellen besondere Anforderungen an die Software. Kommen auf dem Cluster auch Programmiersprachen zum Einsatz, die darauf optimiert sind, beispielsweise Erlang?
Störi: Nein. Das ist eines der Probleme: Was Software-Entwicklungswerkzeuge für solche Systeme angeht, befinden wir uns noch in der Steinzeit. Wir hoffen, dass sich das in dem Maß verbessert, in dem auch im kommerziellen Bereich solche Cluster eingesetzt werden. Microsoft entwickelt schon sowas, andere Firmen auch. Aber im Moment wird das in Fortran oder C programmiert. Dazu gibt es die sogenannte MPI-Library, das Message Passing Interface, da wird quasi auf Low Level programmiert, welche Informationen da zwischen den Knoten hin- und hergeschickt werden. Das ist ein Kunstwerk, sowas zu machen. Das Problem ist auch, dass viele dieser modernen Programmiersprachen die numerische Performance so weit reduzieren, dass man das eigentlich nicht verwenden will. Das spart zwar Programmiererzeit, kostet aber Maschinenzeit und damit Energie.
ORF.at: Was wollen die Wissenschaftler auf dem Cluster berechnen lassen?
Störi: Es gibt im Wiener Raum, auf der Universität und auch bei uns an der TU, eine große Gruppe von Wissenschaftlern, die sich mit Computational Material Science befasst. Das heißt, man berechnet die Eigenschaften von Materialien mit numerischen Methoden ab initio durch Lösung der Schrödinger-Gleichung. Man rechnet auf quantenmechanischer Ebene aus, wie sich ein bestimmtes Material benimmt. Damit kann man auch hypothetische Materialien rechnen. Man muss diese Materialien also nicht erst synthetisieren, um sie auf ihre Eigenschaften hin testen zu können. Das bringt gewisse Vorteile mit sich. Ein weiteres wichtiges Forschungsfeld betrifft die Nanomaterialien, den Nanomagnetismus, das Verhalten von extrem kleinen magnetischen Strukturen, etwa in Datenspeichern. Da kann man gewisse Einsichten nur dann gewinnen, wenn man das modelliert. Oder man schaut sich die Struktur von Oxyden auf Oberflächen an. Jede Metalloberfläche oxydiert. Wie diese Oxyde chemisch funktionieren, kann man zwar experimentell herausfinden, aber man braucht ein theoretisches Modell, um zu verstehen, was bei den Experimenten herauskommt. Man darf nicht vergessen: Diese Oxyde und darauf angebrachte Nanopartikel sind gängige Katalysatoren, die auch in Automobilen oder in Cracker-Systemen von Raffinerien zum Einsatz kommen. Das sind technologisch wichtige Dinge. Wir an der TU verwenden den Cluster auch zu Berechnungen der Strömungsdynamik. Wir haben ein Projekt, in dem eine Blasensäule untersucht wird, die dazu dient, Material zwischen Gas und Flüssigkeit auszutauschen. Das ist ein praktisches Problem. Die Universität Wien hat Projekte aus dem Bereich der Astronomie und Astrophysik. Da gibt es einen sehr großen Astrophysik-Code namens Antares, der Sterne berechnet und im Wesentlichen von Mathematikern der Universität Wien entwickelt wird. Die Universität für Bodenkultur arbeitet an kleinräumigen Klimasimulationen, die dazu dienen, die Auswirkungen des Klimawandels auf bestimmte Landschaften vorauszusagen. Wichtig sind übrigens auch die Berechnungen des Transports von Verunreinigungen im Boden. Ein Beispiel dafür ist das Gaswerk in Wiener Neustadt. Das hat den Boden, auf dem es stand, in den 1960er Jahren mit Schadstoffen kontaminiert. Die Frage lautet nun: Wie schnell breiten sich solche Substanzen im Erdboden aus? Wie schnell muss der Boden saniert werden, damit die Schadstoffe nicht das Grundwasser der Mitterndorfer Senke und damit das Trinkwasser von Wiener Neustadt erreicht? Die Berechnungen haben ergeben, dass man damit vierzig Jahre warten kann - aber auch nicht länger. Die Voraussage solcher Prozesse ist sehr wichtig, weil man auf dieser Grundlage die Dringlichkeitsliste bei der Sanierung solcher Altlasten erstellen kann. Man kann sagen: OK, die Aluminiumverunreinigung, die es da auch in der Nähe gibt, die hat noch zehn Jahre Zeit, aber an anderer Stelle wird es wirklich schon kritisch. Ein trauriges Problem, aber jemand muss sich darum kümmern - und die Universität für Bodenkultur macht das. Ein weiteres Feld sind Biochemie und Bioinformatik. Dort geht es unter anderem darum, wie Proteine gefaltet sind, wie in der Forschung über den sogenannten Rinderwahnsinn. Da geht es um fehlgefaltete Proteine und die Energetik dieser Proteinfaltung kann man im Rechner simulieren. In der Genetik geht es um die Frage der Erstellung eines Vererbungsbaums. Also: Wir haben soundsoviele DNA-Analysen und versuchen dann herauszufinden, wie die miteinander verwandt sind. Das ist ein breites Spektrum von Aufgaben, die im Cluster bearbeitet werden.
ORF.at: Wie wird eigentlich entschieden, welche Rechenaufträge das System prioritär behandelt?
Störi: Aus Sicht des Users? Man loggt sich ein und schickt seinen Job ab. Dann wird der Job in eine Schlange eingereiht. Die Grid Engine hat einige - beeinflussbare - Methoden, nach denen sie die Kapazitäten zuteilt. Da gibt es zunächst die Rechenzeiten. Wenn die zugeteilte Rechenzeit eines Jobs verbraucht ist, sinkt seine Priorität. Dann gibt es Jobs, die nur auf einem einzigen Prozessorkern oder nur auf einem einzigen Knoten laufen. Die haben eine niedrigere Priorität als Aufträge, die mehrere Knoten in Anspruch nehmen. Die Abstände zwischen den größeren Aufträgen werden mit kleineren Jobs gefüllt. Jobs, die wenig Rechenzeit beanspruchen haben grundsätzlich einen gewissen Vorteil dabei. Im Moment fahren wir ohnehin die Maschine im Testbetrieb. Da geht sich viel aus. Wir haben allerdings schon jetzt Momente, in denen die Maschine voll ausgelastet ist. Ab Jänner gilt dann strenges Genehmigungs- und Verrechnungsprinzip.
ORF.at: Das heißt, Sie sehen dann auch nach, was die einzelnen Jobs kosten.
Störi: Das nicht. Das ist pauschal bezahlt. Eine Stunde auf einem Prozessorkern kostet etwa vier Euro-Cent.
ORF.at: Beim Stichwort Grid musste ich vorhin an das CERN denken. Läuft der österreichische Teil der Berechnungen aus dem Large Hadron Collider eigentlich auch über den neuen Cluster?
Störi: Nein. Die laufen auf einem anderen System. Das steht in der Nickelsdorfergasse im Hochenergiephysik-Institut. Der Unterschied besteht darin, dass die LHC-Jobs viel Massenspeicher benötigen. Da müssen riesige Datengebirge abgespeichert und archiviert werden. Das ist relativ teuer. Das Belastungsprofil unterscheidet sich stark von dem unseres Systems. Wir machen kein Backup. Jeder User ist für seine Daten selbst verantwortlich, schließlich weiß nur der Nutzer selbst, welche Daten wirklich wichtig sind. Wenn wir anfangen, Backups zu machen, dann wird der Rechner schnell doppelt so teuer. Das ist nicht sinnvoll.
ORF.at: Ist es möglich, den Cluster noch weiter auszubauen?
Störi: Ja. Wir haben eine gewisse Ausbaureserve. Die werden wir voraussichtlich im kommenden Frühjahr ausnutzen. Wenn man noch weiter ausbauen wollte, steht man bei zwei Problemen an. Erstens bei der Energieversorgung und der Klimatisierung - in dieser Hinsicht haben wir die Kapazitätsgrenzen unseres Standorts ausgeschöpft. Zweitens ist das Netzwerk des Clusters auf eine bestimmte Größe ausgelegt. Man müsste größere Umbauten vornehmen, um es zu erweitern. Wir haben derzeit noch für 50 oder 60 Knoten Anschlüsse frei. Dann müssten wir den Kernbereich des Netzes umbauen.
ORF.at: Die Wiener Universitäten haben zwei Millionen Euro für den Aufbau des Systems ausgegeben.
Herbert Störi: Zwei Millionen Euro - plus Betriebskosten, die nicht unbeträchtlich sind. Allein die Energie, die wir ohnehin schon zu vergünstigten Raten von Wien Energie beziehen, kostet ungefähr eine Viertel Million Euro im Jahr. Außerdem sind drei Personen mit dem Computer beschäftigt.
ORF.at: Welche Laufzeit hat das System, bis es obsolet wird?
Störi: Normalerweise würde man sagen: drei bis vier Jahre. Im Moment haben wir eine spezielle Situation, weil der Zuwachs in der Leistung der Prozessorkerne aufgehört hat. Die neueren Computersysteme haben mehr Kerne, aber keine schnelleren. Und dann hängt es von der Wirtschaftlichkeit ab. Die Frage lautet dann, wieviel Strom ein System braucht und wieviel weniger ein neues System brauchen würde. Im Idealfall würde man in etwa eineinhalb Jahren das nächste System in Betrieb nehmen, auf dem man dann einige ganz große Projekte laufen ließe und das andere System bis zum Ende des dritten oder vierten Jahres weiter laufen lässt. Wobei ich natürlich sage, dass man für den in 18 Monaten aufzustellenden Rechner erst einen Standort brauchen würde. Das geht hier nicht mehr, weil wir mit unserer Großkälteanlage und mit dem Platz am Ende sind. Irgendeine intelligente Lösung, was die Kühlung betrifft, wäre dann auch gefragt. Zum Beispiel ein Anschluss an das im Aufbau befindliche Fernkältenetz der Heizbetriebe Wien. Mit Kompressionskälteaggregaten die Hitze ins Freie zu pumpen ist zwar die gängigste, aber nicht unbedingt die intelligenteste Lösung.
ORF.at: Was kostet es denn, einen typischen Job auf dem Cluster zu berechnen?
Störi: Das kommt auf die Größe des Jobs an. Wenn einer auf 800 Kernen 24 Stunden lang läuft, dann kostet das rund 1.000 Euro. Aber das ist schon ein sehr großer Job. Von den Kosten her ist das immer noch eine der preiswerteren Spielarten der Naturwissenschaft. Verglichen mit anderen Großgeräten, die auch so viel kosten, laufen hier doch sehr viele verschiedene Aufgaben auf dem Rechner. Ich bin mir sicher, dass die Bilanz an hochklassigen Publikationen, die wir im Lauf der nächsten zwei Jahre mit Hilfe des Rechners erstellen werden, beachtlich sein wird. Insofern ist der Computer zwar teuer, aber immer noch sehr preiswert.
(futurezone/Günter Hack)