[slurm-users] Meaning of --cpus-per-task and --mem-per-cpu when SMT processors are used

Marcus Wagner wagner at itc.rwth-aachen.de
Wed Mar 4 11:43:51 UTC 2020

Hi Loris,

CPU is the smallest schedulable unit, in case of SMT its threads.

At the moment we have HT disabled on our systems, therefore CPU is equal 
to the cores for us. But with HT enabled, CPU is double that large (at 
least form slurm 18.08).


On 3/4/20 10:33 AM, Loris Bennett wrote:
> Hi Alexander,
> Alexander Grund <alexander.grund at tu-dresden.de> writes:
>> Hi,
>> we have a Power9 partition with 44 processors having 4 cores each
>> totaling 176.
>> `scontrol show node <node>` shows "CoresPerSocket=22" and "CPUTot=176"
>> which confuses me. Especially as `whypending` reports e.g. "172 cores
>> free: 1"
> What's 'whypending'?
>> So what are "CPUs" and what are "Cores" to SLURM? Why does it mix up those 2?
> This is just historical as far as I can tell.  I think 'CPU' almost
> always means 'core'.
>> Most importantly: Does this mean `--cpus-per-task` can be as high as
>> 176 on this node and `--mem-per-cpu` can be up to the reported
>> "RealMemory"/176?
> Yes.
> Cheers,
> Loris

Marcus Wagner, Dipl.-Inf.

IT Center
Abteilung: Systeme und Betrieb
RWTH Aachen University
Seffenter Weg 23
52074 Aachen
Tel: +49 241 80-24383
Fax: +49 241 80-624383
wagner at itc.rwth-aachen.de

More information about the slurm-users mailing list