我有一个 SLURM 集群和一个正在运行的作业,我已在其中请求了 60 个线程
#SBATCH --cpus-per-task=60
(我正在使用 cgroups 在节点上共享线程)
我现在想将线程数减少到 30。
$ scontrol update jobid=274332 NumCPUs=30
Job is no longer pending execution for job 274332
该作业仍分配了 60 个线程。
$ scontrol show job 274332
JobState=RUNNING Reason=None Dependency=(null)
NumNodes=1 NumCPUs=60 NumTasks=1 CPUs/Task=60 ReqB:S:C:T=0:0:*:*
如何才是正确的实现方式?
谢谢!
最佳答案
在当前版本的 Slurm 中,scontrol
只允许减少分配给正在运行的作业的节点数量,但不能减少 CPU(或内存)的数量。
FAQ说:
Use the scontrol command to change a job's size either by specifying a new node count (NumNodes=) for the job or identify the specific nodes (NodeList=) that you want the job to retain.
(强调我的)
关于linux - 更改正在运行的 Slurm 作业的 CPU 计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57803401/