2

我为我的学校项目构建了一个 Rocks 集群,它是矩阵乘法,有一个前端和 5 台其他计算机作为节点。通过 MPI,我向他们发送用于乘法的矩阵部分,然后他们将数据发回。我运行的命令是:

mpirun -hostfile myhostfile ./myprogram

其中 myhostfile 是节点名称及其插槽(线程)编号的文件。我的程序正在运行,我现在正在尝试分析它。

我的问题是我如何才能看到每个节点核心/处理器在他的任务上的工作,所有处理器都在工作,是否存在某种过载?我尝试安装 Vampir profiler 和 Intels Vtune Amplifier,但是我在使用上面的这个命令将它们附加到我的程序时遇到了一些问题(其他命令不允许我在节点的所有线程上运行我的程序)。我所做的一切(看到除了 Ganglia 之外我的节点运行良好)是从前端登录到一个节点并使用命令“top”我可以看到我的程序何时执行线程数和几乎 100% 的 CPU 使用率在每个线程上。

4

1 回答 1

1

看看mpstat

如果没有参数,它将显示所有核心的聚合负载

mpstat -P ALL显示每个核心的负载

这将为您提供节点的实时统计信息:

watch pdsh -w compute-01-[01-10] mpstat

(使用您的计算节点名称)

于 2016-03-02T07:06:23.650 回答