从qstat列表中删除已退出的作业

时间:2016-06-12 12:15:06

标签: jobs global-asax pbs torque

我正在使用PBS服务器,当我输入qstat -u username -t时,我得到以下输出:

                                                                         Req'd  Req'd   Elap
Job ID               Username Queue    Jobname          SessID NDS   TSK Memory Time  S Time
-------------------- -------- -------- ---------------- ------ ----- --- ------ ----- - -----
13631484[2648].p     username long     pre_scan_pdf-264   6824     1  --    4gb 167:5 R 46:20
13631484[2662].p     username long     pre_scan_pdf-266  28333     1  --    4gb 167:5 R 76:10
13631506[3732].p     username short    ew_scan-3732      13625   --   --    4gb 01:29 E 00:14

所以我的问题是,你可以看到有一份工作已经退出。

我想从列表中删除此作业,因为我有一个运行的脚本,用于检查qstat -u username -t输出中是否出现“short”表达式。如果发生这种情况,则不会提交任何作业。

因此我尝试了类似qdel 13631506 []的功能,从列表中删除已退出的作业,但这不起作用。

1 个答案:

答案 0 :(得分:3)

有一些已知的错误,工作有时会陷入退出状态,所以你可能遇到其中一个,但也许结尾只是花费的时间超过你想要完成的时间。您可以设置$prologalarm(在计算节点上的TORQUE_HOME/mom_priv/config中)以限制pbs_mom在杀死陷入序幕或结尾脚本阶段的作业流程之前等待的时间,但是您将会可能想先检查节点上的作业进程,进行故障排除,看看是否可以找出那里出了什么问题。 (谈到Dmitri Chubarov的评论,keep_completed仅适用于已完成的工作,而不适用于已完成的工作。)

您还可以使用qdel -p <job_id>清除作业,但这只会告诉服务器忘记它所知道的有关作业的所有内容。在更新的版本中,服务器已经被修改为具有权威性,关于它不知道的“流浪”作业,因此它应该强制MOM清除作业。但是,我只建议将清洗作为最后的手段。