最適化問題に対する超高速&安定計算

大規模最適化問題、グラフ探索、機械学習やデジタルツインなどの研究のお話が中心

numactl と SDPARA その2

2008年09月10日 03時15分47秒 | Weblog
numactl コマンドを用いて以下のように 16, 32, 64, 128 プロセスで SDPARA を実行してみよう。問題(SDP)は非常に疎なものを選んでいるので、Schur complemet matrix は全て F3 式で計算を行う。

1: time mpiexec -n 16 numactl --physcpubind=0 ./sdpara.mpich2.goto ~/data/mcp2000-10.dat-s out.mcp2000.16.0
250.810 秒

2: time mpiexec -n 32 numactl --physcpubind=0,4 ./sdpara.mpich2.goto ~/data/mcp2000-10.dat-s out.mcp2000.32.0.4
275.275 秒

3: time mpiexec -n 32 numactl --physcpubind=0,2 ./sdpara.mpich2.goto ~/data/mcp2000-10.dat-s out.mcp2000.32.0.2
271.435 秒

4: time mpiexec -n 32 numactl --physcpubind=0,1 ./sdpara.mpich2.goto ~/data/mcp2000-10.dat-s out.mcp2000.32.0.1
255.364 秒

5: time mpiexec -n 64 numactl --physcpubind=0,4,2,6 ./sdpara.mpich2.goto ~/data/mcp2000-10.dat-s out.mcp2000.64.0.4.2.6
335.994 秒

6: time mpiexec -n 64 numactl --physcpubind=0,4,1,5 ./sdpara.mpich2.goto ~/data/mcp2000-10.dat-s out.mcp2000.64.0.4.1.5
302.228 秒

7: time mpiexec -n 64 numactl --physcpubind=0,2,1,3 ./sdpara.mpich2.goto ~/data/mcp2000-10.dat-s out.mcp2000.64.0.2.1.3
295.312 秒

8: time mpiexec -n 128 numactl --physcpubind=0,1,2,3,4,5,6,7 ./sdpara.mpich2.goto ~/data/mcp2000-10.dat-s out.mcp2000.128
398.540 秒

ほぼ予想通りの結果。全て F3 式で計算の場合は、プロセス数を増やしても L2 キャッシュなどのリソースを食い合うので速くはならない。また、プロセスを振り分けるときは、なるべく異なる CPU あるいは, L2 キャッシュを共有しないコアを使うようにする。
コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« numactl と SDPARA その1 | トップ | 台湾高鐵(台湾新幹線) »
最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

Weblog」カテゴリの最新記事