Navigation und Service

ONLINE -- Trainingskurs "Advanced Parallel Programming with MPI and OpenMP"

(Kurs-Nr. 782020 im Trainingsprogramm 2020 des Forschungszentrums)

Der Kurs ist ausgebucht.

Dieser Kurs wird als Online-Kurs mit Zoom durchgeführt.

30.11.2020 09:00 Uhr
02.12.2020 17:30 Uhr
Online über Zoom


The focus is on advanced programming with MPI and OpenMP. The course addresses participants who have already some experience with C/C++ or Fortran and MPI and OpenMP, the most popular programming models in high performance computing (HPC).

The course will teach newest methods in MPI-3.0/3.1 and OpenMP-4.5 and 5.0, which were developed for the efficient use of current HPC hardware. Topics with MPI are the group and communicator concept, process topologies, derived data types, the new MPI-3.0 Fortran language binding, one-sided communication and the new MPI-3.0 shared memory programming model within MPI. Topics with OpenMP are the OpenMP-4.0 extensions, as the vectorization directives, thread affinity and OpenMP places. (The GPU programming with OpenMP-4.0 directives is not part of this course.) The course also contains performance and best practice considerations.

Hands-on sessions (in C and Fortran) will allow users to immediately test and understand the taught constructs of the Message Passing Interface (MPI) and the shared memory directives of OpenMP. This course provides scientific training in Computational Science, and in addition, the scientific exchange of the participants among themselves. It is organized by JSC in cooperation with HLRS.


Level der vermittelten Inhaltein Stundenin %
Inhalte für Anfänger:2 h10 %
Mittlere Inhalte:8 h40 %
Fortgeschrittene Inhalte:10,5 h50 %
Inhalte für Fach-Communities:0 h0 %


vorläufige Agenda


Unix / C or Fortran / familiar with the principles of MPI, e.g., to the extent of the introductory course MPI and OpenMP, i.e., at least the MPI process model, blocking point-to-point message passing and collective communication, and the single program concept of parallelizing applications, and for the afternoon session of the last day, to be familiar with OpenMP 3.0.

To be able to do the hands-on exercises of this course, you need a computer with an OpenMP capable C/C++ or Fortran compiler and a corresponding, up-to-date MPI library (in case of Fortran, the mpi_f08 module is required). Please note that the course organizers will not grant you access to an HPC system nor any other compute environment. Therefore, please make sure to have a functioning working environment / access to an HPC cluster prior to the course.

Please tar -xvzf TEST.tar.gz using or unzip using and verify your MPI and OpenMP installation with the tests described in TEST/README.txt within the archive.

The exercise about race-condition detection (at the end of the course) is optional. It would require an installation of a race-condition detection tool, e.g., the Intel Inspector together with the Intel compiler.

Folien und Übungen:

A few days before the course starts, you will receive pdf files from the slides and tar/zip files for installing the exercises on your system.


Supercomputernutzer, die ihre parallelen Anwendungen mit MPI oder OpenMP optimieren wollen und bereits Erfahrungen mit MPI und OpenMP haben


Der Kurs wird auf Englisch gehalten.


3 Tage


30. November - 2. Dezember 2020, 09.00 - 17.30 Uhr


Online über Zoom


maximal 40


Dr. Rolf Rabenseifner, HLRS Stuttgart

Ansprechpartner / Lokaler Organisator:

Photo Thomas Breuer
Thomas Breuer
Telefon: +49 2461 61-96742


Der Kurs ist ausgebucht.



JSC Events - Measures Regarding the Coronavirus Pandemic

For the time being and in view of the rapidly changing situation, the JSC cannot foresee whether courses and events can be held as face-to-face events. Lectures are preferably streamed as video conferences, courses may be postponed or held as online events. Please check regularly on the website to see if and how upcoming events will take place.