1

OpenMPI を使用して複数のワーカーにデータを分散しようとしていますが、データ分割をかなりカスタムな方法で行ってMPI_ScatterますMPI_Broadcast。私がやりたいことは、各プロセッサがデータの最初のチャンクで作業を行い、次のチャンクを取得し、チャンクがなくなるまで繰り返すことができるように、キュー (または他の非同期メカニズム) でいくつかの作業を行うことです。

のことは知っていますがMPI_Isend、 でデータを送信すると、送信MPI_Isendが完了するまで変更できません。強制的に使用するためMPI_Wait、スレッドがデータの受信を完了するまで待たなければなりません!

この問題に対する標準的な解決策はありますか、それとも自分のアプローチを再考する必要がありますか?

4

1 に答える 1