<div dir="ltr">What Marcus reports is quite correct.   It can be confusing, and Slurm uses 'CPU' I think as a non-specific term to mean 'the smallest assignable compute object'.   With SMT enabled that is the thread, and with it disabled it is the core.<div><br></div><div>We were told by the company that installed the cluster at my last employer that they always turned off SMT as that was best practice, which they had numbers to prove.  The problem with SMT on most processors is that there are shared resources between the threads, and the context switching is bad for straight line performance.  For compute clusters, the performance is usually what is wanted more than the threads.</div><div><br></div><div>So if you disable SMT, it gets a little easier as CPU=Core.</div><div><br></div><div>William</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 4 Mar 2020 at 11:47, Marcus Wagner <<a href="mailto:wagner@itc.rwth-aachen.de">wagner@itc.rwth-aachen.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Loris,<br>
<br>
CPU is the smallest schedulable unit, in case of SMT its threads.<br>
<br>
At the moment we have HT disabled on our systems, therefore CPU is equal <br>
to the cores for us. But with HT enabled, CPU is double that large (at <br>
least form slurm 18.08).<br>
<br>
<br>
Best<br>
Marcus<br>
<br>
On 3/4/20 10:33 AM, Loris Bennett wrote:<br>
> Hi Alexander,<br>
><br>
> Alexander Grund <<a href="mailto:alexander.grund@tu-dresden.de" target="_blank">alexander.grund@tu-dresden.de</a>> writes:<br>
><br>
>> Hi,<br>
>><br>
>> we have a Power9 partition with 44 processors having 4 cores each<br>
>> totaling 176.<br>
>><br>
>> `scontrol show node <node>` shows "CoresPerSocket=22" and "CPUTot=176"<br>
>> which confuses me. Especially as `whypending` reports e.g. "172 cores<br>
>> free: 1"<br>
> What's 'whypending'?<br>
><br>
>> So what are "CPUs" and what are "Cores" to SLURM? Why does it mix up those 2?<br>
> This is just historical as far as I can tell.  I think 'CPU' almost<br>
> always means 'core'.<br>
><br>
>> Most importantly: Does this mean `--cpus-per-task` can be as high as<br>
>> 176 on this node and `--mem-per-cpu` can be up to the reported<br>
>> "RealMemory"/176?<br>
> Yes.<br>
><br>
> Cheers,<br>
><br>
> Loris<br>
><br>
<br>
-- <br>
Marcus Wagner, Dipl.-Inf.<br>
<br>
IT Center<br>
Abteilung: Systeme und Betrieb<br>
RWTH Aachen University<br>
Seffenter Weg 23<br>
52074 Aachen<br>
Tel: +49 241 80-24383<br>
Fax: +49 241 80-624383<br>
<a href="mailto:wagner@itc.rwth-aachen.de" target="_blank">wagner@itc.rwth-aachen.de</a><br>
<a href="http://www.itc.rwth-aachen.de" rel="noreferrer" target="_blank">www.itc.rwth-aachen.de</a><br>
<br>
<br>
</blockquote></div>