May 17 – 20, 2022
Europe/Vienna timezone

Dr. Claudia Blaas-Schenner

This course is part of PRACE Advanced HPC Workshop and will be delivered as an ONLINE EVENT for remote participation


On clusters and distributed memory architectures, parallel programming with the Message Passing Interface (MPI) is the dominating programming model. This 4 half-days course teaches parallel programming with MPI starting from a beginners level. Hands-on sessions (in C, Fortran, and Python (NEW)) will allow users to immediately test and understand the basic constructs of the Message Passing Interface (MPI).

Content Levels: Beginners = 8:00h (50%) + Intermediate = 6:00h (37%) + Advanced = 2:00h (13%)

This course is a PRACE training event. It is organized by the VSC Research Center, TU Wien, in cooperation with the High-Performance Computing-Center Stuttgart (HLRS).

Agenda & Content

1st day – 17 May 2022

08:15   Join online
08:30       Welcome (talk)
08:35       MPI overview (talk+demo)
10:00   Breakout-Rooms - meet your exercise group
10:15       Process model and language bindings (talk+demo+practical)
11:30   Break
11:40       Messages and point-to-point communication (talk+practical)
13:00   End of first day

2nd day – 18 May 2022

08:15   Join online
08:30       Ping pong benchmark - solution and results (talk+discussion)
08:40       Nonblocking communication (talk+demo+practical)
10:00   Break
10:15       Collective communication (talk+demo+practical)
11:30   Break
11:45       Optimizing MPI communication - a real world example (talk+discussion)
12:00       Short Tour: other MPI topics (talk)
12:30       Fortran and MPI - only for Fortran participants (talk)
13:00   End of second day

3rd day – 19 May 2022

08:15   Join online
08:30       Groups & Communicators (talk+practical)
09:30   Break
09:45       Virtual topologies (talk+practical)
11:30   Break
11:45       Derived datatypes (talk+demo+practical)
13:00   End of third day

4th day – 20 May 2022

08:15   Join online
08:30       One-sided Communication (talk+practical)
10:00   Break
10:15       Shared Memory One-sided Communication (talk+practical)
11:30   Break
11:45       Short Tour: MPI I/O (talk)
12:15       Best practice, Summary, Q&A (talk+discussion)
13:00   End of fourth day (course)

VSC Research Center, TU Wien

Course format:

This course will be delivered as a LIVE ONLINE COURSE (using Zoom) for remote participation.


For the hands-on sessions you should know how to work on the Unix/Linux command line and be able to progam in either C/C++ or Fortran or Python (NEW, the exercises will also be available in Python+mpi4py+numpy.
Hands-on labs: For doing the hands-on labs all you need is a C/C++ or Fortran compiler, or Python+mpi4py+numpy, and a recent MPI library. Participants can choose between using their own laptops or any system they have access to that provides these, it's even possible to do the exercises in Google Colab. Alternatively, participants can ask for a training user account at the VSC for the duration of the course.
Accepted participants will be contacted a few days before the course and asked to do a short PRE-ASSIGNMENT that has to be completed before the course starts.
Language: English


Dr. Claudia Blaas-Schenner (VSC Research Center, TU Wien),
David Fischak (tutor; VSC Research Center, TU Wien)
Prices and Eligibility: This course is a PRACE Training Center (PTC) event. Therefore, the course is open and free of charge for people from academia and industry from the Member States (MS) of the European Union (EU) and Associated/Other Countries to the Horizon 2020 programme.
Registration: Registration form – Please register with your official e-mail address to prove your affiliation
Registration period is from 25 February 2022 to 3 May 2022, and follows the "first come – first served" principle. For the online course we can take a maximum of 40 persons. Additional registrations will be added to a waiting list.
Further webpages: This course is also announced by the VSC Research Center, TU Wien and HLRS.