Navigation and service

Training course "Introduction to parallel programming with MPI and OpenMP"

(Course no. 9220201 in the training programme 2020 of Forschungszentrum Jülich)

03 Feb 2020 09:00
07 Feb 2020 16:30
Jülich Supercomputing Centre, Ausbildungsraum 1, building 16.3, room 213a
Target audience:
Supercomputer users

An introduction to the parallel programming of supercomputers is given. The focus is on the usage of the Message Passing Interface (MPI), the most often used programming model for systems with distributed memory. Furthermore, OpenMP will be presented, which is often used on shared-memory architectures.

The first four days of the course consist of lectures and short exercises. A fifth day is devoted to demonstrating the use of MPI and OpenMP in a larger context. To this end, starting from a simple but representative serial algorithm, a parallel version will be designed and implemented using the techniques presented in the course.


Day 1:

  • Introduction
  • MPI Basics
  • MPI Point-to-point communication

Day 2:

  • MPI Collective communication
  • MPI Data types

Day 3:

  • MPI I/O
  • MPI Communicators
  • MPI Thread compliance

Day 4:

  • OpenMP Parallel construct
  • OpenMP Data sharing
  • OpenMP Loop work sharing
  • OpenMP Task work sharing

Day 5:

  • Tutorial from serial to parallel program
Knowledge of either C, C++ or Fortran, basic knowledge of UNIX/Linux and a UNIX standard editor (e.g. vi, emacs)
This course is given in English
5 days
3-7 February 2020, 9:00-16:30
Jülich Supercomputing Centre, Ausbildungsraum 1, building 16.3, room 213a
Number of participants:
minimum 5
Benedikt Steinbusch, Thomas Breuer, JSC
Photo Benedikt Steinbusch
Benedikt Steinbusch
Phone: +49 2461 61-2523
Course material:
Slides, exercises, solutions