The MPI Message Passing Interface Standard

The diverse message passing interfaces provided on parallel and distributed computing systems have caused difficulty in movement of application software from one system to another and have inhibited the commercial development of tools and libraries for these systems. The Message Passing Interface (MPI) Forum has developed a de facto interface standard which was finalised in Ql of 1994. Major parallel system vendors and software developers were involved in the definition process, and the first implementations of MPI are already appearing. This article presents an overview of the MPI initiative and the standard interface, in particular those aspects which merge demonstrated research with common practice.

[1]  P. Pierce,et al.  The NX/2 operating system , 1988, C3P.

[2]  Heinz Mühlenbein,et al.  Mapping strategies in message-based multiprocessor systems , 1989, Parallel Comput..

[3]  Anthony Skjellum,et al.  A Portable Multicomputer Communication Library atop the Reactive Kernel , 1990, Proceedings of the Fifth Distributed Memory Computing Conference, 1990..

[4]  Dirk Roose,et al.  The Argonne/GMD macros in FORTRAN for portable parallel programming and their implementation on the Intel iPSC/2 , 1990, Parallel Comput..

[5]  Richard J. Enbody,et al.  Performance evaluation of mesh-connected wormhole-routed networks for interprocessor communication in multicomputers , 1990, Proceedings SUPERCOMPUTING '90.

[6]  Dror G. Feitelson Communicators: Object-Based Multiparty Interactions for Parallel Programming , 1991 .

[7]  Predicting the Effect of Mapping on the Communication Performance of Large Multicomputers , 1991, ICPP.

[8]  Anthony Skjellum,et al.  The Zipcode message-passing system , 1992 .

[9]  D. W. Walker,et al.  Standards for message-passing in a distributed memory environment , 1992 .

[10]  Alok N. Choudhary,et al.  Improved parallel I/O via a two-phase run-time access strategy , 1993, CARN.

[11]  Jack J. Dongarra,et al.  Visualization and debugging in a heterogeneous environment , 1993, Computer.

[12]  Jack Dongarra,et al.  Integrated Pvm Framework Supports Heterogeneous Network Computing , 1993 .

[13]  Larry Rudolph,et al.  Designing Efficient, Scalable, and Portable Collective Communication Libraries , 1993, PPSC.

[14]  Alok N. Choudhary,et al.  Design and evaluation of primitives for parallel I/O , 1993, Supercomputing '93. Proceedings.

[15]  Jack Dongarra,et al.  A Proposal for a User-Level, Message-Passing Interface in a Distributed Memory Environment , 1993 .

[16]  Vasanth Bala,et al.  Process Groups: a mechanism for the coordination of and communication among processes in the Venus collective communication library , 1993, [1993] Proceedings Seventh International Parallel Processing Symposium.

[17]  William Gropp,et al.  Chameleon parallel programming tools users manual , 1993 .

[18]  Anthony Skjellum,et al.  Writing libraries in MPI , 1993, Proceedings of Scalable Parallel Libraries Conference.

[19]  Guy L. Steele,et al.  The High Performance Fortran Handbook , 1993 .

[20]  Nathan E. Doss,et al.  MPI++: Issues and Features , 1994 .

[21]  Ewing L. Lusk,et al.  Monitors, Messages, and Clusters: The p4 Parallel Programming System , 1994, Parallel Comput..

[22]  A. Skjellum,et al.  Inter-communicator Extensions to MPI in the MPIX ( MPI eXtension ) Library , 1994 .

[23]  Jehoshua Bruck,et al.  The IBM External User Interface for Scalable Parallel Systems , 1994, Parallel Comput..

[24]  R Calkin,et al.  Portable Programming with the PARMACS Message-Passing Library , 1994, Parallel Comput..

[25]  David Kotz,et al.  Disk-directed I/O for MIMD multiprocessors , 1994, OSDI '94.

[26]  Manfred Morari,et al.  The Design and Evolution of Zipcode , 1994, Parallel Comput..

[27]  M. Winslett,et al.  Server-Directed Collective I/O in Panda , 1995, Proceedings of the IEEE/ACM SC95 Conference.

[28]  Jack Dongarra,et al.  PVM: Parallel virtual machine: a users' guide and tutorial for networked parallel computing , 1995 .

[29]  Rajeev Thakur,et al.  An Extended Two-Phase Method for Accessing Sections of Out-of-Core Arrays , 1996, Sci. Program..

[30]  Interner Bericht Nr,et al.  A Fortran 90 interface to MPI version 1.1 , 1996 .

[31]  William J. Nitzberg Collective parallel I/O , 1996 .