This workshop builds on basic MPI courses which cover sending and receiving in Cartesian topolgies. These notes cover more advanced topics such as Topologies, IO and user created MPI types, as a 1-day workshop (first run December 2017) with talks and example code. Examples are provided in both C and Fortran. An MPI-aware compiler is required, but the examples are not demanding and can be run on 2 (or more) cores of a laptop or desktop machine.
Copies of Slides:
01_Recap - A recap of normal MPI
02_Case Study - A introduction to the case study code used here
03_MPI Types - User defined MPI types
04_MPI IO - MPI IO for parallel input and output
05_MPI One Sided - Direct access to other processors memory without messages
Recordings of Talks:
Notes and Other Useful Content:
The notes cover everything in the slides in a little more detail, and also add some more material.
Example Code and Exercises:
A copy of the example code is available on the WarwickRSE Github page. The repository MPI_Worked_examples has copies of working versions of all the code. The MPI_Tutorial repository has versions of the code with missing parts and signatures to practise using the new techniques.