MPIタイミングの問題をデバッグする方法

MPIタイミングの問題をデバッグする方法

走っている間グロマーク異なる設定(Infinibandに接続されているノード内の2、3、4ノード)でベンチマークした結果、重大なパフォーマンス低下が発生しました。この研究の目的のために、MPI_Alltoall()すべてのノード間でさまざまなサイズ(4バイト〜2 MB)のパケットを転送するテストプログラムを作成しました。テストプログラムの内部タイミングとI_MPI_STATSIntelMPI施設で収集された統計は、両方とも同じパターンを示しています。言い換えれば、少量のデータの場合、結果の帯域幅は許容可能であり、より大きなペイロードの場合、動作は不規則になる。一部の転送には非常に長い時間が必要です(約2.15秒)、平均パフォーマンスが低下します。これらの非常に長い遅延はランダムに発生するように見えるため、存在しないか、サンプルサイズが小さい可能性があります(たとえば、ペイロードサイズあたり100の転送)。以下は、4つのノード、各サイズの1000の転送を使用して取得したいくつかのサンプルデータです。

#           Message size    Call count  Min time    Avr time    Max time    Total time

Alltoall
1           2097152         1000        5649.09     13420.98    2152225.97  13420980.69
2           1048576         1000        2874.85     13000.87    2151684.05  13000867.13
3           524288          1000        1404.05     8484.15     2149509.91  8484153.99
4           262144          1000        719.07      5308.87     2148617.98  5308866.74
5           131072          1000        364.78      9223.77     2148303.99  9223767.04
6           65536           1000        206.95      5124.41     2147943.97  5124409.44
7           32768           1000        120.88      12562.09    2147678.85  12562089.68
8           16384           1000        36.00       57.03       93.94       57034.25
9           8192            1000        22.89       34.80       103.00      34803.87

管理されていないスイッチを介してQDR InfinibandとIntelMPI 4.0.3を使用しています。 ib_send_bwを使用してリング転送(node1 -> node2 -> node3 -> node4 -> node1)を設定してMPIを確認しようとしましたが、問題の動作は観察されませんでした。

#bytes     #iterations    BW peak[MB/sec]    BW average[MB/sec]
16384      10000           1202.93            1202.91
32768      10000           1408.94            1367.46
65536      10000           1196.71            1195.85
131072     10000           1195.68            1180.71
262144     10000           1197.27            1167.45
524288     10000           1162.94            1154.15
1048576    10000           1184.48            1151.31
2097152    10000           1163.39            1143.60
4194304    10000           1157.77            1141.84
8388608    10000           1141.23            1138.36

私の質問:この問題をより深く掘り下げて、問題の根本原因が何であるかを調べる方法はありますか? IntelMPIリファレンスマニュアルを見ましたがI_MPI_STATS

ベストアンサー1

おすすめ記事