Distributed memory parallelization with the Message Passing Interface MPI (Mon, 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 introduction into MPI-1. 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 (Tue, 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.
Intermediate and advanced topics in parallel programming (Wed-Fri): Topics are advanced usage of communicators and virtual topologies, one-sided communication, derived datatypes, MPI-2 parallel file I/O, hybrid mixed model MPI+OpenMP parallelization, 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. Further aspects are domain decomposition, load balancing, and debugging.
HLRS, University of Stuttgart Nobelstraße 19 70569 Stuttgart, Germany Room 0.439 / Rühle Saal Location and nearby accommodations
Oct 10, 2022
Oct 14, 2022
Back to list
Unix / C or Fortran (or Python for the MPI part)
Learn more about course curricula and content levels.
Dr. Rolf Rabenseifner and Prof. Dr.-Ing. Rainer Keller.
Please refer to the course overview.
This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves.
All times are local times in the Central European Summer Time zone (Berlin).
See link to detailed program (preliminary program)
Most MPI exercises are (in addition to C and Fortran) also available for Python+mpi4py+numpy.
Besides the content of the training itself, another important aspect of this event is the scientific exchange among the participants. We try to facilitate such communication by
For your safety, we will only allow fully vaccinated or fully recovered or COVID-19 negative tested participants on all days. You must wear a medical face mask or FFP2 mask everywhere on site. If a distance of 1.5 m cannot be guaranteed inside, e.g., if you are working in pairs in exercises, it must be an FFP2 mask. Details can be found on the registration page.
We strongly recommend to choose travel options and hotels with the possibility to cancel (even close to the event) because we might be forced to deliver the course as an online course.
Register via the button at the top of this page.
Monday-Tuesday: This is an HLRS course with the following fees:
Wednesday-Friday: For participants of the above categories, this course is sponsored by the PRACE PATC program, i.e., there are no course fees if you register only for Wednesday-Friday.
For all other participants (Mo-Fri), this course is an HLRS course with the following fees:
Link to the EU and EU-associated (Horizon Europe), and PRACE countries.
Our course fees include coffee breaks (in classroom courses only).
Khatuna Kakhiani phone 0711 685 65796, kakhiani(at)hlrs.de Michael Schlottke-Lakemper phone 0711 685 87223, m.schlottke-lakemper(at)hlrs.de
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.
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.
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.
HLRS is also member of the Baden-Württemberg initiative bwHPC.
This course is also provided within the framework of the bwHPC training program.
https://www.hlrs.de/training/2022/PAR and http://www.hlrs.de/training/2022/TtT
PATC web pages: http://events.prace-ri.eu/event/HLRS-2022-PAR and http://events.prace-ri.eu/event/HLRS-2022-TtT
See the training overview and the Supercomputing Academy pages.
Online by VSC Vienna
Back to list
High-Performance Computing Center Stuttgart
Nobelstraße 19, 70569 Stuttgart, Germany
+49 (0) 711 / 685-87 209
A member of the Gauss Centre for Supercomputing, HLRS is one of three German national centers for high-performance computing.
HLRS is a central unit of the University of Stuttgart.