Messages in this thread | | | Date | Wed, 5 Sep 2018 08:42:52 +0200 | From | Michal Hocko <> | Subject | Re: [PATCH] arm64: add NUMA emulation support |
| |
On Tue 04-09-18 15:59:34, Shuah Khan wrote: [...] > This will support the following workload requirements: > > - reserving one or more NUMA memory nodes for class of critical tasks that require > guaranteed memory availability. > - isolate memory blocks with a guaranteed exclusive access.
How do you enforce kernel doesn't allocate from those reserved nodes? They will be in a fallback zonelists so once the memory gets used on all other ones then the kernel happily spills over to your reserved node.
> NUMA emulation to split the flat machine into "x" number of nodes, combined with > cpuset cgroup with the following example configuration will make it possible to > support the above workloads on non-NUMA platforms. > > numa=fake=4 > > cpuset.mems=2 > cpuset.cpus=2 > cpuset.mem_exclusive=1 (enabling exclusive use of the memory nodes by a CPU set) > cpuset.mem_hardwall=1 (separate the memory nodes that are allocated to different cgroups)
This will only enforce userspace to follow and I strongly suspect that tasks in the root cgroup will be allowed to allocate as well. -- Michal Hocko SUSE Labs
| |