有什么理由应该使用MPI';什么时候?

有什么理由应该使用MPI';什么时候?,mpi,Mpi,我一直在想,是否有什么特别的原因让我们应该使用Wtime而不是其他时间测量方法?它是更准确还是更可靠 我看到的唯一原因是平台独立性。由于MPI_Wtime()保证所有列组的开始时间相同,因此它不仅可以用于计算同一列组中任意两点之间的时间,还可以非常方便地比较不同列组到达某一点所花费的时间 对于这个全局同步时钟,也可能有其他应用程序,但现在我只能考虑这一点。MPI\u Wtime()不能保证位于不同节点上的进程之间的全局同步。它确实为位于同一节点上的进程提供同步时钟,但gettimeofday()

我一直在想,是否有什么特别的原因让我们应该使用Wtime而不是其他时间测量方法?它是更准确还是更可靠

我看到的唯一原因是平台独立性。

由于MPI_Wtime()保证所有列组的开始时间相同,因此它不仅可以用于计算同一列组中任意两点之间的时间,还可以非常方便地比较不同列组到达某一点所花费的时间


对于这个全局同步时钟,也可能有其他应用程序,但现在我只能考虑这一点。

MPI\u Wtime()不能保证位于不同节点上的进程之间的全局同步。它确实为位于同一节点上的进程提供同步时钟,但gettimeofday()也提供相同的时钟

根据MPI时间手册(打开MPI 4.0.0):

在POSIX平台上,此函数可以使用比gettimeofday()系统调用更便宜的计时器,但如果没有便宜的高分辨率计时器,则会使用gettimeofday()。可以参考ompi_info命令,查看Open MPI是否支持平台上的本机高分辨率计时器;请参阅“MPI_WTIME支持”的值(或查看可解析输出时的“选项:MPI WTIME”)。如果此值为“native”,则将使用可能比gettimeofday()便宜的方法来获取调用MPI_Wtime的时间


定时测量的平台独立性是一个非常重要的优势。我完全同意。我没有低估它。这是我目前知道的唯一原因,所以我想知道它是否有更多的优势。我不确定这一点,但另一个方法是将它与一些实现中存在的全局时钟一起使用。