Combining MPI with OpenMP: A Double-Layer Master-Slave Model


Recent years have seen the growing availability of multi-node clusters with multi-core nodes. For such clusters a "hybrid approach" suggests itself. This approach combines message passing using MPI with multithreading using OpenMP to achieve optimal utilization of these resources. In this half-day course we discuss basic principles and pitfalls of MPI/OpenMP combination, and illustrate them with the example of a recently developed – and freely available – library. The latter implements a “double-layer master-slave” parallel model and requires a minimum of user programming.

Instructor: Gang Liu, HPCVL, Queen's Univeristy.

Prerequisites: Basic Fortran or C programming, some familiarity with MPI and OpenMP.