MPICH(以前はMPICH2と呼ばれていた)は、自由に利用可能なポータブルなMPI実装である。MPIとは、並列計算で使われる分散メモリアプリケーションのためのメッセージパッシングの標準の一つである。MPICHは、アメリカ合衆国の政府機関によって開発されたパブリックドメインのコンポーネントを含む、フリーでオープンソースのソフトウェアである[1]LinuxmacOSを含むUnix系OSのほとんどで使用できる。

MPICH
最新版
3.3.2 / 2019年11月13日(12か月前) (2019-11-13
リポジトリ ウィキデータを編集
プログラミング
言語
C89
対応OS Linux、MacOS、他。
サポート状況 Active
ライセンス MPICH license (permissive)
公式サイト https://www.mpich.org
テンプレートを表示

歴史編集

アルゴンヌ国立研究所パブリックドメインソフトウェアとして初期のバージョン(MPICH-1)を開発した。名前のCHの部分は、MPICHの初期開発メンバーの一人であるビル・グロップが開発した、ポータブルな並列プログラミングライブラリ「Chameleon」に由来する。

MPICHの初期の実装(「MPICH1」と呼ばれることもある)はMPI-1.1標準を実装している。2001年頃から、MPICH1を置き換える新しいコードベースが開発され始め、MPI-2標準をサポートするようになった。2012年11月まで、このプロジェクトは「MPICH2」と呼ばれていた。2012年11月、MPICH2プロジェクトは単なる「MPICH」に名称変更された。MPICH v3.0実装は、MPI-3.0標準を実装している。

MPICHは、最も人気のあるMPI実装の1つであり、非常に多くのMPI実装の基礎となっている。MPICHがベースとなっている実装としては、IBM MPI(for Blue Gene)、Intel MPI、Cray MPI、Microsoft MPI、Myricom MPI、OSU MVAPICH/MVAPICH2など、多数の実装がある。

MPICH channels編集

ch3インフラストラクチャが基礎となっている。

  • Nemesis - 様々な用途に使用できる汎用のチャンネル。inter-nodeモジュール(elan、GM、IB(infiniband)、MX(myrinet express)、NewMadeleine、tcp)と、大きなメッセージ送信のための共有メモリのいくつかのintra-nodeモジュール(LMTインターフェイス)がある。
  • ssm - ソケットと共有メモリ(Sockets and Shared Memory)
  • shm - 共有メモリ(SHared memory)
  • sock - tcp/ip ソケット
  • sctp - SCTPソケット上の実験チャンネル

MPICHの派生プログラム編集

関連項目編集

  • Open MPI - もう1つの有名なオープンソースのMPI実装
  • MVAPICH

参考文献編集

外部リンク編集