リモート マシンの突然のクラッシュを検出するプログラムを作成しています。マネージャー プロセスはマシン 1 で実行され、ワーカー プロセスはマシン 2 で実行されます。マネージャー サーバーは、 を呼び出してメッセージをワーカー プロセスに送信しますMPI_Isend
。リモート ワーカーは、 を呼び出してメッセージを取得しますMPI_Irecv
。各呼び出しの後、私は常に彼らの戻りコードをチェックして、に問題があるかどうかを確認しMPI_COMM_WORLD
ます. MPI_Test
また、send および recv 呼び出しの後に実行される戻りコードも確認します。
どういうわけか、マシン 2 を突然再起動しても、リターン コードは常に 0 です。戻り値はMPI_Isend
常に 0 です。リモート マシンの障害を検出する方法についてアドバイスをお願いします。
ところで、私は次のステートメントを使用しました:
MPI_Errhandler_set(MPI_COMM_WORLD,MPI_ERRORS_RETURN);