Center for Information Services and High Performance Computing (ZIH)
Cluster Computing & OpenSource
Ein Uberblick
15. Marz 2009
Nothnitzer Straße 4601187 DresdenINF 1038+49 351 - 463 38781
Robin Geyer
m
Foliensatz
Verfugbarkeit der Folien
Vorlesungswebsite:http://tu-dresden.de/die_tu_dresden/zentrale_einrichtungen/
zih/lehre/ws0910/lctp
2/86
Inhalt
1 Einfuhrung / Motivation
2 Begriffe, Basics und Architekturen
3 Systemsoftware
4 Anwendungssoftware / Optimierung
5 Quellen
3/86
1 Einfuhrung / MotivationClusterchallengeVorlesungHigh Performance Computing
4/86
Clusterchallenge
Supercomputing: Konferenz mit angeschlossenen WettbewerbenClusterchallenge: 3kW Strom, vorgegebene Software, viele Jobs(unterschiedliche Punkte), 44h Zeit. Gewinner ist der der die meistenPunkte geholt hat.
5/86
Clusterchallenge / Ergebnis
6/86
Motivation fur Vorlesung / Cluster in Top500
7/86
Motivation fur Vorlesung / Weitere Grunde
Erfahrungen aus Clusterchallenge weitergeben
Zum ersten Mal Vorlesung/Praktikum zum Clusterbau undAdministration
Theoretische Betrachtungen mit praktischen Erfahrungen untermauern
Nachstes Siegerteam fur Clusterchallenge ausbilden?!?
8/86
Wozu High Performance Computing (HPC)?
Simulation
Komplexe Systeme modellieren ohne aufwandige ExperimenteGeringe Kosten im Vergleich zu ExperimentenSpater im Praktikum benutzte Software: POVRay und WPP
9/86
Wozu High Performance Computing (HPC)?
Simulation
Komplexe Systeme modellieren ohne aufwandige ExperimenteGeringe Kosten im Vergleich zu ExperimentenSpater im Praktikum benutzte Software: POVRay und WPP
Datenauswertung
Unabdingbar um komplexe Experimente zu verstehenSpater im Praktikum benutzte Software: MpCCD und RAxML
9/86
Wozu High Performance Computing (HPC)?
Simulation
Komplexe Systeme modellieren ohne aufwandige ExperimenteGeringe Kosten im Vergleich zu ExperimentenSpater im Praktikum benutzte Software: POVRay und WPP
Datenauswertung
Unabdingbar um komplexe Experimente zu verstehenSpater im Praktikum benutzte Software: MpCCD und RAxML
Entwicklung und Test neuer Technologien
9/86
Wozu HPC / Simulation
Beispiel: Ausbreitung seismischer Wellen in verschiedenenMaterialien (WPP)
10/86
Wozu HPC / Datenauswertung
Beispiel: Phylogenetische Baume aus Gensequenzen erzeugen(RAxML)
11/86
2 Begriffe, Basics und ArchitekturenBegriffeAufbauKomponentenVerbindungsnetzeSysteme im Praktikum
12/86
Begriff / Lastverteilung und Parallelitat
Idee der parallelen Verarbeitung
Ressourcenintensive Anwendungen benutzen verteilte Hardware
Ressourcen: CPUs, Hauptspeicher, persistenter Speicher...
Vorteile:
Hohere Kapazitaten als in EinzelsystemErhohte Redundanz und Ausfallsicherheit
13/86
Begriff / Capacity und Capability Computing
Capacity Computing
Stellt die Ressourcen bereit, um große Mengen von kleineren Problemen imBulk zu Losen. Die Anwendungen die dabei zum Einsatz kommen stellenmeist verhaltnismaßig geringe Anforderungen an die einzelnenHardwareelemente.
Capability Computing
Bietet Ressourcen, um Probleme zu losen die durch Capacity Computingnicht losbar waren. Diese Probleme stellen derart hohe Anforderungen an dieHardware, dass dafur spezielle Systeme zum Einsatz kommen mussen.
Die Grenzen sind dabei fließend.
14/86
Capacity vs. Capability Computing
Erkennen des Problems welches gelost werden soll
Fruhzeitige Entscheidung fur Capacity oder Capability Computing
Capability Computing benotigt ⇒ Cluster u.U. ungeeignet
15/86
Begriff / Cluster
ClusterVerknupfung von Standardkomponenten hochster Qualitat uber einHochgeschwindigkeitsnetzwerk auf engstem Raum und deren parallelerNutzung durch lastverteilte (parallelisierte) Programme.
16/86
Aufbau / Grundbausteine fur Cluster
RAM
Node
CPUCore Core
CoreCore
Input / Output
Grafik-Karte
RAM
Node
CPUCore Core
CoreCore
Input / Output
Grafik-Karte
RAM
Node
CPUCore Core
CoreCore
Input / Output
Grafik-Karte
RAM
Node
CPUCore Core
CoreCore
Input / Output
Grafik-Karte
Interconnect Fabric
Storage Storage
HDDHDDHDDHDD
17/86
Aufbau / Homogenitat und Heterogenitat
Homogenitat & Heterogenitat
Sind sowohl Hardware als auch Betriebssystem aller Rechnerknoten identisch,so spricht man von einem homogenen Cluster, andernfalls ist der Clusterheterogen.
18/86
Komponenten / CPU
x86: Xeon, Opteron, Core, Phenom ...
PreiswertSchnell (genug)Viel Software
sparc: Also Sun oder Fujitsu
Teurer, spezialisiertFur (Web)server-Cluster (SSL, Mail, Online Gaming, Datenbanken, ...)Diese auf Integer-Leistung angewiesene Applikationen konnen von Sparcprofitieren
Power:
Sehr teuer, hoher FließkommadurchsatzHochverfugbarkeitssysteme, Mainframes
MIPS: SiCortex
19/86
Komponenten / Festplatten
Zwei Grunde wieso Nodes mit Festplatten gut sind:
Swap File System fur Jobs mit hohen Resourcenanforderungen
Abbrechen von Jobs in vielen Fallen ohne Swap nicht moglich
Scratch File System zum Abspeichern von Zwischenergebnissen
20/86
Komponenten / Festplatten
Zwei Grunde wieso Nodes mit Festplatten gut sind:
Swap File System fur Jobs mit hohen Resourcenanforderungen
Abbrechen von Jobs in vielen Fallen ohne Swap nicht moglich
Scratch File System zum Abspeichern von Zwischenergebnissen
Zwei Grunde dagegen:
Verbraucht zusatzlich Strom
Verschleißteil
20/86
Komponenten / Grafikkarten
Prinzipiell uberflussig
ABER: nutzbar als Applikationsbeschleuniger
Abwagung Kosten vs. Nutzen vs. Programmierbarkeit
21/86
Verbindungsnetze / Zusammenhange1
Bandbreite
Latenz
Granularität (Parallelität)
SETI@home POVRAY LAMMPS, GAMMES, HPCC
HPC Netzwerktechnologieerforderlich
1fur alle NW Technologien siehe [DAAGeorgi08]
22/86
Verbindungsnetze / Losungen / Gigabit Ethernet
Fur professionelle Anwendung meist zu langsam
Allerdings fur unseren Lehrbedarf ausreichend
Bietet sich als Adminnetz an (ssh, ganglia, Batchsystem, ...)
23/86
Verbindungsnetze / Losungen / 10GBase
Nachfolger des vorherrschenden Ethernet Standards
Datenrate: bis 925 MiB/s; Latenz: 16.9µs − 25.8µs (Karte: ChelsioS310E-CX, Switch: HP Pro Curve 6400-cl im CX4 Mode)
Mit rund 1200 e pro Port (bei 256 Port Installation) noch recht teuer
24/86
Verbindungsnetze / Losungen / Infiniband
Weit verbreitet (≈ 30% der Top500) (durch HP Cluster Platform 3000und IBM xSeries x3650 moglicher Weise noch hoher)
Datenrate: bis 955 MiB/s; Latenz: 3.8µs − 4.1µs (4x SDR, Herstellergeben weit bessere Werte an [MellnxIBPerf])
Bandbreite bei großen Netzen aufgrund von statischem Routingreduziert[THoeffIBR08]
25/86
Verbindungsnetze / Losungen / Myrinet
Zu 10GBase (protokoll)kompatibel, im MX Mode aber latenzarm
Datenrate: 1185 MiB/s; Latenz: 2.5µs − 2.6µs(Karte:10G-PCIE-8AL-C+MX1; Switch: 10G-SW32LC-16M Line Card)
Stromsparend[CC08]
26/86
Verbindungsnetze / Losungen / Quadrics QsNetII
Bis 32 Ports volle Crossbar
Datenrate: 900 MiB/s; Latenz: 1.4µs (ohne MPI unter 0.5µs siehe[QsNetIIPerf])
27/86
Praktikumssystem I
Intel Essential Series D945GCLF2
75 e pro Stuck
Fur professionelle HPC-Anwendung ungeeignet
Bringt aber den Vorteil alles ausprobieren zu konnen
4 Boards gut als Lehr- und Lernsystem geeignet
28/86
Praktikumssystem II
3 x Sony Playstation 3 mit Cell Broadband Engine
Wegen einigen Eigenheiten bei der Administration ebenfalls gutesLehrsystem
Cell Architektur prinzipiell fur Clusterbau interessant, PS3 aberungeeignet (Hauptspeicher, Netzwerk)
29/86
3 SystemsoftwareSystemsoftwareRegeln / TippsDatenspeicherungToolsBatchsysteme und ClustersuitenMonitoring
30/86
Systemsoftware
Betriebssystem
31/86
Betriebssystem I
Die Qual der Wahl
Auswahl des Betriebsystems richtet sich (meist) nach zu verwendenderHardware/Software, nicht umgekehrt!
Auf Treibersupport durch den Hersteller achten
32/86
Betriebssystem II
Wie soll gestartet werden?
Entweder: jeder Node hat eigene Festplatte → lokale Installation
Provisioning bedenken
Oder: Booten uber Netzwerk mittels bootp
33/86
Betriebssystem III
Linux eignet sich meist hervorragend fur Cluster
Enterprise Losungen bieten besseren Support, Treiberunterstutzung undZertifizierung (RHEL, SLES, ...)Komplette Softwarekits (z.B. Sun HPC Software) vereinfachen dieInstallation und AdministrationIm Praktikum Debian
Naturlich sind auch andere Betriebssysteme moglich
Teilweise weil nicht anders realisierbar (z.B. Sparc Cluster mit Solaris)Wissenschaftliche OpenSource Anwendungen (WPP, POY, GAMESS, ...)HPC problematisch
34/86
Systemsoftware / Zu Beachten I
Sowohl Software als auch Hardware homogen gestalten.
Je einheitlicher ein Cluster:
Desto weniger Aufwand bei Installation, Wartung, UpgradesDesto weniger Probleme mit inkompatiblen SchnittstellenDesto weniger unvorhergesehen Probleme
35/86
Systemsoftware / Zu Beachten II
Nodes nicht uberladen.
Je weniger Dienste und Hardware auf dem Node aktiviert sind, destobesser:
Nicht benotigte Dienste deaktivierenNicht benotigte Software deinstallierenNicht benotigte Features im BIOS deaktivierenCompute-Nodes sind zum Rechnen da!Head-Node ist Eintrittstor und Datensammelpunkt!
36/86
Systemsoftware / Zu Beachten III
node-5 ist auch ein Name.
Bezeichnungen aus diversen Mythologien sind hinderlich
Besser: Node-Namen bestehened aus einem einheitlichen Prafix undeiner fortlaufenden Nummer (node1, node2, ..., node23, ...)
Viele Tools profitieren davon, oder haben gar zusatzliche Features diedarauf aufsetzen
37/86
Systemsoftware / Zu Beachten IV
Know your enemy.
sysctl, getconf und hwinfo sind nutzlich
Viele Probleme lassen sich im Voraus verhindern
38/86
Systemsoftware / Zu Beachten V
Uhrzeit uber das ganze System synchron halten.
NTP benutzen!
Synchron laufende Systemuhren sind unabdingbar!
Am besten eigenen NTP-Server auf Head-Node zum Zeitabgleich derCompute-Nodes
39/86
Systemsoftware / Compiler
Ein Wort zu Compilern
GCC ist fur Linux Systeme unerlasslich
Produktivsoftware sollte mit optimalen Compiler fur Systemarchitekturkompiliert sein (z.B. ICC fur Intel CPUs)
Testreihen durchfuhren (manchmal ist auch gcc besser)
Meist kommerzielle Produkte
40/86
Datenspeicherung
41/86
Datenhaltung uber das Cluster I
Bisher stark vernetzte Rechner mit jeweils eigenem, von einanderunabhangigen Dateisystem
Binarys, Eingangsdatensatze, etc. mussen auf jedem Node der diesebenutzt verfugbar sein
Schlechte Losung: vor jedem Job Dateien per ftp oder scp auf die NodeskopierenRichtige Losung: Verzeichnisse die pro Node synchron gehalten sind
Verteiltes Dateisystem unabdingbar
42/86
Datenhaltung uber das Cluster II
//bin/boot/dev/etc/home/lib/mnt/opt/proc/root/sbin/cluster/sys/tmp/usr/var
Fileserver-
Daemon
//bin/boot/dev/etcnfs:///home/lib/mnt/opt/proc/root/sbinnfs:///cluster/sys/tmp/usr/var
//bin/boot/dev/etcnfs:///home/lib/mnt/opt/proc/root/sbinnfs:///cluster/sys/tmp/usr/var
Node 1 Node nHeadnode / NAS System
43/86
Dateisysteme / verteilte Dateisysteme I
Begriff: verteiltes Dateisystem
Ein verteiltes Dateisystem erlaubt den Zugriff auf Dateien eines odermehrerer entfernter, uber ein Rechnernetz verbundener Server.
Beachte: Obwohl Clients die verteilten Dateisysteme wie lokale Resourcenbenutzen konnen mussen die Dateien auf dem Server noch auf lokalenDateisystemen (Ext3, ReiserFS, XFS, . . . ) vorliegen. Dies ist fur die Clientstransparent.
44/86
Dateisysteme / verteilte Dateisysteme II
Man kann 2 Arten unterscheiden:
Distributed Filesystems (single source):
1 Server auf dem die Daten liegen
Bsp: AFS, NFS, SMB
Fehlertolerante: Coda, DFS
Distributed Parallel Filesystems (multi source):
Mehrere Server halten die Daten
Abbildung auf ein gesamtheitliches virtuelles Dateisystem
Bsp: Lustre, PVFS
Fehlertolerante: Ceph, GFS, GlusterFS
45/86
Tools
46/86
Tools
Verschiedene Arbeiten treten immer wieder auf
Nodes mussen bequem von einer Stelle aus administriert werden konnen
Werkzeuge zu kennen verringert Arbeitszeit signifikant(Einarbeitungsaufwand beachten)
47/86
Tools / Begriff / Distributed Shell
Erklarung
Prinzip: einen Befehl auf mehreren Nodes ausfuhren
Wrapper fur rsh/ssh/remsh-Kommandos
Verringert die Zeit fur Konfiguration, Updates usw.
48/86
Distributed Shell / DSH
Dancer’s Shell / Distributed Shell
Autor: Junichi Uekawa
Unterstutzt alle gangigen shells
Klein, leicht und handlich
Einfache Konfiguration
/etc/dsh/dsh.conf/etc/dsh/machines.list/etc/dsh/group/...
http://www.netfort.gr.jp/~dancer/software/dsh.html.en
49/86
Distributed Shell / PDSH
Parallel Distributed ShellAutor: Jim Garlick
Machtiger als DSH - ’Profiwerkzeug’
Modularer Aufbau (dynamisch ladbar)
Unterstutzt ’genders’
Wird im Praktikum benutzt
http://sourceforge.net/projects/pdsh
50/86
Tools / Begriff / Environment Modules
Environment ModulesErmoglicht dynamisches verandern des Linux-Environment
Wie der Name schon sagt: modular
Außerst praktisch, auch fur Desktop-Systeme
Wird im Praktikum benutzt
http://modules.sourceforge.net/
51/86
Environment Modules / Beispiel I
Beispiel: modules & LD LIBRARY PATH
52/86
Environment Modules / Beispiel
Beispiel: modules & binaries
53/86
Batchsysteme und Clustersuiten
54/86
Batchsystem / Begriff
Batchsystem
Softwarelosung zur Stapelverarbeitung (oder Batchverarbeitung)
Batchverarbeitung ist die sequentielle, nicht-interaktive Abarbeitung vonAufgaben.
Beinhaltet meist:
RessourcenmanagerSchedulerTools fur Konfiguration, Management und DiagnoseEinfaches Monitoring
55/86
Batchsystem / PBS
Portable Batch System
Entwickelt in den 1990ern fur die NASA
Verfugbar als PBSpro und OpenPBS
Ausgereift, gut dokumentiert und supportet
http://www.pbsgridworks.com/
Lizenz:
Eigene LizenzNutzung: kommerziell und nicht-kommerziell (openPBS) erlaubt(Registrierung)Weiterverbreitung: nur nicht-kommerziellModifikation: orginal Quelltext ist mitzuliefern
56/86
Batchsystem / LSF I
Load Sharing Facility
Platform LSF → kommerzielles Produkt
OS: Unix, Linux und Windows
Kommt auch am ZIH zum Einsatz
http://www.platform.com/Products/platform-lsf/
Lizenz:
Proprietar
57/86
Batchsystem / LSF II
Befehl: bjobs
Befehl: bjobs -a
58/86
Batchsystem / MOAB cluster suite
MOAB cluster suiteProfessionelle Middleware zum Cluster Management
Enthalt webbasierte und grafische Managment-Tools
OS: Linux, Unix, Mac OSX & bebrenzte Windows-Unterstutzung
Resource Manager: LSF, TORQUE, PBSPro, SGE, SLURM,LoadLeveler, OpenPBS and custom
http://www.clusterresources.com/
59/86
Batchsystem / SLURM
Simple Linux Utility for Resource Managment
OS: Linux, Unix
Einfach, skaliert gut
Sehr gut und ubersichtlich dokumentiert
Wird im Praktikum zum Einsatz kommen
https://computing.llnl.gov/linux/slurm/
Lizenz:
GPL
60/86
Batchsystem / OSCAR
Open Source Cluster Application Resources
OS: Linux (rpm-basierte)
Gedacht fur Beowulf-Cluster
Beinhaltet viele aufeinander abgestimmte Tools und Bibliotheken
http://svn.oscar.openclustergroup.org/trac/oscar
Lizenz:
GPL
61/86
Monitoring
62/86
Monitoring
Große Menge an Rechnern ohne eigenen Monitor uberwachen
Ubersicht des Systemzustands behalten
Idee: grafische Aufarbeitung der Parameter
Bei besonderen Zustanden Mails verschicken
Nur in Notfallen per Monitor oder seriellen Kabel an die Nodes gehen(BIOS etc.)
63/86
Monitoring / Ganglia
Ganglia
Umfassende Statistiken uber alle Nodes im System
Sammelt Daten mit Hilfe von Deamon auf jedem Node
Visualisierung per Webfrontend
Download: http://ganglia.info/
Lizenz:
UC Berkeley Lizenz “copy, modify, use and distribution without fee”
64/86
Monitoring / Ganglia Screenshot
65/86
4 Anwendungssoftware / OptimierungKommunikationparallele SoftwareOptimierung
66/86
Kommunikation / InternodeNachrichtenaustausch
67/86
Internode Kommunikation
Bis jetzt: “Farm von Rechnern”
Nur moglich auf jedem Node Programm(e) zu starten
Ziel: Mehrere Nodes als ein Rechner zu benutzen
Nachrichtenaustausch von Programmteilen auf verschiedenen Nodes uberVerbindungsnetz notigDa kein gemeinsamer Hauptspeicher vorhanden ist mussen Nachrichtenexplizit versendet/empfangen werden
68/86
Kommunikation / MPI
Message Passing Interface
Standardisierte Programmierschnittstelle fur parallele Programmierung
Aktuelle Version des Standards: 2.0
Stellt diverse Kommunikationsroutinen zur Verfugung (send, receive,broadcast, ...)
Mehrere Prozesse die miteinander uber Nachrichten kommunizieren
Vertreter: OpenMPI, MPICH1, MPICH2, MVAPICH
Verfugbar fur C/C++,Fortran, Java, Python
69/86
Begriff / PVM
Parallel Virtual MachineAbstraktion verteilter Systeme auf einen virtuellen Parallelrechner
aktuelle Version: 3.4
benutzt Daemons die miteinander uber Nachrichten kommunizieren
verfugbar fur C/C++,Fortran, Java, Python, Pearl ...
70/86
parallele Anwendungen
71/86
parallele Anwendungen
Idee der Lastverteilung
Resourcenintensive Anwendungen benutzen verteilte Hardware
Resourcen: CPUs, Hauptspeicher, persistenter Speicher...
Vorteile:
Hohere Kapazitaten als in EinzelsystemGute SkalierbarkeitErhohte Redundanz und Ausfallsicherheit
72/86
parallele Programmierung: Token Ring I
1 #include <stdio.h>2 #include <mpi.h>3
4 #define NRING 1005 #define TAG 47116
7 int main(int argc , char *argv []){8 int rank , size , next , prev , message;9
10 /* start up MPI */11 MPI_Init (&argc , &argv);12 MPI_Comm_rank(MPI_COMM_WORLD , &rank);13 MPI_Comm_size(MPI_COMM_WORLD , &size);14
15 /* errechne rank des naechsten prozesses im ring */16 next = (rank + 1) % size;17 prev = (rank + size - 1) % size;18
19 /* rank 0 ist start*/20 if (0 == rank) {21 message = NRING;22 MPI_Send (&message , 1, MPI_INT , next , TAG , MPI_COMM_WORLD );23 }
73/86
parallele Programmierung: Token Ring II
24
25 /* sende token immer im ring */26 while (1) {27 MPI_Recv (&message , 1, MPI_INT , prev , TAG , MPI_COMM_WORLD ,28 MPI_STATUS_IGNORE );29
30 if (0 == rank) --message;31
32 MPI_Send (&message , 1, MPI_INT , next , TAG , MPI_COMM_WORLD );33
34 if (0 == message) break;35 }36
37 /* token als letztes zu rank 0 zurueck */38 if (0 == rank) {39 MPI_Recv (&message , 1, MPI_INT , prev , TAG , MPI_COMM_WORLD ,40 MPI_STATUS_IGNORE );41 }42
43 MPI_Finalize ();44 return 0;45 }
74/86
MPI Implementierungen
Open MPI
http://www.open-mpi.org/
OpenSource
Standartkonform zu MPI Version 2.0
Unterstutzt fast alle Interconnects
Wird von TU Chemnitz und ZIH mitentwickelt
Ist durch großes Konsortium zukunftssicher
Kann deshalb ohne Bedenken benutzt werden
75/86
Debugging
Debugging
(Fast) nur kommerziell verfugbar
Alinea DDTTotalview
“Paralleles Debugging ist eine Wissenschaft fur sich”
76/86
Wissenschaftliche Anwendungen
wissenschaftliche Anwedungen
GAMESS (http://www.msg.ameslab.gov/GAMESS/GAMESS.html)
GROMACS (http://www.gromacs.org/)
OpenFOAM (http://www.opencfd.co.uk/openfoam/)
POP (http://climate.lanl.gov/Models/POP/)
POV-Ray (http://www.povray.org/)
POY (http://research.amnh.org/scicomp/projects/poy.php)
RAxML(http://icwww.epfl.ch/~stamatak/index-Dateien/Page443.htm)
WPP (https://computation.llnl.gov/casc/serpentine/)
... und viele mehr
77/86
Optimierung
78/86
Optimierung / Analyse
Profiling
gprof
Fur jeden MPI Prozess ein OutputZahlt Funktionsaufrufe und darin verbliebene Zeit
Tracing
Vampirtrace
Standalone oder im Open MPIFuhrt Aktionen aller Prozesse zu einem Ergebniss zusammenBraucht Anzeigeprogramm um Ergebnisse zu Visualisieren (Vampir)Lizenz: GPLMittlerweile der Standard fur Tracing paralleler AnwendungenWird am ZIH entwickeltUnterstutzt PAPI Counter
Scalasca
Intel Thread Analyser
79/86
Optimierung/ Vampir I
80/86
Optimierung / Vampir II
81/86
Analyse / Benchmarking
BenchIT Performance Meassurement for Scientific Applications. AlsOpenSource verfugbar unter http://www.benchit.org/.
82/86
Literatur I
[DAAndyG08] Andy GeorgiDiplomarbeit: Untersuchung ausgewahlter Netzwerk-TechnologienTU Dresden / ZIH – 2008
[TaschInf] Uwe Schneider, Dieter WernerTaschenbuch der InformatikFachbuchverlag Leipzig – ISBN 3-446-21753-3
[BlueGen] Blue Gene Websitehttp://domino.research.ibm.com/comm/research_projects.nsf/
pages/bluegene.index.html
83/86
Literatur II
[THoeffIBR08] T. Hoefler and T. Schneider and A. LumsdaineMultistage Switches are not Crossbars: Effects of Static Routing inHigh-Performance NetworksProceedings of the 2008 IEEE International Conference on ClusterComputinghttp://www.unixer.de/~htor/publications/ – ISBN
978-1-4244-2640
[ZIHPubl] Diplomarbeiten, PhD Thesis, Studienarbeiten am ZIHhttp://tinyurl.com/c3zts8
[Myri10GE] http://myricom.com/scs/performance/MX-10G/
[MellnxIBPerf] http://mellanox.com/content/pages.php?pg=performance_infiniband
84/86
Literatur III
[CC08] Cluster Challenge 08: Optimizing Cluster Configuration andApplications to Maximize Power EfficiencyJ. Muller, T. Schneider, J. Domke, R. Geyer, M. Hasing, T. Hoefler, St.Hohlig, G. Juckeland, A. Lumsdaine, M. S. Muller, W. E. NagelIn Linux Cluster Institute Conference, 2009
[HennPattQA4] John L. Hennessy, David A. PattersonComputer Architecture, Fourth Edition: A Quantitative ApproachMorgan Kaufmann 2006 – ISBN 978-0123704900
[QsNetIIPerf] http://tinyurl.com/cnja7rQsNetII Performance Results
85/86
Literatur IV
[THoeffIC09] T. Hoefler and T. Schneider and A. LumsdaineA Power-Aware, Application-Based, Performance Study Of ModernCommodity Cluster Interconnection NetworksProceedings of the 23rd IEEE International Parallel & DistributedProcessing Symposium (IPDPS), CAC Workshophttp://www.unixer.de/publications//?pub=87
86/86