如何获得已完成的PBS或Torque工作的信息?

时间:2014-06-16 17:05:33

标签: shell pbs torque

我有已完成作业的ID。如何查看其详细信息,例如执行时间,分配的节点等?我记得SGE有一个命令(qacct?)。但我找不到PBS或Torque。感谢。

5 个答案:

答案 0 :(得分:4)

由于作业记帐需要root访问权来查看已完成的作业,或者集群管理员已经安装了pbstools(两者都不受用户控制),我发现最简单的事情就是放置< / p>

tracejob $PBS_JOBID

在提交脚本的最后一行。如果调度程序是MAUI,则checkjob -vv $PBS_JOBID是另一种选择。这些命令可以重定向到单独的outfile:

tracejob $PBS_JOBID > $PBS_O_WORKDIR/$PBS_JOBID.tracejob

也应该可以将其作为用户epilog脚本运行,以使其在不同作业中更可重复使用。

答案 1 :(得分:1)

我正在查看此线程,以在运行PBSPro 19.2.3的HPC中搜索如何执行此操作,从PBSPro 18开始,该解决方案类似于John DammSørensen的reply,但-w标志是而不是-1用于在一行中显示每个字段的输出,并且您需要添加-x标志以查看完成作业的详细信息,因此您不需要无需在作业脚本中运行它。 (第203页,Reference Guide的第2.59.2.2节)

qstat -fxw $PBS_JOBID

然后您可以从其中grep qstat -fxw $PBS_JOBID | grep -E "resources_used|Exit_status|array_index" ,例如使用的资源,退出状态等:

blocks

答案 2 :(得分:0)

现在,在TORQUE中获取此功能的唯一方法是查看会计日志。您可以grep查找作业ID并查看作业的记帐记录,如下所示:

04/30/2014 15:20:18;Q;5000.bob;queue=batch 04/30/2014 15:33:00;S;5000.bob;user=dbeer group=dbeer jobname=STDIN queue=batch ctime=1398892818 qtime=1398892818 etime=1398892818 start=1398893580 owner=dbeer@bob exec_host=bob/0 04/30/2014 15:36:20;E;5000.bob;user=dbeer group=dbeer jobname=STDIN queue=batch ctime=1398892818 qtime=1398892818 etime=1398892818 start=1398893580 owner=dbeer@bob exec_host=bob/0 session=22933 end=1398893780 Exit_status=0 resources_used.cput=00:00:00 resources_used.mem=2580kb resources_used.vmem=37072kb resources_used.walltime=00:03:20

不幸的是,要直接执行此操作,您必须具有root访问权限。为了解决这个问题,有pbsacct等工具可以帮助您更好地浏览它。 pbsacct是pbstools包的一部分,这是该链接带你的地方。

答案 3 :(得分:0)

对于Torque,您可以使用“tracejob”命令检查至少部分信息。

官方文件:

http://docs.adaptivecomputing.com/torque/Content/topics/11-troubleshooting/usingTracejobToLocateFailures.htm

您应该注意的一点是,此工具可以方便地解析日志。默认情况下,它只会检查最后一天。请务必阅读“-n”选项的文档。

答案 4 :(得分:0)

在基于扭矩的系统上。我发现从作业中获取统计信息的最佳方法是将其添加到提交的作业脚本的末尾。输出将被添加到STDOUT文件中。

  

qstat -f -1 $ PBS_JOBID