すべてのランクで同じ長さの配列があります (10 と仮定します)。配列内の一部の値には、プロセッサのランクが含まれています。例えば ...
Proc 1: [1 0 0 0 0 1 0 0 0 1]
Proc 2: [0 2 2 0 0 0 0 2 2 0]
Proc 3: [0 0 0 3 3 0 3 0 0 0]
すべてのプロセッサが次の配列で終わる最も効率的な方法(MPI-2を使用)は何ですか
[1 2 2 3 3 1 3 2 2 1]
これは、すべての配列 (すべてのランクに分散) の合計と考えることができます。1K 以上のコアでこれを高速に実行したいので、パフォーマンスは重要です。