MPICH is a freely available, portable implementation of MPI, the Standard for message-passing libraries.
MPICH is a high performance and widely portable implementation of the Message Passing Interface (MPI) Standard, a standard for message-passing for distributed-memory applications used in parallel computing. It is used as the foundation for the vast majority of MPI implementations, including IBM MPI (for Blue Gene), Intel MPI, Cray MPI, Microsoft MPI, Myricom MPI, OSU MVAPICH/MVAPICH2, and many others.
The goals of MPICH are:
- To provide an MPI implementation that efficiently supports different computation and communication platforms including commodity clusters (desktop systems, shared-memory systems, multicore architectures), high-speed networks and proprietary high-end computing systems (Blue Gene, Cray).
- To enable cutting-edge research in MPI through an easy-to-extend modular framework for other derived implementations.
MPICH is developed primarily by a team at Argonne National Laboratory. The current release is 3.2 and can be downloaded at http://www.mpich.org/downloads.
MPICH has derivative implementations by various vendors including:
- IBM Platform MPI for many platforms
- Cray MPI for Cray platforms
- MS-MPI for Windows platforms
- Intel MPI for many platforms
- MVAPICH for InfiniBand
- SiCortex (MPI SiCortex)
- Qlogic (MPICH2-PSM)
- Myricom (MPICH2-MX)
- and more