問題タブ [mvapich2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
pthreads - 「MPI_THREAD_SERIALIZED」の正確な定義
MPI_THREAD_MULTIPLE
は ほどパフォーマンスも安定性も高くないためMPI_THREAD_SERIALIZED
、MPI アプリケーションをシリアライズに変換しようとしています。しかし、 の正確な定義は私にMPI_THREAD_SERIALIZED
は明確ではありません。それは意味しますか:
- MPI 呼び出しの開始と終了は、他の呼び出しと重複してはなりませんか?
または 2. MPI 呼び出しの開始は、他の呼び出しと重複してはなりません。(ただし、2 つの呼び出しをオーバーラップさせることはできます)
前者の場合、 、MPI_Comm_accept
、MPI_Win_fence
?
例として、クライアントがサービスを提供するのを待っている DPM アプリケーションがあります。
tcp - 複数のデバイス用の MVAPICH 2.3 構成
バージョン 2.3 の mvapich は Nemesis インターフェイスを廃止しましたが、失敗したときに TCP にフォールバックする Infiniband サポートをすぐに構成する方法はありますか? または、グリッド内の異なるネットワーク設定に対して 2 つのコンパイルが必要ですか?
mpi - MVAPICH2.2 を使用して 2 番目の CPU ソケットで MPI プロセスをバインドする
ネットワーク( Mellanox InfiniBand HCA)が2番目のCPUソケット(およびNUMAノード)に接続されているNUMA計算ノードを使用しています。MVAPICH2.2を使用して、すべての MPI プロセスを 2 番目の CPU ソケットに単純にバインドする環境変数はありますか?
MV2_CPU_BINDING_LEVEL=socket MV2_CPU_BINDING_POLICY=bunch
最初の CPU ソケットでプロセスの再グループ化を開始するため、この組み合わせは機能しません。
私は通常、
-genv MV2_CPU_MAPPING 10:11:12:13:14:15:16:17:18:19:30:31:32:33:34:35:36:37:38:39
(2 番目の 10 コア CPU ソケットのすべての SMT を使用する) のようなものを使用することになりますが、これは醜く、コアの量に依存します。
parallel-processing - # バイトが 128 を超えると Intel MPI ベンチマークが失敗する: IMB-EXT
Linux と Intel MPI を 2 台のマシンにインストールしました。
(1) 24 コア (Intel Xeon X7542 X 4) を搭載したかなり古い (~8 年前の) SuperMicro サーバー。メモリ32GB。OS:CentOS7.5
(2) 32 コア (Intel Xeon Gold 6130 X 2) を搭載した新しい HP ProLiant DL380 サーバー。メモリ64GB。OS: OpenSUSE Leap 15
OS と Intel MPI をインストールした後、Intel MPI ベンチマークをコンパイルして実行しました。
IMB-EXT と IMB-RMA を実行しているときに同じエラーが発生するのは非常に驚くべきことですが、OS とすべてが異なります (Intel MPI ベンチマークのコンパイルに使用される GCC バージョンも異なります。CentOS では GCC 6.5 を使用しました。 0 で、OpenSUSE では GCC 7.3.1 を使用しました)。
CentOS マシンでは、次のようになります。
OpenSUSE マシンでは、
mpirun を使用しない場合 (IMB-EXT を実行するプロセスが 1 つしかないことを意味します)、ベンチマークは実行されますが、Unidir_Put は >=2 プロセスを必要とするため、あまり役に立ちません。 MPI_Put と MPI_Get を使用すると、(私の経験から) 予想よりも非常に遅くなります。また、OpenSUSE マシンで MVAPICH を使用しても役に立ちませんでした。出力は次のとおりです。
更新: OpenMPI をテストしましたが、問題なく動作しました (ただし、私のアプリケーションは openmpi の使用を推奨していませんが、Intel MPI または MVAPICH が機能しない理由はまだわかりません...)
これらのサーバーに MPI をインストールしたり、OS をインストールしたりする際に何か不足している可能性はありますか? 実際、OSが問題だと思いますが、どこから始めればよいかわかりません...
事前にどうもありがとう、
ジェー
fortran - MVAPICH2 を使用した Fortran 2003 プログラムのコンパイル
MVAPICH2 を使用して Fortran 2003 プログラムをコンパイルできますか?
MVAPICH2は、a) 独自のコンパイラを提供し、b)mpif77
およびmpif90
ラッパー (どちらも eg を指す) を提供すると述べています/opt/mvapich2-2.3.1/bin/mpifort
。これに役立つドキュメントが見つかりません。