Intern
Linux - Cluster im Institut für Numerische Mathematik
Ausstattung
- Hardware
- 2 x 2,2 GHz INTEL Xeon CPU mit 512 KB L2 Cache pro CPU (pro Knoten)
- 5 GB DDR RAM (pro Knoten)
- 18,4 GB Cheetan X15 Ultra 160/320-SCSi Festplatte,15.000 U/min (pro Knoten)
- Myrinet 2000 2+2 GBit (pro Link)
- Ethernet Switch
- KVM (Keyboard, Video, Maus) Switch, der ein komfortables Management der Knoten auf der untersten Konsole-Ebene gewährleistet.
- Software
- Linux SUSE 10.0
- MATLAB (V. 2007a)
- FEMLAB (V. 3.3a)
- GM (V.1.6.7) --> low-level Message-Passing System für Myrinet Netzwerke..
- MPICH/GM Umgebung (V. 1.2.6) --> Interface von MPICH für GM
- Intel C/C++ und Fortran Compiler (V. 9.0) --> kompatibel zu den GNU-Compilern, bieten eine herausragende Optimierung.
- Intel Math Kernel Library (V 8.0.1) -->mathematische Bibliothek für Entwickler, bietet Funktionen aus der linearen Algebra
- BLAS
- SparseBLAS
- LAPACK
- Sparse Solver --> PARDISO (Parallel Direct Sparse Solver Interface) und DSS ( Direct Sparse Solver Interface)
- Fast Fourier Transformationen (DFT und FFT) und vektormathematische Funktionen (VML und VSL)
- Intel MKL bietet automatische, auf OpenMP basierende, Parallelisierung (Multithreading) und damit viele Vorteile ohne zusätzliche Arbeit. Multithreading bietet sehr gute Skalierbarkeit für viele Anwendungen.
Nutzung
- Compiler (Variablendefinition für Makefile)
| Compiler | Aufruf | Optimierung | MKL Routinen einbinden |
| Intel C | CC = icc | CFLAGS = -O3 -march=pentium4 | LIBPATH = -L/opt/share/intel/mkl/8.0.1/lib/32 LIB = -lmkl_ia32 -lguide -lpthread |
| Intel Fortran | IF = ifort | FFLAGS = -O3 -axW | LIBPATH = -L/opt/share/intel/mkl/8.0.1/lib/32 LIB = -lmkl_ia32 -lguide -lpthread |
- Matlab (V 2007a)
Matlab 2007a unterschtützt Multithreading. Standardmäßig ist diese Funktionalität deaktiviert. Um Multithreading einzuschalten, sind folgende Schritte notwendig:
>> Wählen Sie File > Preferences > General
>> Aktivieren Sie Multithreading Enable multithreaded computation
>> Akzeptieren Sie die Automatic Option
Performance Test A=rand(7e3,7e3); B=rand(7e3,7e3);b=rand(7e3,1);Matlab-Routinen 1 thread 2 threads A*B 182s 94s lu(A) 77s 48s x=A\b 80s 50s
Wichtig: Der Performance Gewinn erzielt man nur bei der Anwendung von BLAS (z.B. Skalar x Vektor + Skalar, Matrix x Vektor, Matrix x Matrix) und LAPACK Operationen.
Herstellerinfo
Während noch vor einigen Jahren viele Cluster Projekte mit Ethernet als einzigem Kommunikationsnetzwerk durchgeführt wurden, wird heute bei fast allen größeren Compute Cluster Projekten Myrinet als Hochgeschwindigkeits-Netzwerk eingesetzt. Myrinet zeichnet sich durch extrem geringe Latenzzeiten, hohe Transferraten und eine hervorragende Skalierbarkeit aus. Mit nur einer Switch Backplane unterstützt Myrinet 128 Knoten mit 2 + 2 GBit/s pro Link. Ab 128 Knoten werden dann mehrere Backplanes zu einer Hochgeschwindigkeits-Umgebung zusammengefasst.
Der DELTA Xeon Cluster ist für alle rechenintensiven Anwendungen, wie z. B. Simulation, Strömungsforschung, Gen-Forschung und Hochenergiephysik, hervorragend geeignet. Die einzelnen Knoten verfügen über eine extrem hohe Floatingpoint Rechenleistung und eine Memory-Bandbreite, wie sie bislang nur bei High End UNIX Workstations verfügbar war.
Im Linux Cluster Bereich gibt es ein sehr umfangreiches Software-Angebot, das von Universitäten und Großforschungseinrichtungen überwiegend kostenlos zur Verfügung gestellt wird. Cluster Systeme mit Myrinet Interconnect werden in der Grundversion mit der GM Software von Myricom ausgeliefert. Die genannten Software Produkte enthalten komfortable Implementationen der standardisierten MPI (MPICH) / PVM Software Schnittstelle, so dass sich der Cluster den Benutzern gegenüber als ein einziger Parallelrechner darstellt.
