[slurm-users] Revisit: Split a GPU cluster into GPU cores and shared cores
Christopher Samuel
chris at csamuel.org
Wed Apr 18 17:58:16 MDT 2018
On 19/04/18 07:11, Barry Moore wrote:
> My situation is similar. I have a GPU cluster with gres.conf entries
> which look like:
>
> NodeName=gpu-XX Name=gpu File=/dev/nvidia[0-1] CPUs=[0-5]
> NodeName=gpu-XX Name=gpu File=/dev/nvidia[2-3] CPUs=[6-11]
>
> However, as you can imagine 8 cores sit idle on these machines for no
> reason. Is there a way to easily set this up?
We do this with overlapping partitions:
PartitionName=skylake Default=YES State=DOWN [...] MaxCPUsPerNode=32
PartitionName=skylake-gpu Default=NO State=DOWN [...] Priority=1000
Our submit filter then forces jobs that request gres=gpu into the
skylake-gpu partition and those that don't into the skylake partition.
Our gres.conf has:
NodeName=[...] Name=gpu Type=p100 File=/dev/nvidia0 Cores=0-17
NodeName=[...] Name=gpu Type=p100 File=/dev/nvidia1 Cores=18-35
But of course the Cores= spec is just advisory to the scheduler,
the user can make that a hard requirement by specifying:
--gres-flags=enforce-binding
We do have the issue where the four free cores are on one socket,
rather than being equally distributed across the sockets. When I
solicited advice from SchedMD for our config it seems they are
doing some work in this area that may hopefully surface in the next
major release (though likely only as a "beta" proof of concept).
https://bugs.schedmd.com/show_bug.cgi?id=4717
All the best,
Chris
--
Chris Samuel : http://www.csamuel.org/ : Melbourne, VIC
More information about the slurm-users
mailing list