MPI

提供: MacWiki
2007年4月1日 (日) 09:00時点におけるWikiSysop (トーク | 投稿記録)による版

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索

MPI とは?

Message Passing Interface の略で、並列・分散プロセス間のメッセージング機能を提供する標準規格。 あるいは、その実装を差す。1995年に MPI フォーラムによって標準化されて以来、多くの実装が存在していて、 コードの移植性に優れているのが特徴。言語に依存せず、C でも Fortran でも利用できる。

プログラム内に MPI 用のヘッダをインクルードして、 UNIX の fork プログラミングの要領で MPI 関数を追加していくだけで、 手軽に並列プログラムを作ることができる。

実装

Mac OS X で利用できるフリーの実装としては、以下のものがある。

LAM/MPI

daemon を介して、メッセージングを行う実装らしい。 現在はメンテナンスモードとなっていて、 開発者は後述の OpenMPI プロジェクトに合流しているそうだ。

MacPorts には、以下の Port が用意されている。

lammpi                         science/lammpi 7.1.2        MPI implementation for parallel computing


MPICH

最も広く使われている MPI 実装で、rsh/ssh 越しに通信を行うもの。 最近、新バージョンの mpich2 に移行しつつある。

インストール手順

  • ソースを展開して、手動で configure, make, make install を行う。
  • MacPorts には、以下の Ports が用意されている。
mpich                          science/mpich  1.2.7        Message Passing Interface (MPI) Library
mpich2                         science/mpich2 1.0.3        Message Passing Interface (MPI) Library


Open MPI

FT-MPI, LA-MPI, LAM/MPI, PACX-MPI などの さまざまな先行プロジェクトの成果をもとに 開発されている MPI 実装。

MacPorts には、以下の Port が用意されている。

openmpi                        science/openmpi 1.1.2        A High Performance Message Passing Library


参考書籍

参考ページ

Wiki内の参考ページ