1
我的MPI程序中有一个主从模型。我想在下一次迭代之前让奴隶等待对方。使MPI中的slave彼此等待
if (rank == 0) {
// master process
} else {
// slave process
for (int i = 0; i < 10; i++) {
// do stuff
// wait for all slaves to end iteration i
}
}
基本上,我不希望任何处理器进入下一次迭代而没有其他所有从站完成当前迭代。我怎样才能做到这一点?用MPI_Barrier
?
工作就像一个伤害。你还可以看看[这个](http://stackoverflow.com/questions/34706087/check-if-adjacent-slave-process-is-ended-in-mpi)? – user3616495
另外,如果我将while循环更改为3次,其他5次,其他12次迭代。它会陷入僵局,是吗?我怎样才能防止它? – user3616495
是的,它会死锁。问题变成了,你为什么要首先同步? – Gilles