Skip to main content

Course/Event Essentials

Event/Course Start
Event/Course End
Event/Course Format
Mixed
Live (synchronous)

Venue Information

Country: Belgium
Venue Details: Click here

Training Content and Scope

Scientific Domain
Technical Domain
Level of Instruction
Intermediate
Advanced
Sector of the Target Audience
Research and Academia
Industry
Public Sector
HPC Profile of Target Audience
Application Developers
Language of Instruction

Other Information

Supporting Project(s)
EuroCC2/CASTIEL2
Event/Course Description

Schedule 

06/05/2025: 9 a.m.-17.00 p.m.
07​​​/05/2025: 9 a.m.-17.00 p.m. 

Content

The Message Passing Interface is the de facto standard for distributed programming in a scientific context. It is implemented in libraries that can be  used from C/C++/Fortran, although wrappers for other languages exist as well.
To write efficient code, a thorough understanding of the semantics of the API is required, this course will emphasize potential performance hazards and pitfalls.  The strengths and weaknesses of various MPI features are discussed. 

In several hands-on sessions, the participant has the opportunity to experiment.

  • Parallel architectures and programming models
  • MPI overview
  • MPI programming model
  • Messages and point-to-point communication
  • Non-blocking communication
  • Derived data types
  • Virtual topologies
  • Collective communication
  • MPI-2 overview
  • MPI-2 one-sided communication
  • Parallel debugging
  • PI-2 parallel file
  • MPI-3 overview

This MPI-course covers the full MPI-3 standard 

Learning objectives 

  • Participants are able to start developing distributed applications using MPI
  • Good understanding of the semantics of MPI features
  • Awareness of potential pitfalls
  • Familiarity with the new features in the MPI-3 standard 
     

Remark 

This course material was developed by dr. Rolf Rabenseifner (HLRS, Stuttgart, Germany).