MPI One-Sided Communication and MPI-IO

Description: MPI (Message Passing Interface) is the de facto standard for parallel programming, defining how concurrent processes can communicate and hence work together to complete a given task in a shorter time. This course explains a couple of advanced and potentially very useful features of MPI. First of all, we look at one-sided communication, a valuable optimisation in codes where communication is limiting the scaling. We then study parallel I/O using MPI, a technique to use when I/O performance is the limiting factor in the scaling of the code. Each section of the course is supported by practical exercises.

Aimed at: Anyone interested in improving the scaling of parallel codes.

Prerequisites: Attendees must already be familar with the content of the Introduction to MPI course, i.e. with the use of point-to-point and collective communication in MPI and much of the content of the Advanced MPI course, specifically, MPI derived datatypes and MPI groups. Attendees should be able to program in either Fortran or C and be familiar with working in a UNIX environment (i.e., you should be able to connect to a machine remotely, use basic UNIX commands, edit a source file and understand the elementary steps in compiling object files and creating executables).

Duration: 1 day.

After Course Attendees Will: Be able to improve the scaling of MPI codes, where communication or I/O is the bottleneck.

Registration: To register for HECToR courses go to the booking form.