MPI history and availability

At a supercomputing conference in 1992 a committee was formed to define a message-passing standard. MPI (Message Passing Interface) was worked out at meetings. MPI 1 follows from 1993-1995 meetings; MPI 2 from a 1997 forum.

The MPI homepage is maintained at Argonne National Laboratory. Standards, archives, documentation and links to implementations are available.

User programs are compiled as usual (e.g., with gcc or g++ under Linux on the VDIL beowulf cluster) and then linked with the appropriate MPI libraries. Good code containing MPI calls should run without change under all implementations. At the user level implementations differ only in the way the user initializes processes and communications.

A helpful book for learning to use MPI:
   Using MPI: Portable Parallel Programming with the Message-Passing Interface
   by William Gropp, Ewing Lusk and Anthony Skjellum, The MIT Press, Cambridge MA, 1999.
   UMD Library QA 76.642 .G76 1999
   The book contains general discussion of MPI and many examples in Fortran, C, and C++.

Message passing is for a set of processes that have local memory and can communicate with other processes by sending and receiving messages. The processes can be running on the same or different CPUs. The computers and operating systems need not all be the same (e.g., a mix of Linux, HP, Sun, IBM, SGI is possible).


go back to MPI on beowulf at VDIL index.