MPI: MESSAGE-PASSING INTERFACE _________________________________________________________________ What is MPI? MPI is the new standard for multicomputer and cluster message passing introduced by the Message-Passing Interface Forum in April 1994. The goal of MPI is to develop a widely used standard for writing message-passing programs. Here's a list of recent changes to this page. * MPI Resources Available in the Web * MPI Related Books, Presentations, and Tutorials * Other MPI Related Resources * Other Web Sites with MPI Information * Freely Available MPI Implementations Click here if you have something you would like added to this page or would like to make comments (or complaints) about this page. If your browser does not support forms, please send mail to doss@ERC.MsState.Edu (Nathan Doss). _________________________________________________________________ MPI Resources Available in the Web * MPI Standard Document The complete MPI document is available on-line. It is also available as postscript. * MPI 2 Argonne National Lab maintains web page detailing the MPI 2 effort. Oak Ridge National Lab also maintains a web page on the MPI 2 effort. * Errata to the MPI Standard Document The errata is maintained by Steve Otto (Oregon Graduate Institute) and is available as postscript. * Test Suites Argonne National Lab maintains a page listing MPI test suites. They also maintain an ftp repository for these MPI test suites. * Frequently Asked Questions A list of Frequently Asked Questions about MPI which contains a superset of the information found here. * Bibliography David Walker maintains a list of papers related to MPI. * Newsgroup The MPI newsgroup, comp.parallel.mpi, was passed in the Summer of 1994 by a vote of 506 to 14. * Implementors Workshop Rusty Lusk and Bill Gropp hosted a workshop for MPI Implementors at Argonne National Laboratory, September 7-9, 1994. A report of that meeting was given at the Second Scalable Libraries Conference in October. They have also setting up a mailing list for implementors ( You can subscribe to this list by sending a message to with "subscribe" in the body of the message. * Parallel I/O Working together, IBM Research and NASA Ames have drafted MPI-IO, a proposal to address the portable parallel I/O problem. To participate in the MPI-IO discussion, you can join the mailing list by sending a message to "" with an empty Subject, and the single line body, "subscribe mpi-io YOUR-REAL-NAME" Your email address will be automatically taken from the message. * Logos You can get a black and white TIFF or GIF version of the MPI logo found at the top of this page. Argonne National lab has a large MPI gif as well as a small version they use as an icon. The LAM implementors also have an MPI icon. Australian National University has a pretty 3D gif. _________________________________________________________________ MPI Related Books, Presentations, and Tutorials * Using MPI Bill Gropp, Rusty Lusk, and Anthony Skjellum have written an application oriented book about MPI entitled Using MPI (ISBN 0-262-57104-8; Published by MIT Press). They've made the example programs from the book available by anonymous ftp. * Designing and Building Parallel Programs Ian Foster's online book includes a chapter on MPI. It provides a succinct and readable introduction to an MPI subset. (ISBN 0-201-57594-9; Published by Addison-Wesley) * MPI: From Fundamentals To Applications David Walker provides a tutorial which is available in a half day version as postscript. A An Introduction to the MPI Standard An introductory paper by Jack Dongarra, Steve Otto, Marc Snir, and David Walker. * A talk on MPI Slides from a talk given by Steve Otto. * Quick Tutorials The Ohio Supercomputing Center LAM group has begun a series of quick tutorials. Currently, they provide two tutorials and promise more. * MPI: It's Easy to Get Started * MPI: Everyday Datatypes They also provide a top 10 list of reasons to prefer MPI over PVM. * Bill Saphir Bill Saphir has made several nice presentations available. * Sorting Out Communication Libraries: A Comparison of NX, CMMD, PVM and MPI, Presented as a tutorial at Supercomputing 94, November 8, 1994 * Porting Parallel Applications from NX to MPI,July 26, 1994 * Performance Comparison of MPL, MPI and PVMe on the SP2 * Devil's Advocate: Reasons Not to Use PVM, PVM User Group Meeting, May 20 1994 * The LAM companion to `Using MPI' This tutorial is based on the book Using MPI, Portable Parallel Programming with the Message-Passing Interface, but is largely self-contained. It should not be seen as a replacement for the book -- rather, it is a companion text to the book for LAM users. The LaTex file for this tutoriial is also available. * Introduction to MPI The Albuquerque Resource Center at the University of New Mexico has provided a short introduction to MPI. * A User's Guide to MPI Peter Pacheco from the University of San Francisco has made available a draft version of an MPI tutorial geared for inexperienced users. It is based on parts of a book he is writing called Programming Parallel Processors Using MPI. The book will be published by Morgan Kaufman and should be available Fall 1995. * Technology Watch Report on MPI Edinburgh Parallel Computing Centre has made a Technology Watch Report available about MPI which contains history, overview, and current status information about MPI. _________________________________________________________________ Other MPI Related Resources * DQS (Distributed Queueing System) DQS now supports the launch of MPICH (Argonne/Miss State Version of MPI) jobs and is available by anonymous ftp. * MPIRUN Sam Fineberg is working on support for running multidisciplinary codes using MPI which he calls MPIRUN. * You can retrieve the MPIRUN software. * How to use MPIRUN on the NAS Parallel Systems * Multidisciplinary/Multizonal applications using MPIRUN * Interprocessor Collective Communication (iCC) The Interprocessor Collective Communication (iCC) research project started as a research project into techniques required to develop high performance implementations of the MPI collective communication calls. * PETSc Scientific Computing Libraries PETSc stands for "Portable Extensible Tools for Scientific computing." It is a library of routines for both uni- and parallel-processor computing. _________________________________________________________________ Other Web Sites with MPI Information * Netlib Netlib has a fairly large repository of MPI information. It contains such items as the original MPI1 proposal, minutes from several of the MPI Forum meetings, as well as the mail archives of the MPI discussion mail lists. * Argonne National Laboratory The Argonne National Laboratory MPI page is the home site of the MPICH implementation and holds the HTML version of the MPI standard document. It also has pointers to many other sources of MPI-related information. * Ohio Supercomputing Center The Ohio Supercomputing Center page is the home location for information about LAM, one of the public domain MPI implementations. They have also started a series of quick tutorials. * Australian National University The Australian National University site contains information on the implementation of MPI on the Fujitsu AP1000 multicomputer located at the Australian National University as well as various links to other MPI information. * Oak Ridge National Laboratory Oak Ridge maintains a well-organized resource center for MPI-related materials. _________________________________________________________________ Freely Available MPI Implementations There are several freely available MPI implementations: * MPICH The Argonne National Lab / Mississippi State University implementation. * LAM The LAM MPI implementation comes from the Ohio Supercomputing Center. * Chimp The Chimp implemenation of MPI was developed at the Edinburgh Parallel Computing Centre. * Unify The Unify subset implemenation of MPI was developed at Mississippi State University. It runs on top of PVM and provides the programmer with a dual-API; single programs can contain both MPI and PVM code. _________________________________________________________________ [LINK] ERC Home Page. _________________________________________________________________ Nathan Doss Access statistics for MPI web pages this month.