[SCore-users-jp] ノード数とコア数が不一致
Kameyama Toyohisa
kameyama @ pccluster.org
2006年 10月 17日 (火) 18:06:09 JST
亀山です.
vqm_mp wrote:
>> この場合, ハードウエア構成よりもソフトウエア構成
>> (どうやってどこに mpich をインストールし,
>> コンパイル/実行したか) のほうが重要なんですが...
>
> すべて,デフォルトです.OSをインストールしなおし,
> まっさらの状態でr系コマンドの設定をし,
> # ./configure
> # make
> # make install
> としました.パスを通して実行しております.
>
>> SCore の例にある hello.cc は MPC++ で書かれた
>> もので MPI ではコンパイルできないはずです.
>> mpich-1.2.7p1 に hello++.cc というのがありますが,
>> こちらでしょうか?
>> (MPI のテストでしたら hostname も出力されるので,
>> cpi のほうが良いと思いますけど...)
>
> hello++.ccのほうで試しました.
>
>
> 次の表は,以下のように訂正させてください.
>>> <host_num> 実際に動いたコア数
>>> 2 2
>>> 3 4
>>> 4 6
>>> 5 8
>>> 6 10
>>> 7 12
>> どのような実行結果が出てこのように判断したのかが不明な
> のですが
>> 具体的にたとえば 3
>> の場合の出力がどうなっているのかがわからないと...
>
> この表は,実際にhello++.ccを動かし,各ノードにおいて
> topコマンド,psコマンドを使ってa.outが動いているかを
> 調べました.
>
> cpi.cを動かしたときの出力結果は以下の通りです.
>
> machineファイル:
> comp01.pccluster.org:2
> comp02.pccluster.org:2
> #".org"の後ろの":2"を取り除いて動かしても,まったく同じ
> 症状
>
> [root @ server mpi_test]# mpirun -np 4 ./a.out
> Process 0 on server.pccluster.org
> Process 2 on comp02.pccluster.org
> Process 3 on comp01.pccluster.org
> Process 0 on comp01.pccluster.org
> pi is .....略
指定 process 0 が 2 つあるのが気になりますが,
server * 1, comp01 * 2, comp02 * 1
の 4 process ですね.
> [root @ server mpi_test]# mpirun -np 3 ./a.out
> Process 0 on server.pccluster.org
> Process 1 on comp01.pccluster.org
> Process 2 on comp02.pccluster.org
> pi is .....略
server, comp01. comp02 の 3 process ですね.
指定どおりに動いているようですけど...
> 同様にtop,psで調べると,<host_num>=4の場合は
> server*2+comp01*4+comp02*2
> だけCPUが動き,<host_num>=3の場合は,
> server*2+comp01*2+comp02*2
> のCPUが動いております.<host_num>と稼動コア数は
> 稼動コア数 = 2*<host_num>
> smpを使用しないで1CPUとしてOSを起動したときは,1CPUに
> 2つのa.outが走り,サーバーホストも加わって,
> a.outの数 = 2*<host_num>
> となっています.
http://www.alde.co.jp/information/mpiinit/mpiinit.html
によると,
Listener と呼ばれる外部プログラムをさらに 起動するために用いられる
プロセスが起動されるようです.
起動されるだけで, 何もしないようなので, 影響はなさそうですけど...
> ・サーバーホスト(mpirunコマンドを打ち込むホスト)も計算に
> 加わっていますが,これはMPIの仕様でしょうか?
http://www-unix.mcs.anl.gov/mpi/www/www1/mpirun.html
をみると
-nolocal do not run on the local machine (only works for p4 and
ch_p4 jobs)
というオプションが存在します.
> ・machineファイルの":2"は何を意味しているのでしょうか?
http://www-unix.mcs.anl.gov/mpi/mpich1/docs/mpichman-chp4/node14.htm#Node19
によると, configure のときに,
-comm=shared
をつけたとき意味があるようです.
Kameyama Toyohisa
SCore-users-jp メーリングリストの案内