Hochleistung-Rechencluster Matterhorn für Lehre und Forschung

Die Seite wird erstellt Jörn Kretschmer
 
WEITER LESEN
Hochleistung-Rechencluster Matterhorn für Lehre und Forschung
Aktuell Projekte Tipps und Wissen Leute | Suchen | zum Inhalt von ZInfo

                     Hochleistung-Rechencluster Matterhorn für
                     Lehre und Forschung

                     Im Dezember 2003 nahm der Linux Hochleistungs-Rechencluster Matterhorn im
                     Maschinenraum der Informatikdienste seinen Betrieb auf. Mit 522 Opteron
                     Prozessoren vom Typ 244 erreicht Matterhorn eine theoretische Leistung von
                     1872 Gigaflops (1‘872 Milliarden Fliesskomma-Operationen pro Sekunde). Mit
                     dieser Leistung ist Matterhorn zurzeit unter den 100 schnellsten Rechnern der Welt.

                     Der Matterhorn-Cluster soll primär einen Teil des enormen Bedarfs an
                     Rechenkapazität abdecken, der in den Bereichen Biochemie, Chemie, Physik,
                     Biologie, Mathematik und Astronomie benötigt wird. Ein Teil seiner
                     Rechenkapazität steht jedoch der gesamten Universität für Lehre und Forschung
                     zur Verfügung.

                     Matterhorn läuft momentan im Testbetrieb. Ab Mitte April, nach Beendigung der
                     Testphase, ist er allen interessierten Instituten zugänglich.

Ausgangslage
                     In verschiedenen, hauptsächlich naturwissenschaftlichen Forschungsbereichen
                     existiert ein enormer, ständig steigender Bedarf an Rechenleistung. Diese
                     Rechenkapazität für aufwändige Simulationen und Berechnungen in den Bereichen
                     Biochemie, Chemie, Biologie, Physik, Mathematik und Astronomie kann heute nur
                     noch durch Hochleistungsrechner zur Verfügung gestellt werden.

                     Die Informatikdienste konnten mit ihrer veralteten SP2 diesen stetig steigenden
                     Bedarf nicht mehr befriedigen. In der Folge begannen diverse Institute mit dem
                     Aufbau kleiner, dezentraler Rechencluster. Viele kleine Instituts-Rechencluster sind,
                     soweit nur reine Rechenleistung gefordert wird und die Cluster nicht selbst
                     Forschungsprojekte darstellen, ineffizient. Der Administrationsaufwand bindet
                     personelle Ressourcen, Volumeneffekte bei der Beschaffung sind gering und oft
                     müssen spezielle bauliche Massnahmen getroffen werden, um die Rechnerräume
                     ausreichend kühlen und mit Strom versorgen zu können.

                     Wir beschlossen deshalb Anfang 2003 die Beschaffung eines zentralen
                     Hochleistungsrechners der den Namen Matterhorn erhalten sollte. Um eine
                     optimale Lösung für die Bedürfnisse aller Benutzer zu finden, wurden von Anfang
                     an interessierte Institute eingeladen, an den Entscheidungsprozessen teilzunehmen.
                     Das so genannte "Cluster-Board" wurde eingesetzt, das sich aus Vertretern der
                     Biochemie, OCI, PCI, Physik, Geographie, der Informatikdienste und dem
                     Functional Genomics Center Zürich zusammensetzte. Das Cluster-Board
                     entscheidet über Einsatz und Ausbau des Clusters und berichtet dem Dekan NMF
                     und dem Prorektor Forschung. Prof. Kim Baldridge, die vom San Diego
                     Supercomputing Center (SDSC) an das OCI berufen wurde, initiierte die
                     Zusammenarbeit mit Cluster-Spezialisten aus San Diego. So sollte Matterhorn mit
                     der am SDSC entwickelten Cluster-Management Software "Rocks" betrieben
                     werden.

Matterhorn-Projekt
                     Im Juli 03 hatte sich das Cluster-Board auf die Vorgaben für die Ausschreibung
                     eines Hochleistungs-Rechners geeinigt.
