core: introduce NUMAPolicy and NUMAMask options

System Internals / systemd - Michal Sekletar [redhat.com] - 24 June 2019 14:58 EDT

Make possible to set NUMA allocation policy for manager. Manager's policy is by default inherited to all forked off processes. However, it is possible to override the policy on per-service basis. Currently we support, these policies: default, prefer, bind, interleave, local. See man 2 set_mempolicy for details on each policy.

Overall NUMA policy actually consists of two parts. Policy itself and bitmask representing NUMA nodes where is policy effective. Node mask can be specified using related option, NUMAMask. Default mask can be overwritten on per-service level.

b070c7c0e1 core: introduce NUMAPolicy and NUMAMask options
NEWS | 6 +++
man/systemd-system.conf.xml | 19 +++++++
man/systemd.exec.xml | 28 +++++++++++
meson.build | 4 ++
src/basic/missing_syscall.h | 43 ++++++++++++++++
src/core/dbus-execute.c | 65 ++++++++++++++++++++++--
src/core/execute.c | 20 ++++++++
src/core/execute.h | 1 +
src/core/load-fragment-gperf.gperf.m4 | 2 +
src/core/load-fragment.c | 28 +++++++++++
src/core/load-fragment.h | 2 +
src/core/main.c | 27 ++++++++++
src/core/system.conf.in | 2 +
src/shared/bus-unit-util.c | 28 +++++++++++
src/shared/cpu-set-util.c | 93 +++++++++++++++++++++++++++++++++++
src/shared/cpu-set-util.h | 28 +++++++++++
src/shared/exit-status.c | 3 ++
src/shared/exit-status.h | 1 +
src/systemctl/systemctl.c | 14 +++++-
19 files changed, 409 insertions(+), 5 deletions(-)

Upstream: github.com


  • Share