The one-week course focuses on parallel programming with the Message Passing Interface (MPI), OpenMP and CUDA. A general introduction into HPC and its benefits will be presented and the different parallel programming paradigms will be duly explained allowing participants to write parallel applications that can fully exploit modern HPC hardware.

Target audience:

We can accommodate about 10 participants per partner country (Austria, Czechia, Italy, Slovenia) and registration is possible until December 15, 2021, on the SCtrain webpage. This is a training week for selected students (Bc., MSc., Ph.D.) delivered by the SCtrain (Erasmus+) project, i.e., by the VSC Research Center at TU Wien (Austria), IT4Innovations National Supercomputing Center at the VSB – Technical University of Ostrava (Czechia), CINECA Consorzio Interuniversitario (Italy), and the LECAD Laboratory at the University of Ljubljana (Slovenia). In case of free capacity also other participants such as researchers, engineers, data scientists and others will be accepted.


One of the key advantages of using HPC is the possibility to do a parallelisation of the problem. In terms of products analysis, problem parallelisation means efficiently dividing a large problem into multiple smaller ones and analysing each of them separately, thus raising the level of detail and speeding up the necessary calculation times. Participants will be introduced to the three dominating programming models that are employed on today’s modern HPC hardware. On clusters and distributed memory architectures, parallel programming with the Message Passing Interface (MPI) is the dominating programming model, whereas OpenMP can be used on shared memory (i.e., on one CPU or on the CPUs of one node of a cluster) and CUDA helps to exploit the capabilities of GPUs.

Participants should be familiar with programming in either C/C++ or Fortran. Only for the MPI part Python is offered as a third option. Furthermore, they should be able to work on the Linux command line. No specific experience with supercomputing systems is necessary.

Skills to be gained:

  • Be familiar with the components of an HPC cluster
  • Understand the main parallelisation principles
  • Take advantage of shared and distributed memory systems as well as accelerators
  • Write parallel programs using MPI, OpenMP and CUDA
  • Parallelise serial programs by means of MPI, OpenMP and CUDA
  • Combine MPI with OpenMP or MPI with CUDA
  • Fully exploit the capabilities of modern HPC systems

Other information about the course:

The course will take place as an online event, using remote connection to the VSC-3 cluster (all participants will get a temporary training user account).

The course language is English and participation is free of charge for the selected participants.

More info available at:

Or contact us via e-mail:

Direct link to the registration form:

The course is organised by the IT4Innovations National Supercomputing Centre as a part of the SCtrain project which has been funded with support from the European Commission.