Hochleistung-Rechencluster Matterhorn für Lehre und Forschung
Der geplante Rechner sollte ein auf dem so genannten Beowulf Konzept
aufbauender Linux Rechencluster sein. Ein Beowulf-Cluster ist eine freie Anzahl
handelsüblicher, auf PC-Architektur basierender und somit ausgesprochen
preisgünstiger Rechenknoten, die mit einem schnellen Netzwerk zu einem Verbund
(Cluster) vernetzt werden. Mit derartigen Clustern können heute Rechenleistungen
generiert werden, für die sonst mehrere Millionen Franken in spezifische
Hochleistungscomputer - ähnlich der SP2 - investiert werden müssten. Ein Vorteil
der Beowulf-Cluster ist zudem, dass sie einfach ausbaubar sind. Bei den immer
kürzer werdenden Produktezyklen kann somit ältere Cluster-Hardware einfach,
kostengünstig und schnell durch neue und leistungsfähigere Komponenten ersetzt
oder erweitert werden. Es besteht weiterhin die Möglichkeit, den Instituten ältere
Rechenknoten als Server zur Verfügung zu stellen. Ein derartiges Recycling ist bei
den sehr teuren, monolithischen Grosscomputern nicht möglich und Investitionen
müssen über viele Jahre amortisiert werden. Bei Beowulf-Clustern entstehen zudem
kaum oder keine laufenden Kosten. Nach Ablauf der normalen 3 Jahre Garantie
können defekte Bauteile, wiederum sehr kosteneffizient, durch Neue ersetzt
werden. Die enormen Wartungskosten, wie sie bei Grossystemen üblich sind,
entfallen.

Die Ausschreibung für den Cluster erfolgte am 25 Juli 2003. Elf Firmen reichten
insgesamt 17 Realisierungsvarianten ein. Den Zuschlag erhielt die Opteron
Prozessor Variante der Walliseller Firma Dalco. Mit einem Preis von 1.2 Millionen
war die Dalco Offerte bezüglich Preis, Leistung und Qualität bestechend.

Mitte November wurden die ersten Racks des Clusters geliefert und am 17.
Dezember wurde der Matterhorn-Cluster für den Testbetrieb frei gegeben.

 Abbildung 1
 Der Matterhorn Cluster. Matterhorn besteht aus 2 Rackreihen mit je 5 Racks. Die vordere
 Reihe (im Bild) enthält die 128 mit Myrinet vernetzten Knoten, den Myrinet Switch (orangene
 Glasfasern) und 2 SCSI File-Server. Die Ethernet Switches sind jeweils unten im Rack
 angebracht (100 Mbit blaue, Gbit grüne Kabel).
Architektur:
               Der Cluster besitzt aus Gründen der Redundanz zwei Login-Knoten. Diese zwei
               Knoten sind die einzigen Rechner von Matterhorn, auf die die Benutzer einloggen,
               interaktiv ihre Programmcodes kompilieren und Jobs an die Rechenknoten
               absetzen können.

               Die eigentliche Rechenarbeit übernehmen 256 Rechenknoten mit je 2 CPUs. Von
               den Login-Knoten aus werden Jobs mit Hilfe der Queuing-Software "Sun Grid
               Engine Enterprise Edition" auf diese Rechenknoten verteilt.

               Zusätzlich bewältigen 1 IDE und 2 SCSI File-Server mit je einem Terabyte (1
               Million Megabyte) Plattenspeicher die produzierten Datenmengen.

Netzwerk
               Für die Verbindung der einzelnen Knoten werden drei unabhängige Netzwerke
               eingesetzt; ein 100 Mbit Ethernet Netzwerk für administrative Zwecke, ein Gigabit
               Netzwerk für den Datenaustausch zwischen den Knoten und für 128
               Rechenknoten zusätzlich noch das sehr schnelle, low-latency Netzwerk Myrinet
               (siehe Glossar Myrinet).

               Das 100 MBit Ethernet ist ein normales, geswitchtes Ethernet.

               Für das Gigabit Netzwerk wurde eine so genannte "Fat Tree" Topologie gewählt.
               16 Cluster-Knoten sind jeweils mit einem Gigabit-Switch der Firma HP verbunden.
               Die Gigabit Switches wiederum sind mit je 8 Gbit mit einem grossen Enterasys
               Switch verbunden, der bis zu 420 Gbit Verbindungen managen kann. Die
               Maximale Verbindungsgeschwindigkeit zwischen Knoten an einem HP-Switch ist
               entsprechend 1 Gbit und die minimale Verbindungsgeschwindigkeit innerhalb des
               gesamten Clusters bei Volllast immerhin noch 500 Mbit.

