Message-passing programming with MPI

Course/Event Essentials

Event/Course Start
Event/Course End
Event/Course Format
Online
Self-paced (asynchronous)

Venue Information

Country: United Kingdom
Venue Details: Click here

Training Content and Scope

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

Other Information

Organiser
Event/Course Description

The world’s largest supercomputers are used almost exclusively to run applications which are parallelised using Message Passing. The course covers all the basic knowledge required to write parallel programs using this programming model, and is directly applicable to almost every parallel computer architecture.

Parallel programming by definition involves co-operation between processors to solve a common task. The programmer has to define the tasks that will be executed by the processors, and also how these tasks are to synchronise and exchange data with one another. In the message-passing model the tasks are separate OS processes that communicate and synchronise by explicitly sending each other messages. All these parallel operations are performed via calls to some message-passing interface that is entirely responsible for interfacing with the physical communication network linking the actual processors together.

This course uses the de facto standard for message passing, the Message Passing Interface (MPI). It covers:

  • point-to-point communication
  • non-blocking operations
  • derived datatypes
  • virtual topologies
  • collective communication
  • general design issues.

This self-service course includes a series of Lecture videos (with closed captions and downloadable PDF slides) which you can work through at your own pace and in your own time.

Hands-on practical programming exercises are included, with the option of working in either C, C++ or Fortran.

Access to ARCHER2 is provided for participants to build and run the exercises.