MPICH2のインストール [MPI]
mpich2 install
下記から最新のMPICH2をダウンロード
http://www.mcs.anl.gov/research/projects/mpich2/
今回はrootではなくuserとしてインストールする。
[user@host: ~]$ tar xvf mpich2-1.1.1p1.tar.gz
[user@host: ~]$ cd mpich2-1.1.1p1
[user@host: ~]$ ./configure --prefix=/home/you/mpich2-install 2>&1 | tee c.txt
注)--prefixでインストールするフォルダを指定
上記youの部分を自分の環境に合わせる。
[user@host: ~]$ make
[user@host: ~]$ makeinstall
MPIの設定
[user@host: ~]$ touch ~/.mpd.conf
[user@host: ~]$ chmod 600 ~/.mpd.conf
secretword=xxxxxx
<-適当な単語で、各ホストに置く
MPIのPATHの設定
[user@host: ~]$ vim ~/.bash_profile
以下PATHの追加
PATH=/home/you/mpich2-install/bin:$PATH
LD_LIBRARY_PATH=/home/you/mpich2-install/lib:$LD_LIBRARY_PATH
[user@host: ~]$ source ~/.bash_profile
1)スタンドアローンで使う場合
mpdを起動
[user@host: ~]$ mpd &
2)クラスターとして使う場合
sshを使えるようにしておく。(sshデーモンを起動)
パスワードレスにするために、下記を行う。
[user@host: ~]$ ssh-keygen -t dsa
パスフレーズとかを聞かれるが、ここではEnterで進む。
[user@host: ~]$ ssh-copy-id user@hostname
ここではsshでログインするアカウント@ホストを追加する。
[user@host: ~]$ ssh-add
これでパスワードなしで接続ができるようになる。
確認のためにsshで接続するとよい。
mpd.hostsの設定
~/mpd.hostsを作成する。
ファイルは下記のように単純にホスト名を追加していく
host0
host1
host2
.
.
.
[user@host: ~]$ mpdboot -n 3 -f ~/mpd.conf
<参考>
Ubuntuの場合はFireWallがデフォルトで動いているので、
uwfを使って設定する。GUI版のguwfもあるのでそれを使うのがよい。
[user@host: ~]$ apt-get install guwf
でインストールできる。ただし、メニューにはインストールされないので、
ターミナルで起動する
[user@host: ~]$ guwf &
3)動作確認
MPICH2のインストール元のフォルダにはexampelフォルダがあるので、
その中のcpiを実行するとよい。
[user@host: ~]$ mpirun -n 3 ./cpi
結果が下記のようになれば成功
[user@host0: ~]$ mpiexec -n 4 ./cpi
Process 0 of 4 is on host0
Process 1 of 4 is on host1
Process 3 of 4 is on host2
Process 2 of 4 is on host3
pi is approximately 3.1415926535981162, Error is 0.0000000000083231
wall clock time = 0.017468
注)当然各ホストに同じバイナリファイルを入れておく必要があるので、
NFS等で共有フォルダをベースに使うのがよいと思う。
下記から最新のMPICH2をダウンロード
http://www.mcs.anl.gov/research/projects/mpich2/
今回はrootではなくuserとしてインストールする。
[user@host: ~]$ tar xvf mpich2-1.1.1p1.tar.gz
[user@host: ~]$ cd mpich2-1.1.1p1
[user@host: ~]$ ./configure --prefix=/home/you/mpich2-install 2>&1 | tee c.txt
注)--prefixでインストールするフォルダを指定
上記youの部分を自分の環境に合わせる。
[user@host: ~]$ make
[user@host: ~]$ makeinstall
MPIの設定
[user@host: ~]$ touch ~/.mpd.conf
[user@host: ~]$ chmod 600 ~/.mpd.conf
secretword=xxxxxx
<-適当な単語で、各ホストに置く
MPIのPATHの設定
[user@host: ~]$ vim ~/.bash_profile
以下PATHの追加
PATH=/home/you/mpich2-install/bin:$PATH
LD_LIBRARY_PATH=/home/you/mpich2-install/lib:$LD_LIBRARY_PATH
[user@host: ~]$ source ~/.bash_profile
1)スタンドアローンで使う場合
mpdを起動
[user@host: ~]$ mpd &
2)クラスターとして使う場合
sshを使えるようにしておく。(sshデーモンを起動)
パスワードレスにするために、下記を行う。
[user@host: ~]$ ssh-keygen -t dsa
パスフレーズとかを聞かれるが、ここではEnterで進む。
[user@host: ~]$ ssh-copy-id user@hostname
ここではsshでログインするアカウント@ホストを追加する。
[user@host: ~]$ ssh-add
これでパスワードなしで接続ができるようになる。
確認のためにsshで接続するとよい。
mpd.hostsの設定
~/mpd.hostsを作成する。
ファイルは下記のように単純にホスト名を追加していく
host0
host1
host2
.
.
.
[user@host: ~]$ mpdboot -n 3 -f ~/mpd.conf
<参考>
Ubuntuの場合はFireWallがデフォルトで動いているので、
uwfを使って設定する。GUI版のguwfもあるのでそれを使うのがよい。
[user@host: ~]$ apt-get install guwf
でインストールできる。ただし、メニューにはインストールされないので、
ターミナルで起動する
[user@host: ~]$ guwf &
3)動作確認
MPICH2のインストール元のフォルダにはexampelフォルダがあるので、
その中のcpiを実行するとよい。
[user@host: ~]$ mpirun -n 3 ./cpi
結果が下記のようになれば成功
[user@host0: ~]$ mpiexec -n 4 ./cpi
Process 0 of 4 is on host0
Process 1 of 4 is on host1
Process 3 of 4 is on host2
Process 2 of 4 is on host3
pi is approximately 3.1415926535981162, Error is 0.0000000000083231
wall clock time = 0.017468
注)当然各ホストに同じバイナリファイルを入れておく必要があるので、
NFS等で共有フォルダをベースに使うのがよいと思う。
2009-09-13 01:10
nice!(0)
コメント(0)
トラックバック(0)
コメント 0