Prozessoren
               Die einzelnen Matterhorn Rechenknoten sind mit je zwei AMD Opteron 244
               Prozessoren ausgerüstet. Die Entscheidung für den Einsatz von Opteron
               Prozessoren hatte verschiedene Gründe. Zum einen kann auf den Opteron
               Prozessoren 32 und 64 bit Code mit vergleichbarer Geschwindigkeit ausgeführt
               werden, wobei 32 bit Programme unter einem 64 bit Betriebssystem nach unseren
               Messungen sogar 10% schneller als auf einem 32bit Betriebssystem laufen. Diese
               Eigenschaft unterscheidet den Opteron von Xeon Prozessoren, die keine 64 bit
               Fähigkeiten haben und von Itanium Prozessoren, deren 32 bit Performance sehr
               schlecht ist. Zum anderen ist die Memory Adressierung der Opteron Prozessoren
               vergleichbaren Xeon Prozessoren klar überlegen, so dass zwei oder mehr Opterons
               gerade unter Volllast eine bessere Leistung zeigen.

               Die Wahl der Opteron Architektur brachte jedoch auch Probleme mit sich. Wir
               stiessen bei Treibern, Compilern und verschiedenen anderen Software
               Komponenten und Distributionen auf Probleme, die auf noch nicht ausgereifte
               Anpassungen an die neue Prozessorarchitektur zurückzuführen waren. Doch die
               Anpassungen der Software werden durch die schnelle Verbreitung der überlegenen
               Opteron Prozessoren intensiv vorangetrieben.

Rocks
               Die Opteron Version der Cluster-Management Software Rocks vom SDSC ist erst
               seit dem 23. Dezember 2003 verfügbar. Matterhorn läuft deshalb im Moment unter
               einem von Dalco entwickelten Management-System. Seit Januar ist jedoch auf 16
               Knoten des Clusters eine Testversion von Rocks für Opteron mit dem
               Versionsnamen Matterhorn installiert. Rocks basiert auf einer am SDSC speziell für
               Clusterumgebungen kompilierten RedHat Version. Ab Mitte April wird der
               Matterhorn Cluster mit Rocks betrieben.
Einsatz von
Matterhorn
              Im laufenden Testbetrieb wird der Matterhorn Cluster von vier Instituten bzw.
              Gruppen benutzt.

              Die Gruppe von Prof. Amadeo Caflisch, Biochemisches Institut, simuliert
              computerunterstützt das Verhalten von Molekülen. Sie sind daran interessiert, wie
              Proteine mit anderen Proteinen und kleinen Molekülen auf molekularer Ebene
              interagieren. Diese Informationen sind sehr wichtig für die Entwicklung neuer
              Medikamente ("Drug design") zum Beispiel gegen Alzheimer, Krebs und AIDS.

              Die Gruppe von Prof. Jürg Hutter entwickelt neue Algorithmen um grosse
              Molekülsysteme berechnen zu können. Weiterhin werden chemische Reaktionen
              mit Hilfe von quantenchemischen Modellen und Proteinfaltung und
              Proteinaggregation mit moleküldynamischen Simulationsmethoden erforscht.

              Prof. Kim Baldridge - bis vor kurzem noch Direktorin für integrative
              Computerwissenschaften am San Diego Supercomputing Center - und ihre Gruppe
              untersuchen ebenfalls mit computertechnischen Methoden chemische und
              physikalische Eigenschaften technisch relevanter Verbindungen. In Abbildung 2
              findet sich ein Beispiel einer solchen Analyse.

               Abbildung 2
               Ein kleines Antigen-Molekül, dessen elektrostatisches Oberflächen-Potential farblich markiert
               wurde. Deutlich sichtbar sind die negativen Ladungen (gelb) um die Sauerstoff Atome (rote
               Kugeln).

               Diese Art von Untersuchungen sind wichtig, um die Reaktionsfreudigkeit von Molekülen oder
               ihre Bindungseigenschaften an andere Moleküle zu berechnen und verstehen zu lernen. Mit
               diesem Wissen können neue Moleküle mit spezifischen Eigenschaften, z.B. für neue
               medizinische Wirkstoffe, entwickelt werden.

               Die quantenchemische Berechnung der Elektronenverteilung benötigte auf 8 Knoten (16
               CPUs) des Matterhorn-Clusters etwa 21 Stunden. Die eingesetzte Software war GAMESS.
