在SLURM中安排批处理作业时,例如
sbatch -N 10 batch-script.sh
#!/bin/bash
#SBATCH --job-name=jobname
srun --label /usr/bin/hostname
可以用sacct
检查当前正在执行哪个步骤:
JobID JobName Partition Account AllocCPUS State ExitCode
------------ ---------- ---------- ---------- ---------- ---------- --------
...
421.1 hostname test 10 RUNNING 0:0
但是如何检查当前步骤中哪些任务/节点仍在运行,哪些已完成? (在这种情况下,每个节点只有一个任务。)我在文档中找到的唯一选项是设置一个--task-epilog
命令并在完成每个任务时记录一些内容。
例如,很高兴看到10个节点中有8个已完成任务,而node03
和node08
仍在运行。
答案 0 :(得分:1)
您可以使用squeue
命令查看哪些节点处于活动状态。要仅过滤您的工作,您可以执行squeue -u [yourname]
。要始终保持更新,您可以执行watch -n 1 "squeue -u [yourname]"
。