使用MPI时MPI_Barrier和MPI_Waitall之间的区别?

时间:2018-01-21 16:48:46

标签: mpi distributed-computing

大家好我是OpenMPI的新手,我刚刚开始玩它。我想知道MPI_Barrier和MPI_Waitall之间的区别是什么,因为它们都要求在继续代码之前完成所有操作。 谢谢!

1 个答案:

答案 0 :(得分:2)

屏障等待,直到所有进程都到达程序中的某个特定点(即,直到所有进程都调用Barrier相同的次数)。它不一定等待任何其他请求完成。

Waitall等待,直到您指定的所有非阻塞请求都已完成。它不一定等待其他过程。

如果你碰巧需要等待两者,那么你可以先做一个Waitall,然后再做一个屏障。