【发布时间】:2016-04-29 10:50:39
【问题描述】:
我为我的学校项目(矩阵乘法)构建了一个 Rocks 集群,其中有一个前端和 5 台其他计算机作为节点。通过 MPI,我向他们发送用于乘法的矩阵部分,然后他们将数据发回。我运行的命令是:
mpirun -hostfile myhostfile ./myprogram
其中 myhostfile 是节点名称及其插槽(线程)编号的文件。 我的程序正在运行,我现在正在尝试分析它。
我的问题是我如何查看每个节点核心/处理器在他的任务上的工作,所有处理器是否都在工作,是否存在某种过载? 我尝试安装 Vampir profiler 和 Intels Vtune Amplifier,但是我在使用上面的这个命令将它们附加到我的程序时遇到了一些问题(其他命令不允许我在节点的所有线程上运行我的程序)。我所做的一切(看到除了 Ganglia 之外我的节点运行良好)是从前端登录到一个节点并使用命令“top”我可以看到我的程序何时执行线程数和几乎 100% 的 CPU 使用率在每个线程上。
【问题讨论】:
-
您能给我们一些关于 MPI 实现细节的细节吗?而且,您还在寻找一些内存占用的详细信息吗?
-
嗨,naveen-m,我正在寻找类似的东西,只是为了查看节点自己的详细工作,在内存使用和内核上的 cpu 使用方面,这是我使用的代码link
-
您有机会尝试其他分析器吗?我建议使用 Allinea(DDT) 或 TAU。 Allinea 有 30 个试用版,应该可以直接配置和使用...Allinea 可以提供最佳使用内存占用详细信息。 TAU 也是一个类似的工具,具有几乎相似的属性。 cs.uoregon.edu/research/tau/about.php
-
同时,让我看看 mpich 文档并尝试确定是否有任何 env 变量可以打印内存详细信息!
标签: mpi cluster-computing nodes mpich rocks