<div dir="ltr"><div>Many thanks Brian and Jeffrey for your ideas,</div><div>Yes, at this moment I have all resources listed in the node's definition line, and just one partition (see below)<br></div><div>Indeed this config would work, with the collaboration of users to not abuse requesting all existing GPUs for their jobs. <br></div><div>But something that I still don't have 100% clear, will it allow multiple jobs to run at the same time if these request different GPUs ?<br></div><div><br></div><div>## Nodes List<br></div><div>NodeName=nodeGPU01 SocketsPerBoard=8 CoresPerSocket=16 ThreadsPerCore=2 RealMemory=1024000 State=UNKNOWN Gres=gpu:a100:4,gpu:a100_20g:2,gpu:a100_10g:2,gpu:a100_5g:16 Feature=ht,gpu</div><div><br></div><div>## Partitions list<br>PartitionName=gpu MaxTime=INFINITE State=UP Nodes=nodeGPU01  Default=YES <br></div><div><br></div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Mar 31, 2021 at 3:16 PM Sarlo, Jeffrey S <<a href="mailto:JSarlo@central.uh.edu">JSarlo@central.uh.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 lang="EN-US">
<div class="gmail-m_-6654478085248398531WordSection1">
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)">I think when you define the node in your slurm.conf, you could specify the different types you have and the number in the node.  Then when the user submits the
 job, they could specify the number and type they want and that would all work in one partition.  I have never done it because our nodes have the same type in them.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)">For example, we have V100 and P100 gpus and decided on the type names of volta and tesla<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)">GresTypes=gpu<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)">NodeName=compute-0-[36-43] Gres=gpu:tesla:2 Feature=gen9<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)">NodeName=compute-4-[0-3]   Gres=gpu:volta:8 Feature=gen9<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)">The user then just uses the SBATCH directive  --gpus=tesla:1  to request one P100 gpu.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)">This is an example from  <a href="https://slurm.schedmd.com/slurm.conf.html" target="_blank">https://slurm.schedmd.com/slurm.conf.html</a><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)">(e.g."Gres=gpu:tesla:1,gpu:kepler:1,bandwidth:lustre:no_consume:4G")<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:"Calibri",sans-serif;color:rgb(31,73,125)"><u></u> <u></u></span></p>
<p class="MsoNormal"><b><span style="font-size:11pt;font-family:"Calibri",sans-serif">From:</span></b><span style="font-size:11pt;font-family:"Calibri",sans-serif"> slurm-users [mailto:<a href="mailto:slurm-users-bounces@lists.schedmd.com" target="_blank">slurm-users-bounces@lists.schedmd.com</a>]
<b>On Behalf Of </b>Cristóbal Navarro<br>
<b>Sent:</b> Wednesday, March 31, 2021 10:21 AM<br>
<b>To:</b> <a href="mailto:slurm-users@lists.schedmd.com" target="_blank">slurm-users@lists.schedmd.com</a><br>
<b>Subject:</b> [slurm-users] Is it possible to define multiple partitions for the same node, but each one having a different subset of GPUs?<u></u><u></u></span></p>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal">Hi Community,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">I was checking the documentation but could find clear information on what I am trying to do.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Here at the university we have a large compute node with 3 classes of GPUs. Lets say the node's hostname is "gpuComputer", it is composed of:<u></u><u></u></p>
</div>
<ul type="disc">
<li class="MsoNormal">
4x large GPUs <u></u><u></u></li><li class="MsoNormal">
4x medium GPUs (MIG devices)<u></u><u></u></li><li class="MsoNormal">
16x small GPUs (Mig devices)<u></u><u></u></li></ul>
<div>
<p class="MsoNormal">Our plan is that we want to have one partition for each class of GPUs.
<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">So if a user chooses the "small" partition, it will only see up to 16x small GPUs, and would not interfere with other jobs running on the "medium" or "large" partitions.
<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Can I create three partitions and specify the corresponding subset of GPUs for each one?
<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">If not, would NodeName and NodeHostname serve as an alternative way? i.e., to specify the node three times with different NodeName, but all using the same Hostname=gpuComputer, and specifying the corresponding subset of "Gres" resources
 for each one. Then on each partition, to choose the corresponding NodeName. <u></u>
<u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Any feedback or advice on the best way to accomplish this would be much appreciated.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">best regards<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal"><br>
-- <u></u><u></u></p>
<div>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">Cristóbal A. Navarro<u></u><u></u></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

</blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr">Cristóbal A. Navarro<br></div></div></div></div></div></div>