PlatForm MPI を使って、mppdyna 971 を試してみました。
以下、インストール&テストリポートです。使用されるユーザは
参考にしてください。
1. 必要なファイル (弊社サイトからダウンロードできます)
Platform-MPI-V8.01.01-20110421r.exe – PlatForm MPI
mpp971_*_R6.0.0_winx64_pmpi.zip – s=単精度または、d=倍精度
2. PlatForm MPIのインストール
Platform-MPI-V8.01.01-20110421r.exeをインストールするPCの任意の
場所に保管し、ダブルクリックで実行するのみです。
インストール場所の選択。このまま次へ。
OSタイプの選択。HPCサーバか、それ以外。
今回のPCは、Win7 64bitなので、Windows XP/2000/…. を選択
メニュー登録。 このまま次へ
MPIサービス開始設定。このままで次へ。
ポート番号もこのままで、次へ。
設定完了したので、Install 開始
少し待って、インストール完了。Finish
インストールの確認
すべてのプログラム – Platform-MPI メニューが追加されます。
Platform-MPI Command Prompt で、MPIジョブ専用プロンプトが
起動されます。
また、タスクマネージャーを見ると、pcmpiwin32service.exe が
動いています。
以上でインストールは完了です。
複数ノードを使用する場合は、使用するPC全てにインストールしてください。
また、実行する前に、全てのPCに共通な、同じユーザIDを作成し
(パスワードも同じにする)ログインした状態にしておきましょう。
3. MPPDYNAのインストール
mpp971_*_R6.0.0_winx64_pmpi.zip を解凍すると、
mpp971.exe
l2a.exe
の2ファイルができるので、LSDYNA実行モジュールフォルダなど、
パスの通っている場所へ移動します。
mpp971.exeのままだと、他のバージョンと区別できなくなるので、今回は
フォルダ C:\lsdyna\program
ファイル名 mpp971r6_sp.exe
としました。
複数ノードを使用する場合、複数ノードに共通な場所、または
同一フォルダ名の場所にモジュールを置きます。
4. テストデータ
Topcrunchで公開されている、neon_refined_reviced モデルを使用します。
(ファイル名が長いので、 neon.k, neon.p にリネームした)
データの場所は、
・単一ノード実行なら、どこでも良い
・複数ノードの場合は、共有ファイル または 同一フォルダ名
に置いておきます。
5. MPPDYNAの実行
一番簡単と思われる方法を示します。
ここに記載する以外にも色々なやりかたがあります。
① Platform-MPI Command Prompを起動
② cd データの場所
③ ホストネームファイルを作成する。
例) ファイル名 hostname :
“ホスト名:使用コア数” の順に必要なノード数分記入します。
④ 実行
MPI>mpirun -hostfile hostname mpp971r6_sp i=neon.k p=neon.p
<他オプション>
実行が始まります。
6. ベンチマーク
neon.k を条件を変えて実行した結果を示します。
テスト環境:Intel Core i7 X980 3.33GHz, 24GB-RAM, Win7pro64 * 2台
SMP 1CPUの結果を1.0としています。
R5.1では、MPICH2を使用した際、複数ノードでの性能が全くでない状態
でしたが、Platform MPIでは問題なく、むしろノード数を増やした方が
性能向上が見られました。
TopCrunchの結果によると、8CPU最速は731秒です。
今回の8CPU結果992秒は、8CPU全体で6番目の記録。
普通のデスクトップ2台使っただけにしては結構いいのでは?
と思います。
SMP6CPUが、4CPUよりも遅くなったのは、ベンチマーク中に誰かがマシンを使ったから?
時間があるとき再度実行してみようと思います。