0
別のプロセスの配列の位置に値を送る必要があります。 そうMPI - 配列内の特定の位置に値を送る方法
1st process: MPI_ISend (&val..., process, ..)
2nd process: MPI_Recv (&array[i], ..., process, ...)
だから私は、私は変数を使用できないことを、私も知っている、最初のプロセス上のi番号を知っている - 最初のvalそれから私を送信し、他のプロセスが私を変えることができるよう(第二プロセスであります他の多くの人からのメッセージを受け入れる)。
私はタグが他の目的のために使用され、第1のプロセスはサイクルで2番目のプロセスに4つの値を送信しなければならないという問題があります。彼らは連続した場所にいないので、私はそれらを梱包することはできません。 MPI_PutとGetは本当に望ましいものではありません。だから、タグを解放して情報を分けるだけで助けになりますか? –
私は分かりませんが、MPI_Gathervがあなたの問題を解決できるかどうかは私には聞こえますか?メッセージをランクごとに1つの配列にパックし(不連続な場所に記入してください[またはこれは不可能ですか?])、rank_2にこれらのローカル配列を収集します。 – SamVanDonut