Hi Tom,
I think you could just have CoresPerSocket=6 ThreadsPerCore=2 - you don’t have
to tell Slurm the truth!
You can also do it with CoreSpecCount, which is probably more suitable for your
use case:
CoresPerSocket=8 ThreadsPerCore=2 CoreSpecCount=2
The documentation says:
CoreSpecCount
Number of cores on which Slurm compute node daemons (slurmd, slurmstepd)
will be confined. These cores will not be available for allocation to user
jobs. Isolation of the Slurm daemons from user jobs may improve performance. If
this option and CPUSpecList are both designated for a node, an error is
generated. For information on the algorithm used by Slurm to select the cores
refer to the core specialization documentation (
http://slurm.schedmd.com/core_spec.html ). This option has no effect unless
cgroup job confinement is also configured (TaskPlugin=task/cgroup with
ConstrainCores=yes in cgroup.conf).
Cheers,
Ben
From: Tom G [mailto:[email protected]]
Sent: 23 August 2016 21:29
To: slurm-dev
Subject: [slurm-dev] configuring slurm nodes to use less than the total number
of processes on a machine
Hi,
I have some slurm nodes with 8 core processors and hyperthreading, so 16 CPUs
in effect. I'd like to restrict slurm to only use 12 CPUs on this machine.
What are the right slurm.conf settings to do this?
Doing 8 or 16 CPUs seems straightforward since i can set CoresPerSocket=8 +
ThreadsPerCore=1, or CoresPerSocket=8 + ThreadsPerCore=2 . But if I want to do
12, does that mean i do ThreadsPerCore=1.5 ? Seems strange.
thanks in advance for any help.