Monday, Full Day
Room 205

Title: Using MPI-2: Advanced Features of the Message-Passing Interface

Presenters: William Gropp, Ewing (Rusty) Lusk, and Rob Ross, Argonne National Laboratory; Rajeev Thakur, PRISMedia Networks, Inc.

Level: 20% Introductory | 40% Intermediate | 40% Advanced


This tutorial is about how to use MPI-2, the collection of advanced features that were added to MPI (Message-Passing Interface) by the second MPI Forum. These features include parallel I/O, one-sided communication, dynamic process management, language interoperability, and some miscellaneous features. Implementations of MPI-2 are beginning to appear: a few vendors have complete implementations; other vendors and research groups have implemented subsets of MPI-2, with plans for complete implementations.

This tutorial explains how to use MPI-2 in practice, particularly, how to use MPI-2 in a way that results in high performance. We present each feature of MPI-2 in the form of a series of examples (in C, Fortran, and C++), starting with simple programs and moving on to more complex ones. We also discuss how to combine MPI with OpenMP. We assume that attendees are familiar with the basic message-passing concepts of MPI-1.