Asus-Server im High Performance Computing Ein Superrechner aus Standardsystemen
Superrechner aus Intel-Prozessoren aufzubauen ist nichts Besonderes mehr. Ein solches System aber aus Standardrechnern zusammenzusetzen und damit noch Sparsamkeits- und Geschwindigkeitsrekorde zu schlagen, ist etwas Besonderes.
Anbieter zum Thema

Wenn der „L-CSC-Cluster“ (Lattice-Cluster for Scientific Computing) in Darmstadt Rechenaufgaben löst, dann steckt dahinter ein System, das sich aus rund 160 Asus-Server-Knoten – jeweils entsprechend einer Server-Box – zusammensetzt. Verwendet wurden 60 Server mit „Intel Xeon E5 2960 V2“ und 100 Server mit „Intel Xeon Em 2260 v2“. Jeder Server wiederum hat zwei Intel-Prozessoren mit jeweils zehn Kernen.
Das Betriebssystem ist „OpenSuse Linux 13.2“ mit 64 Bit. Diese Lösung ist so Energie-effizient, dass sie bei ihrer Indienststellung im November 2014 mit 5270 Gigaflops pro Watt den Platz 1 auf der Liste der „Green 500“ schaffte. Allerdings waren damals noch gar nicht alle Knoten installiert. Die Leistung lag bei 301,3 Teraflop, der Stromverbrauch bei 1.016 Watt. Mit dem heute voll installierte System lässt sich heute ungefähr ein Petaflop rechnen – also zehn Milliarden Operationen pro Sekunde, entsprechend 1.015 Fließkommaoperationen pro Sekunde.
Ganz von selbst kam diese hervorragende Platzierung allerdings nicht zustande. Volker Lindenstruth, der eine Professur für Hochleistungsrechnen innehat, gleichzeitig bei der Darmstädter Gesellschaft für Schwerionenforschung (GSI) die Bereiche IT und Hochleistungsrechnen leitet und am Hochleistungsrechenzentrum Darmstadt zum wissenschaftlichen Beirat gehört, erinnert sich: „Der Aufwand war erheblich.“ Dies betraf sowohl das Hard- als auch das Softwaredesign.
:quality(80)/images.vogel.de/vogelonline/bdb/877000/877019/original.jpg)
GSI Helmholtz bekommt ein neues Rechenzentrum
Bruch mit vertrauter Bauweise - ein eCube für 800 Racks
AMD und Asus
Wichtigstes Merkmal des L-CSC-Clusters auf der Hardwareseite sind die jeweils vier AMD-Highend-GPUs (Graphical Processing Units) „S9150“, die Lindenstruths Team in jeden der Asus-Rechner einbaute. Sie übernehmen sehr viel von der Rechenleistung, die ansonsten auf die Server-Prozessoren entfallen und diese zu langsam machen würden.
Die Grafikkarten greifen über PCIe-Schnittstellen direkt auf den Speicher zu, der Prozessor weist nur noch die jeweiligen Speicheradressen für Aus- und Einlesen zu. Die Gesamt-Speicherzugriffsbandbreite pro Knoten liegt bei 320 Gigabyte und der Spitzendurchsatz pro Karte bei 2,6 Teraflops. Für alle Kerne steht ein halbes Terabyte Arbeitsspeicher zur Verfügung.
Mehr als 500 Grafikkarten stecken also im System. Insgesamt hat es, dessen Connectivity aus 54-Gigabit/s-Infiniband FDR besteht, rund 200 Kilowatt. Der Preis des Systems lag ungefähr bei 1,7 Millionen Euro all-inclusive.
Spitzenleistung beim Durchsatz und beim Preis
Der Umgang mit ihnen erwies sich besonders hinsichtlich der Synchronisierungsgrad er Verarbeitungsvorgänge als trickreich. Denn dank technischer Eigenheiten des Fertigungsprozesses und der Siliziummaterialien haben grundsätzlich alle Grafikkarten, egal, wer sie herstellt, geringfügig unterschiedliche Versorgungsspannung. Das bedeutet, dass sie auch unterschiedlich schnell arbeiten.
Denn Versorgungsspannung und Taktrate sind aneinander gekoppelt – steigt oder fällt der eine Faktor, tut es der andere genauso. Eine zu hohe Taktrate wiederum führt zu mehr Leistung, aber auch zu höheren Temperaturen, was wiederum mehr Kühl- und Lüftungsaktivität erfordert. Dies wiederum verbraucht Strom, und genau das wollte Lindenstruths nicht über das unbedingt notwendige Maß hinaus zulassen.
Zu optimieren waren daher Versorgungsspannung/Taktrate in Relation zur Betriebstemperatur und Lüftungsaktivitäten. Diese Optimierungsaufgabe fiel für jede einzelne Grafikkarte an. Lindenstruth: „Wir haben hier viele Messreihen durchgeführt.“
Ohne Zweifel Energie-effizient
Zudem war dabei das Verhältnis zwischen Lüfterleistung, Drehzahl und Lüftungseffizienz zu berücksichtigen: Während die beförderte Luftmenge linear zur Drehzahl steigt oder sinkt, beträgt bei verdoppelter Drehzahl die Effizienz nur noch ein Viertel, und die Leistung steigt in dritter Potenz zur Drehzahl. Letzteres versuchte Lindenstruth durch die Auswahl von Lüftern mit großer Transportleistung und kleiner Drehzahl zu optimieren.
Außerdem habe man beim Hersteller für einige Änderungen im Design plädiert, um den Luftstrom im Gerät so durchgängig wie möglich zu halten. Weiter suchte Lindenstruths Team nach Verbrauchern, die eigentlich für die gestellten Aufgaben unnötig waren, und schaltete sie ab. Dies betraf beispielsweise den USB-Chipsatz und auch die Festplatten.
Mindestens genauso wichtig war es aber, den Linpack-Benchmark im Rahmen der geltenden Regeln so zu optimieren, dass höhere Systemauslastungen und damit mehr Geschwindigkeit möglich würden. Üblicherweise wird High Performance Linpack gerechnet, in diesem Fall eine Spezialvariante, HPL-GPU, die für die Abarbeitung auf den vorhandenen Grafikkarten optimiert war.
Den Linpack-Benchmarks gerecht
„Die meisten Desktops nutzen nur ein Prozent der Systemressourcen“, sagt Lindenstruth, „das Optimum wissenschaftlicher Anwendungen liegt meist bei 30 bis 50 Prozent.“ Hier habe man einen Auslastungsgrad von 60 bis 90 Prozent angestrebt, damit die Algorithmen so schnell wie möglich durchgerechnet werden.
Lindenstruths Team strickte den Linpack-Benchmark um, so dass er das zugrundeliegende Gleichungssystem zwar mit etwas mehr Rechenaufwand löste, dafür aber die parallel-Kapazitäten des zugrunde liegenden Systems so weit wie möglich ausnutzte. So wurde beispielsweise die nach jedem Schritt üblicherweise Synchronisierung eingespart.
„Die lässt den Verbrauch eines Systems normalerweise wie einen Kamm aussehen: Kurzfristig arbeitet das System auf vollen Touren, dann folgt wieder ein steiler Absturz, weil es auf die Synchronisierung warten muss“, erläutert der Professor.
Was rechnen sie denn?
Die Haupt-Rechenarbeit bei dem Algorithmus besteht in der Multiplikation von Matritzen, die hier vollständig auf die Grafikprozessoren verlagert wird. Der HPL-GPU-Algorithmus verteilt nicht nur die Matritzenmanipulation an die Grafikkarten, sondern spannt auch die CPU für die Abwicklung weiterer anfallender Aufgaben ein. Wahlweise kennt der Algorithmus einen Leistungs- und einen effizienzorientierten Ablauf.
Allerdings werden in der Regel die Grafikkarten in Relation zu den Hauptprozessoren immer schneller, und am Ende fällt letzterer aufgrund der Logik dieser Algorithmen hinter die Grafikkarten zurück. Lindenstruths Team strickte deshalb den Algorithmus so um, dass die lasten dynamisch verteilt und demnächst anderswo benötigte Daten schneller berechnet. Außerdem lässt sich jetzt die Matrix feiner und flexibler granulieren.
Diese und andere Tricks können wissenschaftliche Anwendungen um das Mehrhundert- bis Mehrtausendfache beschleunigen – und ein Rechner, der nicht mehr rechnet, verbraucht keinen Strom oder kann sich – realistischer, da Hochleistungsrechner in der Regel 24 x 7 x 365 laufen – schon wieder einer anderen Aufgabe zuwenden. „Die Mechanismen und Verfahren, nach denen wir Algorithmen optimieren, sind im Grunde überall anwendbar“, sagt Lindenstruth.
Die Optimierung ist übertragbar
Das Darmstädter Hochleistungssystem auf Asus-Basis wird derzeit verwendet, um theoretische Berechnungen aus der Kernteilchenphysik, wie sei die GSI betreibt, durchzuführen. Gerechnet wird mit der so genannten Gitterquantenchromodynamik, einem Modell ohne Parameter für die Vorgänge im Atomkern.
Das zweite Anwendungsgebiet ist sie ultrarelativistische Quantenmolekulardynamik. Hier wird mit Hilfe der Einstein-Gleichungen berechnet, wie sie Moleküle im Quantenbereich mit zusätzlichen molekularen Eigenschaften verhalten. Kurz: „Wir nutzen die Rechner entweder um zu verstehen, was wir in den Versuchen sehen oder wir testen mathematisch formulierte Hypothesen im Versuch“, erklärt Lindenstruth die Sinnhaftigkeit der gigantischen Rechnerei. Und ganz nebenbei hilft es, insgesamt bessere Algorithmen zu entwickeln und so den Stromverbrauch der IT im Allgemeinen zu optimieren.
* Ariane Rüdiger ist freie Journalsistin in München.
(ID:44093256)