MPI is a de facto standard specifying the interface and functionality of a message-passing library, a collection of routines for facilitating communication (exchange of data and synchronization of tasks) among the processors in a distributed memory parallel program. The acronym stands for Message-Passing Interface. MPI is the first standard and portable message passing library that offers good performance.

MPI is a "standard by consensus" designed in an open forum that included hardware vendors, researchers, academics, software library developers, and users, representing over 40 organizations. This broad participation in its development ensured MPI's rapid emergence as a widely used standard for writing message-passing programs. MPI is not a true standard; that is, it was not issued by a standards organization such as ANSI or ISO.
The MPI "standard" was introduced by the MPI Forum in May 1994 and updated in June 1995. The document that defines it is entitled "MPI: A Message-Passing Standard", published by the University of Tennesee, and available on the World Wide Web at Argonne National Laboratory. If you are not already familiar with MPI, you will probably want to print a copy of this document and use it as a reference for the syntax of MPI routines, which this workshop will not cover except to illustrate specific cases.
MPI 2 produces extensions to the MPI message passing standard. This effort did not change MPI; it extended MPI. in the following areas:
- Dynamic process management
- One-sided operations
- Parallel I/O
- C++ and FORTRAN 90 bindings
- External interfaces
- Extended collective communications
- Real-time extensions
- Other areas
MPI 2 was completed as of July 1997.