0

我已经从以下链接http://www.cs.nyu.edu/wanghua/course...el/h3/mpi_lu.c下载了一个 LU Decomposition 程序,并且程序运行得非常好...我的原因编写这个线程是为了帮助我获得在集群中连接的节点的处理器上花费的执行时间,以便它帮助我从集群中获取统计值。

请帮助我,因为我对 MPI 编程知之甚少,我想要的只是上述程序在集群中节点的每个处理器上花费的时间。

4

1 回答 1

0

至少有两种方法可以获取您所寻找的时间,或者至少接近它们。

如果您的集群上安装了作业管理系统(如果没有安装),那么我希望它会记录计算中涉及的每个进程在每个节点上花费的时间。当然,Grid Engine 会将此数据保存在其文件中,并提供用于检查该文件accounting的实用程序。qacct得知其他广泛使用的工作管理系统不提供类似的数据和功能时,我会感到非常惊讶。

您可以编辑程序并mpi_wtime在关键点插入调用。当然,和所有 MPI 例程一样,这只能在 aftermpi_init和 before调用mpi_finalize;您将不得不做出其他安排来对 MPI 范围之外的代码部分进行计时。(在大多数不支持时钟同步调用的 MPI 实现上,mpi_wtime可以在调用之前mpi_init和之后mpi_finalize调用,因为mpi_wtime系统定时器例程周围只有一个包装器,但这不能保证是可移植的)

于 2013-02-12T11:25:29.587 回答