Die Daten wurden auf einer SGI Workstation visualisiert.

            Bild: W. Sudolt, OCI, Universität Zürich

           Moderne molekularbiologische Forschung muss die riesigen Datenmengen
           verarbeiten können, die von hoch automatisierten Analysegeräten produziert
           werden. Diese Daten können nur noch mit Hilfe hocheffizienter Software und
           Hardware analysiert werden. Dr. R. Schlapbach und seine Gruppe am FGCZ
           benutzt die Matterhorn-Knoten um derartige Daten zu analysieren. Einige der
           Projekte des FGCZ sind Modellstudien von degenerativen und autoimmun
           Krankheiten des zentralen Nervensystems, Signalwege bei der Entstehung von
           Krebs, Resistenz von Krebszellen gegen Chemoptherapeutika, sowie das Studium
           von Pflanzenwachstum und Abwehrmechanismen.

           Oben wurde nur ein kleiner Teil des breiten Einsatzspektrums eines Clusters vom
           Kaliber des Matterhorn Clusters erwähnt. Die Informatikdienste planen, Matterhorn
           auch für Methoden der Molekularbiologie wie Sequenzanalysen sowie
           Modellrechnungen aus der Astronomie einzusetzen. Weitere Einsatzgebiete wären
           zum Beispiel Bildverarbeitung, Visualisierung und Datamining.

           Voraussetzungen für den Einsatz von Matterhorn ist Linux-kompatible Software
           und, falls notwendig, eine ausreichende Anzahl Lizenzen für die benötigten Knoten.

           Für weitere Auskünfte wenden Sie sich bitte an:

           Dr. Alexander Godknecht
           Christian Bolliger

Glossar:

                     32 und 64 bit             Die "Bittigkeit" eines Prozessors
                                               bezeichnet seine Adressbreite und im
                                               Regelfall auch die maximale Grösse von
                                               Ganzzahlen, die in einem Schritt
                                               verarbeitet werden können. Ein 32 bit
                                               Prozessor kann somit 232 (ca. 4*109)
                                               als höchste Speicheradresse angeben.
                                               Damit kann ein 32 bit Prozessor auf
                                               höchsten 4 GB Memory direkt zu
                                               greifen. Bei 64 bit Prozessoren liegt die
                                               Grenze bei 264 (1.8*1019), es ist also
                                               ein direkter Zugriff auf rund 10'000 PB
                                               (Petabyte) möglich. Eine Steigerung der
                                               Rechengeschwindigkeit ist möglich, da
                                               zum Beispiel 2 32 bit Zahlen in einem
                                               Schritt berechnet werden können.

                     Cluster                   Ein Verbund von Computern, die für
                                               die Benutzer wie eine einzige Maschine
                                               erscheinen. Tatsächlich besteht ein
                                               Cluster aber aus unabhängigen
                                               Maschinen, die durch eine
                                               Verwaltungssoftware gleichgeschaltet
                                               wurden. Im einfachsten Fall gelingt dies
                                               mit einigen wenigen Scripts.

                     Itanium                   Vor zwei Jahren eingeführte
                     Prozessor                 Microprozessorfamilie der Firma Intel.
                                               Die 64 bit Architektur wurde in
                                               Zusammenarbeit mit HP neu entwickelt.
                                               Prozessoren dieser Familie wurden vom
                                               Markt nicht gut aufgenommen, da sie
                                               alten 32 bit Code nur in einem relativ
                                               langsamen Kompatibilitätsmodus
                                               verarbeiten können. Bis vor kurzem
                                               konnten diese Prozessoren nur unter
Linux eingesetzt werden.

Knoten             Die einzelnen Rechner eines
                   Rechencluster sind miteinander vernetzt.
                   Aus diesem Grund werden die einzelnen
                   Rechner auch als Knoten (des Netzes)
                   bezeichnet.

Latenzzeit         Zeit, die vom Signaleingang bis zur
                   Reaktion des Schaltelementes
                   verstreicht. Bei Netzwerkelementen
                   (Netzwerkkarten, Switches, Router) die
                   Zeit in der entschieden wird wohin, das
                   Datenpaket gesandt wird. Bei den
                   klassischen Ethernet
                   Netzwerkelementen ist dies Zeit recht
                   hoch (ca. 500 Microsekunden bei 100
                   Mbit/s), da bei jedem Paket eine
                   Entscheidung notwendig ist. Bei Low
                   Latency Netzwerken, wie sie für
                   Rechencluster verwendet werden sind
                   Latenzzeiten von rund 5
                   Microsekunden üblich.

