*MPICH2 [#r802f01e] -Cellist には MPICH2-1.0.6p がすでに入っています -which mpirun とかやって、無いとか言われたらおしえて **MPICH2 コンパイルの仕方 [#f381878d] -基本的にはgcc の使えるオプションはすべて使えます -mpi.c をコンパイルする方法 mpicc mpi.c -o mpi -他にもライブラリが必要な場合はつける(以下はN体ライブラリと算術ライブラリの追加) mpicc mpi.c -o mpi -lm -lnbody -L/path/to/libnbody -I/path/to/libnbody -- -l はリンクライブラリの指定 -- -L はライブラリの存在するディレクトリの追加(math ライブラリは標準ライブラリのため、gccに登録済み、省略できる) -- -I はヘッダファイル(*.h) の存在するディレクトリの追加(math.h は標準ライブラリのため、gccに登録済み、省略できる) **MPICH2 実行方法 [#tb0d12b6] -使いたいノードのホスト名を書いたファイルをつくる echo cellist0 > machinefile echo cellist1 >> machinefile echo cellist2 >> machinefile echo cellist3 >> machinefile --machinefile の中は以下のようになる cellist0 cellist1 cellist2 cellist3 --もし使いたくないノードがあればはずす -MPIプロセスを複数ノード実行するための mpd というアプリケーションを実行する --machienfile にかかれたノードの上から 3台を使いたいときは mpdboot -n 3 -f machinefile --ちゃんと起動したか確認、mpdの起動したノードのホスト名が見れる mpdtrace -MPI プログラムを実行する --4プロセスでカレントディレクトリの mpi というプログラムを実行させたいときは mpirun -np 4 ./mpi もしくは mpiexec -n 4 ./mpi -MPICH の使用を終了する --起動した mpd をすべて終了する mpdallexit