MPICH

MPICH, formerly known as MPICH2, is a freely available, portable implementation of MPI, a standard for message-passing for distributed-memory applications used in parallel computing. MPICH is Free and open source software with some public domain components that were developed by a US governmental organisation,[1] and is available for most flavours of Unix-like OS (including Linux and Mac OS X).

MPICH
Repository
Written inC89
Operating systemLinux, MacOS, others.
LicenseMPICH license (permissive)
Websitehttps://www.mpich.org

History

The Argonne National Laboratory and Mississippi State University jointly developed early versions (MPICH-1) as public domain software. The CH part of the name was derived from "Chameleon", which was a portable parallel programming library developed by William Gropp, one of the founders of MPICH.

The original implementation of MPICH (sometimes called "MPICH1") implemented the MPI-1.1 standard. Starting around 2001, work began on a new code base to replace the MPICH1 code and support the MPI-2 standard. Until November 2012, this project was known as "MPICH2". As of November 2012, the MPICH2 project renamed itself to simply "MPICH". MPICH v3.0 implements the MPI-3.0 standard.

MPICH is one of the most popular implementations of MPI. 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.

MPICH channels

Based on ch3 infrastructure:

  • Nemesis - Universal, has inter-node modules: elan, GM, IB (infiniband), MX (myrinet express), NewMadeleine, tcp; and several intra-node variants of shared memory for large messages (LMT interface).
  • ssm - Sockets and Shared Memory
  • shm - SHared memory
  • sock - tcp/ip sockets
  • sctp - experimental channel over SCTP sockets

MPICH derivatives

See also

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.