(Click to open topic with navigation)
This topic provides instructions for enabling NUMA-aware, including cgroups, and requires Torque 6.0 or later. For instructions on NUMA-support configurations, see 2.25 Torque NUMA-Support Configuration. This topic assumes you have a basic understanding of cgroups. See RedHat Resource Management Guide or cgroups on kernel.org for basic information on cgroups.
Torque uses cgroups to better manage cpu and memory accounting, memory enforcement, cpuset management, and binding jobs to devices such as MICs and GPUs.
Be aware of the following:
Prerequisites
$ tar -xzvf hwloc-1.9.1.tar.gz $ cd hwloc-1.9.1.tar.gz $ sudo ./configure
./configure --enable-cgroups --with-hwloc-path=/usr/local
Installation Instructions
Do the following:
Red Hat-based Systems must use libcgroup version 0.40.rc1-16.el6 or later; SUSE-based systems need to use a comparative libcgroup version.
yum install libcgroup
yum install libcgroup-tools
zypper install libcgroup1
zypper install libcgroup-tools
$ ./configure --enable-cgroups --with-hwloc-path=/usr/local
ns perf_event net_prio cpuset /cgroup/cpuset cpu /cgroup/cpu cpuacct /cgroup/cpuacct memory /cgroup/memory devices /cgroup/devices freezer /cgroup/freezer net_cls /cgroup/net_cls blkio /cgroup/blkio
[root]# yum install libcgroup [root]# service cgconfig start [root]# chkconfig cgconfig on
[root]# zypper install libcgroup1
mount { devices = /mnt/cgroups/devices; cpuset = /mnt/cgroups/cpuset; cpu = /mnt/cgroups/cpu; cpuacct = /mnt/cgroups/cpuacct; memory = /mnt/cgroups/memory; }
[root]# service cgconfig start [root]# chkconfig cgconfig on
2.24.1 Multiple cgroup Directory Configuration
If your system has more than one cgroup directory configured, you must create the trq‑cgroup‑paths file in the $TORQUE_HOME directory. This file has a list of the cgroup subsystems and the mount points for each subsystem in the syntax of <subsystem> <mount point>.
All five subsystems used by pbs_mom must be in the trq‑cgroup‑paths file. In the example that follows, a directory exists at /cgroup with subdirectories for each subsystem. Torque uses this file first to configure where it will look for cgroups.
cpuset /cgroup/cpuset
cpuacct /cgroup/cpuacct
cpu /cgroup/cpu
memory /cgroup/memory
devices /cgroup/devices