如何查看某个进程在具有Sun Grid Engine的群集上使用的节点数量?
我(试图)在具有Sun Grid Engine的多核计算群集上运行R. 我想使用MPI环境和snow / snowfall parLapply()函数并行运行R. 我的代码至少在我的笔记本电脑上工作,但要确定它是否能够在集群上实现它,我有以下问题。
如果我请求多个插槽/节点,比如说4,我如何检查一个正在运行的进程是否实际使用了所需的全部CPU数量? 是否有可以显示有关进程的请求节点上的CPU使用情况的详细信息?
为了验证群集工作人员是否真的在适当的节点上启动,我经常在创建群集对象后立即使用以下命令:
clusterEvalQ(cl, Sys.info()['nodename'])
这应该与qstat
命令报告的分配节点列表匹配。
要真正了解CPU使用的细节,我经常ssh到每个节点并使用像top
和ps
这样的命令,但是如果有很多节点需要检查,这可能会很痛苦。 我们在我们的群集上建立了Ganglia监控系统,因此我可以使用Ganglia的Web界面来检查各种节点统计信息。 您可能想要与您的系统管理员联系,看看他们是否设置了任何监控。
上一篇: How to see how many nodes a process is using on a cluster with Sun grid engine?