scheduled-tasks - 如何获取一堆 PBS Torque 作业的运行时间?

标签 scheduled-tasks job-scheduling pbs torque elapsedtime

我正在使用 PBS Torque 来运行多个作业。这个想法很简单,每个作业都处理一组数据。用于启 Action 业的 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)到最后一个作业完成执行的时间。

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

最佳答案

如果您知道第一个作业的作业 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.

如果最后一个作业未完成,则运行耗时将只是当前时间 - 第一个作业的排队时间。

关于scheduled-tasks - 如何获取一堆 PBS Torque 作业的运行时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35041342/

相关文章:

mysql - 如何在 Windows 中安排每个文件一个表的 MySQL 数据库备份?

java - 用于 mongodb fetch 的可扩展 spring 调度程序

algorithm - Muntz-Coffman 算法(调度)

hadoop - Hadoop 总是会在节点之间平均分配工作吗?

queue - 如何找到可用扭矩Pbs队列的完整列表?

python - 使用 Ipython 并行在 PBS 集群上注册超时

java - Spring ScheduledTask - 启动/停止支持?

java - 无论操作系统如何,用 Java 执行计划任务的最佳解决方案是什么?

Linux 不会晚于预定时间执行预定作业

linux - 在远程工作站中提交没有队列管理器的作业