Myrinet            Netzwerkprodukt der Firma Myricom
                   (http://www.myricom.com). Myrinet ist
                   ein speziell im Clusterbereich
                   eingesetztes und entsprechend nicht
                   ganz billiges Hochleistungs-Netzwerk
                   mit Glasfaser-Verbindungen. Es eignet
                   sich speziell für parallel auf mehreren
                   Rechenknoten eines Clusters arbeitende
                   Programme, die intensiv miteinander
                   kommunizieren und grosse
                   Datenmengen austauschen müssen. Eine
                   Myrinet-Verbindung kann bidirektional
                   bis 2 Gbit Daten pro Sekunde
                   übertragen. Eine weitere, für viele
                   parallel arbeitenden Programme sehr
                   wichtige Eigenschaft von Myrinet ist
                   seine sehr kurze Latenzzeit ca. 5
                   Microsekunden für eine
                   Verbindungsaufnahme. Bei vielen
                   Verbindungsaufnahmen pro Zeiteinheit
                   kann der Kommunikationsanteil, der für
                   die effektive Etablierung einer
                   Verbindung benötigt wird, schnell zum
                   Flaschenhals werden.

Opteron            Neu Microprozessorfamilie der Firma
                   AMD (http://www.amd.com). Die
                   Architektur der Opteronprozessoren
                   basiert auf der klassischen Intel Pentium
                   Architektur. Allerdings wurden die
                   Adressbreite auf 64 bit erweitert. Die
                   Opteron Prozessoren verfügen auch
                   über einen eingebauten
                   Memorycontroller. Das bedeutet, dass
                   der Prozessor die Speicherzugriffe
                   direkt unter Kontrolle hat. Dadurch ist
                   die Speicherverwaltung effizienter. Die
                   Architektur ist von Grund auf für den
                   Einsatz in Mehrprozessorsystemen
                   ausgerichtet.

Queuing-Software   Software, welche die Verteilung der
                   Aufträge auf die Rechenknoten
                   organisiert und die Anstehschlange
                   (Queue) verwaltet.
Rocks                  Rocks ist eine Clusterinstallations- und
                                                              Verwaltungssoftware, welche vom San
                                                              Diego Supercomputing Center
                                                              entwickelt wurde. Bei Rocks werden alle
                                                              Information über den Cluster in einer
                                                              Datenbank (MySQL) gespeichert. Dies
                                                              vereinfacht die Installation und
                                                              Verwaltung des Clusters. Für den
                                                              Matterhorn Cluster mit seiner etwas
                                                              komplexeren Architektur muss Rocks
                                                              angepasst werden.

                                       Switch                 Ein Netzwerkgerät, das die Verbindung
                                                              zwischen Computern schaltet. Im
                                                              Unterschied zu einem Netzwerkverteiler
                                                              (Hub) wird die Netzwerkleistung
                                                              (Bandbreite) nicht zwischen den
                                                              Computern aufgeteilt, sondern jeder
                                                              Computer am Switch kann im Idealfall
                                                              mit voller Leistung mit jedem anderen
                                                              Computer am Switch kommunizieren.

                                       Xeon Prozessor         Microprozessorfamilie der Firma Intel
                                                              (http://www.intel.com) aus der Pentium
                                                              Reihe (32 bit). Die Xeon Prozessoren
                                                              sind für den Server Einsatz optimiert
                                                              und können in Dual Systemen oder in
                                                              Mehrprozessor Systemen (Xeon MP)
                                                              eingesetzt werden. Der Aufbau
                                                              (Architektur) des Prozessors entspricht
                                                              weitgehend dem Aufbau des Intel
                                                              Pentium Prozessors, der für
                                                              Arbeitsplatzsysteme eingesetzt wird.

                                                                                         Alexander Godknecht

    Zum Ausdrucken dieses Artikels steht Ihnen das PDF-Dokument zur Verfügung.

Uni ZH | Informatikdienste | Glossar | InformeD | Archiv | UniAccess | Anfang | Inhalt

Last update: 27.02.2004 by vo
Sie können auch lesen