Parallel Programming Workshop: Distributed and shared memory parallelization with MPI and OpenMP
Big seminar room, HLRS (Höchstleistungsrechenzentrum Stuttgart), Universität Stuttgart, Allmandring 30, D-70569 Stuttgart
2014, Monday Oct. 13, 8:30 - Friday Oct. 17, 16:30 (date modified on Jan 17, 2014)
Distributed memory parallelization with the Message Passing Interface MPI (Mon+Tue, for beginners):
On clusters and distributed memory architectures, parallel programming with the Message Passing Interface (MPI) is the dominating programming model. The course gives an full introduction into MPI-1. Further aspects are domain decomposition, load balancing, and debugging. An MPI-2 overview and the MPI-2 one-sided communication is also taught. Hands-on sessions (in C and Fortran) will allow users to immediately test and understand the basic constructs of the Message Passing Interface (MPI).
Shared memory parallelization with OpenMP (Wed, for beginners):
The focus is on shared memory parallelization with OpenMP, the key concept on hyper-threading, dual-core, multi-core, shared memory, and ccNUMA platforms. This course teaches shared memory OpenMP parallelization. Hands-on sessions (in C and Fortran) will allow users to immediately test and understand the directives and other interfaces of OpenMP. Race-condition debugging tools are also presented.
Advanced topics in parallel programming (Thu+Fri):
Topics are MPI-2 parallel file I/O, hybrid mixed model MPI+OpenMP parallelization, MPI-3.0, parallelization of explicit and implicit solvers and of particle based applications, parallel numerics and libraries, and parallelization with PETSc. MPI-3.0 introduced a new shared memory programming interface, which can be combined with MPI message passing and remote memory access on the cluster interconnect. It can be used for direct neighbor accesses similar to OpenMP or for direct halo copies, and enables new hybrid programming models. These models are compared in the hybrid mixed model MPI+OpenMP parallelization session with various hybrid MPI+OpenMP approaches and pure MPI.
Hands-on sessions are included on all days. This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.
see link to detailed program
Online form not yet available
for registration is Sept. 14, 2014.
Members of German universities and public research institutes: none.
Members of universities and public research institutes within Europe or PRACE: none.
Members of other universities and public research institutes: 120 EUR.
Others: 400 EUR.
(includes food and drink at coffee breaks, will be collected on the first day of the course, cash only)
Unix / C or Fortran
PRACE PATC and bwHPC-C5
HLRS is part of the Gauss Centre for Supercomputing (GCS), which is one of the six PRACE Advanced Training Centres (PATCs) that started in Feb. 2012. The mandate for the PATCs is as follows: "The PRACE Advanced Training Centres will serve as European hubs of advanced, world-class training for researchers working in the computational sciences." (see D3.2.3)
This course is a PATC course, see also the PRACE Training Portal and Events. For participants from public research institutions in PRACE countries, the course fee is sponsored through the PRACE PATC program.
Train the Trainer - TtT
In conjunction with this course, a Train the Trainer Program is provided. Whereas this regular course teaches parallel programming, the Train the Trainer Program is an education for future trainers in parallel programming. For further details, see here.
At the first or second evening we schedule a short guided walk through the city followed by a dinner at Stuttgart's first restaurant-brewery, the "Calwer Eck" (Swabian restaurant). On Wednesday, we plan to organize a visit in our 3-D visualization CAVE. At (Tuesday or) Thursday, a visit of the exhibition of contemporary art in the "New States Gallery" is recommended (opened until 8pm). Also fun is a visit of Stuttgart's TV-tower in the evening. It is the first tower build of concrete in the world, and also the first TV tower in the world. (Currently closed for building repairs.) If you arrive already on Sunday morning, you may visit the world class Mercedes Museum. All social events are on a self paying basis, i.e., not part of any course fees. We would be happy if you can join these events.
See HLRS address and travel-info. The next public transport stations are: "Universität, Stuttgart" (S-Bahn station, 15 min on foot) and "Lauchhau, Stuttgart" (Bus station, 4 min on foot to HLRS, bus lines 84, 92, 746, 747, 748, but not 82! from S-Bahn station "Universität, Stuttgart" and bus line 81 from S-Bahn station "Stuttgart-Vaihingen").
Accomodation: see HLRS accomodation-info and additional hotel list. Private Bed&Breakfast is also available (might be cheaper than the hotels), e.g., www.nd-bed-breakfast.de. A DJH youth hostel is also available.
Further links: Online-Stadtplan des Stadtmessungsamtes Stuttgart or www.city-map.de.
If you cannot come to the course, please send an email to the organizer as soon as possible. This would allow us to accept additional participants from the waiting-list. There is no cancelation fee.
NO-SHOW: Registered persons that do not cancel and do not show up without any reasons are blocked for the next year on any of our workshops (because it is too expensive to produce unused copies of the slides for them).
Each participant will get a paper copy of all slides.
The MPI-1 part of the course is based on the MPI course developed by the EPCC Training and Education Centre, Edinburgh Parallel Computing Centre.
If you want, you may also buy copies of the standards MPI-3.0 (Hardcover, 17 Euro) and OpenMP (about 10 Euro).
An older version of this course with most of the material (including the audio information) can also be viewed in the ONLINE Parallel Programming Workshop.