【问题标题】:How to get the elapsed time of a bunch of PBS Torque jobs?如何获得一堆 PBS Torque 作业的经过时间?
【发布时间】:2016-01-27 15:25:24
【问题描述】:

我正在使用 PBS Torque 运行多个作业。这个想法很简单,每项工作都处理大量数据。用于启动作业的 PBS_Torque job_script 称为 run_appli.sh

这是启动 10 个作业的简单代码(代码 1)

for i in 1 2 3 4 5 6 7 9 10 do; qsub run_appli.sh ; done 

确实,我可以使用qstat(请参阅下面的命令)监控每个作业的执行情况,并了解每个作业的运行时间。

watch -n1 -d `qstat`

但是,我对整体经过的时间很感兴趣。这意味着从我启动所有作业(代码 1)到最后一个作业完成执行的时间。

有没有人知道如何做到这一点?

【问题讨论】:

  • watch -n1 -d `qstat` qstat 周围的反引号有什么作用?你的意思是watch -n1 -d qstat
  • @DmitriChubarov,是的,我愿意

标签: scheduled-tasks job-scheduling pbs torque elapsedtime


【解决方案1】:

如果你知道第一个job的job id,可以看一下它的ctime(创建时间,或者排队的时间)。然后,您可以检查最后一个作业的 comp_time 的结束时间。两者之间的差异将是经过的总时间。

qstat -f $first_job_id | grep ctime # Shows the first job's queued time
qstat -f $last_job_id | grep comp_time # Shows the final job's completion time.

如果最后一个作业没有完成,那么运行经过的时间就是当前时间 - 第一个作业的排队时间。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-19
    相关资源
    最近更新 更多