Vortragsfolien

Transcrição

Vortragsfolien
Zentrum für Informationsdienste und Hochleistungsrechnen
HPC in Germany:
Challenges and Next Steps
Zellescher Weg 12
Tel. +49 351 - 463 - 35450
Aachen, 22. April 2008
Wolfgang E. Nagel
Contents
Dresden and High Performance Computing (HPC)
HPC Trends
Future High Performance Computing in Germany:
Some structural remarks
Center for Information Services and HPC (ZIH)
Central Scientific Unit at TU Dresden
Competence Center for „Parallel Computing and Software Tools“
Strong commitment to support real users
Development of algorithms and methods: Cooperation with users from all departments
Providing infrastructure and qualified service for TU Dresden and Saxony
Research topics
– Architecture and performance analysis of High Performance Computers
– Programming methods and techniques for HPC systems
– Grid Computing
– Software tools to support programming and optimization
– Modeling algorithms of biological processes
– Mathematical models, algorithms, and efficient implementations
Role of mediator between vendors, developers, and users
Pick up and preparation of new concepts, methods, and techniques
Teaching and Education
Infrastructure at TU Dresden (Saxony)
HPC-Komponente
PC-Farm
Hauptspeicher 6,5 TB
8 GB/s
4 GB/s
4 GB/s
HPC-SAN
PC-SAN
Festplattenkapazität:
68 TB
Festplattenkapazität:
68 TB
1,8 GB/s
PetaByteBandarchiv
Kapazität:
1 PB
Continents / Systems
others
500
Asia
400
Europe
300
200
Americas
100
2007
2006
2005
2004
2003
2002
2001
2000
1999
1998
1997
1996
1995
1994
1993
0
30th List: The TOP10
Rmax
Manufacturer
Computer
[TF/s]
Installation Site
Country
Year
#Proc
1
IBM
eServer Blue Gene
Solution
478,20
DOE/NNSA/LLNL
USA
2007
212992
2
IBM
Blue Gene/P
Solution
167,30
Forschungszentrum Juelich (FZJ)
Germany
2007
65536
SGI
SGI Altix ICE 8200,
Xeon quad core
3.0 GHz
126,90
SGI/New Mexico Computing
Applications Center (NMCAC)
USA
2007
14336
HewlettPackard
Cluster Platform
3000 BL460c,
Xeon 53xx 3GHz,
Infiniband
117,90
Computational Research
Laboratories, TATA SONS
India
2007
14240
HewlettPackard
Cluster Platform
3000 BL460c,
Xeon 53xx
2.66GHz,
Infiniband
102,80
Government Agency
Sweden
2007
13728
6
Cray Inc.
Sandia/ Cray Red
Storm, Opteron 2.4
GHz dual core
102,20
NNSA/Sandia National
Laboratories
USA
2007
26569
7
Cray Inc.
Cray XT4/XT3
101,70
Oak Ridge National Laboratory
USA
2006
23016
8
IBM
eServer Blue Gene
Solution
91,29
IBM Thomas J. Watson Research
Center
USA
2005
40960
9
Cray Inc.
Cray XT4, 2.6 GHz
85,37
NERSC/LBNL
USA
2007
19320
10
IBM
eServer Blue Gene
Solution
82,16
Stony Brook/BNL, New York
Center for Computational Sciences
USA
2007
36864
3
4
5
Performance Development
10 Pflop/s
6.966 PF/s
Sum
1 Pflop/s
478 TF/s
100 Tflop/s
IBM
BlueGene/L
10 Tflop/s
1 Tflop/s
5.93 TF/s
Earth Simulator
#500
IBM ASCI White
Intel ASCI Red
59.7 GF/s
LLNL
Sandia
Fujitsu
'NWT' NAL
10 Gflop/s
1 Gflop/s
NEC
1.167 TF/s
100 Gflop/s
0.4 GF/s
2007
2006
2005
2004
2003
2002
2001
2000
1999
1998
1997
1996
1995
1994
100 Mflop/s
1993
#1
Performance Projection
Sum
N=1
1 Eflop/s
100 Pflop/s
10 Pflop/s
1 Pflop/s
N=500
100 Tflop/s
10 Tflop/s
1 Tflop/s
6-8 years
100 Gflop/s
10 Gflop/s
1 Gflop/s
8-10 years
2015
2013
2011
2009
2007
2005
2003
2001
1999
1997
1995
1993
100 Mflop/s
John Shalf (NERSC, LBNL) at ISC2007
Jun 07
Dez 06
Jun 06
Dez 05
Jun 05
Dez 04
Jun 04
Dez 03
Jun 03
Dez 02
Jun 02
Dez 01
Jun 01
Dez 00
Jun 00
Dez 99
Jun 99
Dez 98
Jun 98
Dez 97
Jun 97
Dez 96
Jun 96
Dez 95
Jun 95
Dez 94
Jun 94
Dez 93
Jun 93
Processors
Number of Cores per System is increasing rapidly
Total # of Processors in Top15
400000
350000
300000
250000
200000
150000
100000
50000
0
AMD Quadcore Opteron (Barcelona)
–
nativer Quadcore
–
pro Core:
•
64 KiB L1 I-Cache
•
64 KiB L1 D-Cache
•
512 KiB L2 Cache
–
2 MiB shared L3 Cache
–
integrierter Dual-Channel DDR2
Controller
•
registered DDR2-667
–
3 Hypertransport Links
•
HT 1.0 (Sockel F)
•
Opteron 23**: 2P-Systeme
•
Opteron 83**: 4P-/8P-Systeme
–
2 Powerplanes
4 GB/s
4 GB/s
4 GB/s
4 GB/s
4 GB/s
4 GB/s
10,67 GB/s
Northbridge Powerplane
Core Powerplane
Opteron 23** / 83**
Intel Quadcores
Xeon 53** (Clovertown)
–
MCM aus 2 Dualcores
•
teilen sich FSB
–
pro Core
•
32 KiB L1 I-Cache
•
32 KiB L1 D-Cache
–
2x 4MiB L2 Cache
–
für 2P-Systeme
Intel Quadcore Xeon (Clovertown, LGA771)
DIE 0
DIE 1
Core 0
Core 1
Core 2
Core 3
32 KiB 32 KiB 32 KiB 32 KiB
L1 Inst L1 Data L1 Inst L1 Data
32 KiB 32 KiB 32 KiB 32 KiB
L1 Inst L1 Data L1 Inst L1 Data
4 MiB shared L2 Cache
4 MiB shared L2 Cache
FSB
10,7 GB/s
(FSB 1333)
FSB
Xeon MP 73** (Tigerton)
–
für 4P-Systeme
Core2 Quad Q6*** (Kentsfield)
–
nur 1P-Systeme
Vergleich integrierter und externer Speichercontroller
Sun T5120 – Eight Cores x Eight Threads (D. an Mey)
1 x UltraSPARC T2 (Niagara 2) @ 1.4 GHz
Memory
Memory
Memory
Memory
4 FB DRAM memory controllers on chip
0.5 MB L2 0.5 MB L2 0.5MB L2 0.5MB L2 0.5 MB L2 0.5 MB L2 0.5 MB L2 0.5 MB L2
Internal Crossbar
core
core
core
core
core
core
core
8 KB
L1
8 KB
L1
8 KB
L1
8 KB
L1
8 KB
L1
8 KB
L1
8 KB
L1
1.4 GHz
core 8 threads
per core
8 KB 1 FPU per
L1 core
Summary of HPC Trends
The translation of Moore’s law in a performance trend was not a given fact,
but lots of technology break troughs' were required
Responsibilities within a CPU went the software stack upwards
– Logic level (from 8 Bit to 64 Bit)
– Branch prediction, out-of-order execution …
– Software pipelining, cache usage …
– Parallelization
The number of Cores in HPC systems is increasing rapidly
Memory is still a critical issue
Is is more and more important to have the right software to exploit the
power of modern parallel systems
Summary of HPC Trends: What does it mean?
We will see Chips with more cores than expected!
We are faced with expansion of “HPC Community” by factor of thousands
HPC in the order of a “couple of hundred cores”
– We need easier-to-use software environments to improve productivity
• More automatism
• Even better compilers
• Improved debuggers
• Better performance analysis tools
– We need much larger number of experienced programmers which are
used to program for Multi-Core systems
HPC in the order of “More than 10.000”
– We need scalability
– We need extended algorithms and methods
– We need even more sophisticated tools
Performance Analysis Environment
Performance optimization remains one of the key issues in parallel
programming
Strong need for performance analysis, analysis process still not easy
Profilers do not give detailed insight into timing behavior of applications
Detailed online analysis pretty much impossible because of intrusion and data
amount
Tracing is an option to capture the dynamic behavior of parallel applications
Performance analysis done on a post mortem basis
Performance Analysis
⇒Software-Tool: „Vampir“
Performance visualization and analysis tool
Enables detailed understanding of dynamic process changes on massively
parallel systems
Development started more then 15 years ago at Research Centre Jülich
Since 1997, Vampir is developed at TU Dresden
(first: very successful collaboration with Pallas GmbH,
from 2003-2005: Intel Software & Solutions Group,
since January 2006: GWT-TUD / ZIH)
Vampir pretty much accepted in the field
Vampir for Windows (Cluster Edition)
Goal: Make Vampir accessible to the
Windows world
Vampir is currently available in two flavors
for UNIX:
VampirClassic (legacy, all in one,
single threaded, Unix OpenMotif
based)
VampirServer (parallelized (MPI)
client/server program approach)
Vampir Classic
All in one, single threaded Motif app.
Vampir Server
Parallelized
Sockets
service engine
Visualization
(Motif)
Approach:
Port modern parallel VampirServer
services to Windows (DLL)
Add native Windows GUI to the
harnessed VampirServer services
Vampir Windows Cluster Ed.
Threaded
service DLL
API
Windows
GUI
Requirements for Success
Medium-scale HPC systems
– Software
– Software
– Software
Large-scale HPC systems
–Software
–Software
–Software
All HPC-Systems
– Solid development, commitment, vision
– Good ideas
Zentrum für Informationsdienste und Hochleistungsrechnen
High Performance Computing in Deutschland
Argumente zur Gründung einer
strategischen Allianz
Zellescher Weg 12
Tel. +49 351 - 463 - 35450
Wolfgang E. Nagel
Abstimmung unter den HPC-Zentren
Deutschland verfügt über drei Zentren, die als Standorte für ein System der
obersten Leistungsklasse in Frage kommen.
Die einzelnen Zentren (auch auf Ebene 2) konzentrieren sich jeweils auf
unterschiedliche Aspekte des wissenschaftlichen Hoch- und
Höchstleistungsrechnens (HPC).
Bei der Abstimmung muss es nicht nur um technische Aspekte des HPC
gehen, sondern auch darum, die Kontinuität der Unterstützung für die
verschiedenen Benutzergruppen sicherzustellen.
Außerdem muss kontinuierlich an der Erschließung neuer Anwendergruppen
gearbeitet werden.
Die Abstimmung darf nicht nur unter den drei großen Zentren erfolgen; die
Zentren auf Ebene 2 müssen dabei ebenfalls berücksichtigt werden.
Die Abstimmung muss, der Natur der Aufgabe gemäß, langfristig angelegt
sein, d.h. sie muss die Nachhaltigkeit der HPC-Infrastruktur für das
Wissenschaftliche Rechnen in Deutschland gewährleisten.
Organisatorische Reorganisationen werden vorgeschlagen
National HPC Pyramid
European
HPC Centres
National
HPC Centres
Topical HPC Centres,
Centres with regional
tasks
3
~ 10
Garching, Jülich, Stuttgart
Aachen, Berlin,
DKRZ, Dresden,
DWD, Karlsruhe,
Hannover, MPG/RZG,
Paderborn
University/Institute
HPC Server
~ 100
(Courtesy of Dr. N. Attig)
Gauss Centre for Supercomputing
Alliance of the three German SC centres HLRS, JSC, LRZ
Largest supercomputer complex in Europe
Creating one joint scientific governance
German representative in PRACE
Applicant for a European supercomputer centre in FP7
More information: http://www.gauss-centre.de
(Courtesy of Dr. N. Attig)
HPC-Allianz (in Vorbereitung)
05.02.2008: Sitzung zur nationalen HPC-Allianz
Einsetzung einer Arbeitsgruppe: Aufgabenverteilung, Governance Struktur auf Basis
des PRACE MoU,
(Bischof, Hegering (GCS), Heinzel, Nagel, Reinefeld, Wittum)
06.03. (Bonn), 2.04. (Hannover) und 21.04. (Dresden):
Treffen der Arbeitsgruppe
Erstellung eines Konzeptpapiers, dass mit potentiellen HPC-Allianz-Mitgliedern
abgestimmt wird
Aufgaben der HPC-Allianz (u.a. Förderung von Qualifizierung und Ausbildung,
Koordination von Anwendungsunterstützung und Lösungsentwicklung)
–
initiiert und koordiniert Arbeitstagungen, Seminaren und Konferenzen sowie
Schulungs- und Trainingsmaßnahmen
–
stärkt HPC-Gedanken Sichtbarkeit des HPC-Ecosystems
–
koordiniert überregional abgestimmte methodische fachspezifische
Anwendungsunterstützung zur Nutzung der Ressourcen im HPC-Verbund
–
wirkt bei der Definition von HPC-relevanten Studiengängen mit
Es sind noch ein paar Hürden zu nehmen
Begleitforschung und –Entwicklung (Scalability)
Forschungs- und Entwicklungsbedarf besteht also in mehreren Bereichen, so
zum Beispiel bei
der Entwicklung innovativer paralleler Algorithmen und Methoden für
hochparallele Systeme;
der Entwicklung von Programmierwerkzeugen zur Performance-Optimierung
mit der Möglichkeit zur Automatisierung der Leistungsanalyse;
der Evaluierung von Alternativen in der Anwendungsentwicklung mit der
Bereitstellung der zugehörigen Programmierumgebungen;
der Entwicklung von Lösungsansätzen zum effizienten Management und zum
Verständnis von großen Datenmengen;
der Bereitstellung von Werkzeuge für die zentrale Administration, die es
erlauben, den Administrationsaufwand weitgehend unabhängig von der
Systemgröße zu halten (Hilfsmittel zur Software-Installation, Fehleranalyse
sowie Benutzer- und Ressourcenverwaltung).
BMBF hat dem dankenswerterweise Rechnung getragen
(Call im Oktober 2007, nächster Call hoffentlich im Oktober 2008)