我在寫一個mpi python代碼。例如,四個特效有如下數據:用運算符減少mpi4py中的每個元素的列表
data on procs0: [1, 2, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0]
data on procs1: [0, 0, 0, 4, 5, 6, 0, 0, 0, 0, 0, 0]
data on procs2: [0, 0, 0, 0, 0, 0, 7, 8, 9, 0, 0, 0]
data on procs3: [0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 12]
我想用減少mpi4py庫函數,以減少對procs0數據,結果:
result on procs0: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
我怎樣才能使用mpi4py它lib函數?
編輯:以上 是,集不能使用,請參見下面的其他情況下,簡單的特例:
data on procs0: [1,0,0,0,0,0]
data on procs1: [0,2,0,0,0,0]
data on procs2: [0,0,0,3,0,0]
data on procs3: [0,0,0,0,4,5]
理想的結果必須是:
result on procs0: [1,2,0,3,4,5]
我不確定mpi4py,但我認爲你應該使用[MPI_Reduce](http://www.mcs.anl.gov/research/projects/mpi/www/www/MPI_Reduce.html)和MPI_MAX作爲操作。 – 2013-03-09 12:25:11