私の問題は、計算のステータスとプログラムのステータスに関するメッセージを送信することです。すべてのホストは、1 つの作業チャンクを取得します。ホストが作業を終了すると、結果をレシーバーに送信する必要があります。受信者は、計算の実行中に変更される可能性があります。デバッグ目的で、すべてのホストのステータスもランク 0 のホストに転送する必要があります。
そこから、たくさんのメッセージをいただきました。しかし、ホスト間でメッセージを送信する方法は明確ではありません。
- 1 つの可能性は、すべてのネイバーが次のネイバーにメッセージを送信する円のようなメッセージ トランスポートです。
- MPI_Isend や MPI_Irecv などの非ブロッキング通信メソッドが解決策になる可能性があります。ただし、すべてのホストは送信者および受信者である必要があります。
- 簡単な方法は、すべてのホストがメッセージをブロードキャストする場所ですが、それは大量のトラフィックです。
すべてのホストが受信者および送信者になるブロードキャストのような機能が必要です。そして、メッセージがそこにあるときだけ!
よろしく