[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180905064252.GW14951@dhcp22.suse.cz>
Date: Wed, 5 Sep 2018 08:42:52 +0200
From: Michal Hocko <mhocko@...nel.org>
To: Shuah Khan <shuah@...nel.org>
Cc: Will Deacon <will.deacon@....com>, catalin.marinas@....com,
sudeep.holla@....com, ganapatrao.kulkarni@...ium.com,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
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
Powered by blists - more mailing lists