使用 MPI 时 MPI_Barrier 和 MPI_Waitall 之间的区别?
Difference between MPI_Barrier and MPI_Waitall when using MPI?
大家好,我是 OpenMPI 的新手,我才刚刚开始使用它。我想知道 MPI_Barrier 和 MPI_Waitall 之间有什么区别,因为它们都要求在继续代码之前完成所有操作。
谢谢!
Barrier 等待所有进程都到达程序中的特定点(即,直到所有进程调用 Barrier 的次数相同)。它不一定要等待任何其他请求完成。
Waitall 等待您指定的所有非阻塞请求完成。它不一定等待其他进程。
如果你碰巧需要等待两者,那么你可以先做一个 Waitall,然后再做一个 Barrier。
大家好,我是 OpenMPI 的新手,我才刚刚开始使用它。我想知道 MPI_Barrier 和 MPI_Waitall 之间有什么区别,因为它们都要求在继续代码之前完成所有操作。 谢谢!
Barrier 等待所有进程都到达程序中的特定点(即,直到所有进程调用 Barrier 的次数相同)。它不一定要等待任何其他请求完成。
Waitall 等待您指定的所有非阻塞请求完成。它不一定等待其他进程。
如果你碰巧需要等待两者,那么你可以先做一个 Waitall,然后再做一个 Barrier。