我正在尝试使用我们的集群,但我有问题。我尝试分配一些资源:
salloc -N 1 --ntasks-per-node=5 bash
但它一直在徘徊:
萨洛克: 待分配的工作...
萨洛克: 工作...已排队并等待资源
或者当我尝试时:
srun -N1 -l echo test
它徘徊在等待队列中!
是我犯了错误还是我们的集群有问题?
使用选项--time
为 Slurm 作业设置时间限制可能会有所帮助,例如,将限制设置为 10 分钟,如下所示:
srun --job-name="myJob" --ntasks=4 --nodes=2 --time=00:10:00 --label echo test
如果没有时间限制,Slurm 将使用分区的默认时间限制。问题是有时这可能设置为无穷大或几天,因此这可能会导致作业启动延迟。要检查分区的默认时间限制,请使用:
$ sinfo
PARTITION AVAIL TIMELIMIT NODES STATE NODELIST
prod* up infinite 198 ....
gpu* up 4-00:00:00 70 ....
来自 Slurm 文档:
-t, --time=<time>
对作业分配的总运行时间设置限制。如果请求的时间限制超过分区的时间限制,则作业将保持 PENDING 状态(可能无限期(。默认时间限制是分区的默认时间限制。当达到时间限制时,每个作业步骤中的每个任务都会被发送 SIGTERM,然后是 SIGKILL。