<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">if you want slurm to just ignore the difference between physical and logical cores then you can change <div>SelectTypeParameters=CR_Core<br></div><div>to</div><div>SelectTypeParameters=CR_CPU<br></div><div><br></div><div>and then it will treat threads as CPUs and then it will let you start the number of tasks you expect</div><div><br></div><div>Antony</div></div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, 7 Feb 2019 at 18:04, Jeffrey Frey <<a href="mailto:frey@udel.edu">frey@udel.edu</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"><div style="overflow-wrap: break-word;">Your nodes are hyperthreaded (ThreadsPerCore=2).  Slurm always allocates _all threads_ associated with a selected core to jobs.  So you're being assigned both threads on core N.<div><br></div><div><br></div><div>On our development-partition nodes we configure the threads as cores, e.g.<br><div><br></div><div><br></div></div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div><div><div>NodeName=moria CPUs=16 Boards=1 SocketsPerBoard=2 CoresPerSocket=8 ThreadsPerCore=1</div></div></div></blockquote><div><div><br></div><div><br></div><div>to force Slurm to schedule the threads separately.</div><div><br></div><div><br></div><div><br><blockquote type="cite">On Feb 7, 2019, at 12:10 PM, Xiang Gao <<a href="mailto:qasdfgtyuiop@gmail.com" target="_blank">qasdfgtyuiop@gmail.com</a>> wrote:<br><br>Hi All,<br><br>We configured slurm on a server with 8 GPU and 16 CPUs and want to use slurm to scheduler for both CPU and GPU jobs. We observed an unexpected behavior that, although there are 16 CPUs, slurm only schedule 8 jobs to run even if there are jobs not asking any GPU. If I inspect detailed information using `scontrol show job`, I see some strange thing on some job that just ask for 1 CPU:<br><br>NumNodes=1 NumCPUs=2 NumTasks=1 CPUs/Task=1<br><br>If I understand these concepts correctly, as the number of nodes is 1, number of tasks is 1, and number of cpus/task is 1, in principle there is no way that the final number of CPUs is 2. I'm not sure if I misunderstand the concepts, configure slurm wrongly, or this is a bug. So I come for help.<br><br>Some related config are:<br><br># COMPUTE NODES  <br>NodeName=moria CPUs=16 Boards=1 SocketsPerBoard=2 CoresPerSocket=4 ThreadsPerCore=2 RealMemory=120000 Gres=gpu:gtx1080ti:2,gpu:titanv:3,gpu:v100:1,gpu:gp100:2<br>State=UNKNOWN  <br>PartitionName=queue Nodes=moria Default=YES MaxTime=INFINITE State=UP<br><br># SCHEDULING  <br>FastSchedule=1 <br>SchedulerType=sched/backfill <br>GresTypes=gpu <br>SelectType=select/cons_res <br>SelectTypeParameters=CR_Core<br><br>Best,<br>Xiang Gao<br></blockquote><br><div><br>::::::::::::::::::::::::::::::::::::::::::::::::::::::<br>Jeffrey T. Frey, Ph.D.<br>Systems Programmer V / HPC Management<br>Network & Systems Services / College of Engineering<br>University of Delaware, Newark DE  19716<br>Office: (302) 831-6034  Mobile: (302) 419-4976<br>::::::::::::::::::::::::::::::::::::::::::::::::::::::<br><br><br><br></div><br></div></div></div></blockquote></div>