首页 > 解决方案 > 我的回填作业如何找出调度程序分配给它的时间?

问题描述

我有一个应用程序,它接受一个命令行参数,告诉它已经分配了多少时间。然后应用程序会在一个方便的点检查自己并在指定的时间量之前退出。

我正在与

sbatch --time=240 --time-min=60

如何在我的run.sub文件中找到调度程序分配给我的工作的时间?我假设会有一个环境变量告诉我时间分配,就像$SLURM_JOB_NUM_NODES告诉我分配了多少节点一样,但我一直找不到这样的变量。

标签: slurm

解决方案


squeue从文件内部调用是合法的run.sub,这允许发现有关当前正在运行的作业的附加信息。所以

squeue -j ${SLURM_JOBID} --noheader --Format=TimeLimit

以天-小时:分钟:秒格式返回剩余时间和

squeue -j ${SLURM_JOBID} --noheader --Format=EndTime

以类似于ISO 8601格式的方式返回绝对结束时间。


推荐阅读