0

これはインターネット上のいくつかの質問に似ていますが、このコードはすぐにエラーを返すのではなく、しばらくの間機能しているようです。

複数の MPI プロセスを生成するコードを実行しています。各プロセスはループを作成し、その中で bcast と scatter を使用してデータを送信し、それらのプロセスからデータを収集します。これにより、アルゴリズムが実行され、データが保存されます。次に、スポーンされた通信から切断し、次のループで別のスポーン セットを作成します。これは数分間機能し、約 300 個のファイルの後、これを吐き出します。

[T7810:10898] [[50329,0],0] ORTE_ERROR_LOG: Not found in file ../../../../../orte/mca/plm/base/plm_base_launch_support.c at line 758
--------------------------------------------------------------------------
mpirun was unable to start the specified application as it encountered an error.
More information may be available above.

これをローカル マシン (単一ノード) でテストしているため、最終展開には複数のノードがあり、それぞれがそのノード内で独自の mpi プロセスを生成します。これがローカル マシンで複数のノードをテストする際の問題であり、HPC で正常に動作するのか、それともより深刻なエラーなのかを把握しようとしています。

どうすればこれをデバッグできますか? 詳細モードなど、MPI が何をしようとしているのかを出力したり、MPI を監視したりする方法はありますか?

4

1 に答える 1

0

MPI4PY は MPI に非常に近いため (コードの行数という点ではなくても論理的に)、これをデバッグする 1 つの方法は、プログラムの C バージョンを作成し、問題が解決しないかどうかを確認することです。このバグを OpenMPI に報告すると、とにかく小さな c テスト ケースが必要になります。

于 2015-10-08T15:41:41.467 に答える