12-13 September 2017
University of Cambridge
Europe/London timezone

ARCHER, the UK's national supercomputing service, offers training in software development and high-performance computing to scientists and researchers across the UK. As part of our training service, and in conjunction with INTERTWinE, we will be running a 2 day ‘Advanced MPI’ training session.


This course is aimed at programmers seeking to deepen their understanding of MPI and explore some of its more recent and advanced features. We cover topics including communicator management, non-blocking and neighbourhood collectives, MPI-IO, single-sided MPI and the new MPI memory model. We also look at performance aspects such as which MPI routines to use for scalability, overlapping communication and calculation and MPI internal implementation issues.  Timetable will be available nearer the course date.


This course is free to all academics.

Intended learning outcomes

  • Understanding of when and how to use MPI datatypes
  • Understanding of how to achieve high performance with MPI I/O
  • Familiarity with neighbourhood collective operations in MPI
  • Knowledge of MPI memory models for RMA operations
  • Familiarity with MPI RMA operations and single-sided communication
  • Understanding of the challenges of hybrid MPI+X programming
  • Understanding of best practice for MPI+OpenMP programming
  • Familiarity with proposal to add flexible endpoints in MPI



Attendees should be familiar with MPI programming in C, C++ or Fortran, e.g. have attended the ARCHER MPI course.

Pre-course setup

All attendees should bring their own wireless-enabled laptop. Practical exercises will be done using a guest account on ARCHER. You will need an ssh client such as terminal on a Mac or Linux machine, or putty or MobaXterm on Windows. The course tutor will be able to assist with settings to connect on the day. You should also have a web browser, a pdf reader and a simple text editor.


Draft Timetable 

(May be subject to change)

Day 1

09:00 - 09:30  Welcome and Registration
09:30 - 10:30  MPI Datatypes
10:30 - 11:00  MPI Neighbourhood collectives
11:00 - 11:30  Coffee
11:30 - 12:30  MPI I/O
12:30 - 13:30  Lunch
13:30 - 14:15  MPI RMA and single-sided communication
14:15 - 15:00  MPI RMA practical
15:00 - 15:30  Coffee
15:30 - 16:15  MPI RMA and single-sided communication
16:15 - 17:00  MPI RMA practical

Day 2

09:30 - 10:30  MPI Hybrid programming
10:30 - 11:00  MPI Endpoints
11:00 - 11:30  Coffee
11:30 - 12:30  MPI Hybrid practical
12:30 - 13:30  Lunch
13:30 - 15:00  Consultancy session
15:00 - 15:30  Coffee
15:30 - 17:00  Consultancy session

Starts 12 Sep 2017 09:00
Ends 13 Sep 2017 17:00
University of Cambridge
Titan 1
Titan 1, New Museum Site, Cambridge Room Info
This course is part-funded by the PRACE project and is free to all. Please register using the online form. If you have any questions, please consult the course forum page or contact epcc-support@epcc.ed.ac.uk.