diff --git a/m/common/slurm.nix b/m/common/slurm.nix index ce909df..08de3fd 100644 --- a/m/common/slurm.nix +++ b/m/common/slurm.nix @@ -9,6 +9,8 @@ "owl[1,2] Sockets=2 CoresPerSocket=14 ThreadsPerCore=2 Feature=owl" "hut Sockets=2 CoresPerSocket=14 ThreadsPerCore=2" ]; + + # See slurm.conf(5) for more details about these options. extraConfig = '' # Use PMIx for MPI by default. It works okay with MPICH and OpenMPI, but # not with Intel MPI. For that use the compatibility shim libpmi.so @@ -20,6 +22,13 @@ # When a node reboots return that node to the slurm queue as soon as it # becomes operative again. ReturnToService=2 + + # Track all processes by using a cgroup + ProctrackType=proctrack/cgroup + + # Enable task/affinity to allow the jobs to run in a specified subset of + # the resources. Use the task/cgroup plugin to enable process containment. + TaskPlugin=task/affinity,task/cgroup ''; }; }