Programming Clusters with Message Passing Interface (MPI)

Description: MPI is a standardized and portable message-passing interface for parallel computing clusters. The standard defines the syntax and semantics of a core of library routines useful to a wide range of scientific programs in C/C++ and Fortran. MPI's goals are high performance, scalability, and portability. It is the dominant parallel programming model used in high-performance-computing today.

In this two-day session, through lectures interspersed with hands-on labs, the students will learn the basics of MPI programming. Examples and exercises will be based on parallelization of common computing problems.

Instructor: Jemmy Hu, SHARCNET, University of Waterloo, Fei Mao, SHARCNET, University of Guelph.

Prerequisites: Basic C/C++ and/or Fortran knowledge; experience editing and compiling code in a Linux environment.

Course materials: Course materials can be downloaded here.