我有 5 个 slurm 作业中有 1 个未完成,并且已经运行了 19 个小时,我担心它会在完成之前到达时间限制。我不是管理员,现在是周末,所以我想尝试使用此功能我最近发现此示例中显示的内容:
$ salloc -N4 -C knl,snc4,flat --dependency=expand:$SLURM_JOB_ID bash
salloc: Granted job allocation 65543
但是,当我尝试这样做时,出现错误:
$ salloc --qos=1wk --dependency=expand:14602965
salloc: error: Job submit/allocate failed: Job dependency problem
我究竟做错了什么?
更新:
当我尝试编辑挂钟时间时,我能够成功执行命令:
$ salloc --job-name freebayes.commands3-extend -t 7-00:00:00 --mem 387000 --dependency=expand:14602965
salloc: Granted job allocation 14604022
然而我注意到的一件事是 salloc 是我当前 shell 中的一个正在运行的进程:
$ ps
PID TTY TIME CMD
43140 pts/1 00:00:00 tcsh
43284 pts/1 00:00:00 salloc
43286 pts/1 00:00:00 tcsh
43321 pts/1 00:00:00 ps
因此,我认为我需要使用 nohup(或在 screen/tmux 内)运行它,以便我可以注销。我扫描并终止了该进程,然后使用 nohup 重新执行了该操作。但是,由于无法更改 qos,我预计我的作业将被终止。我尝试使用 -t 和 --qos,但得到了相同的错误。我怀疑由于我没有明确提供 --qos,因此我无法使用 --dependency=expand 来修改作业。我使用了默认 qos(“1day”)。
我的补充问题是:当我尝试修改作业时,是否需要使用 screen/tmux/nohup?
另外,这个 squeue 输出中是否有任何信息可以告诉我它是否能够成功扩展作业?:
JOBID PARTITION MIN_MEMOR TIME CPUS PRIORITY START_TIME QOS TIME_LIMIT NAME
14602965 main 387000 20:05:37 3 0.0000038153 2018-11-02T13:36:30 1day 1-00:00:00 freebayes.commands3
14604022 main 387000 2:53 3 0.0000018135 2018-11-03T09:39:14 1day 3:57:00 freebayes.commands3-extend