[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87v8a6fnhg.fsf@yhuang6-desk2.ccr.corp.intel.com>
Date: Mon, 13 Nov 2023 09:31:07 +0800
From: "Huang, Ying" <ying.huang@...el.com>
To: Gregory Price <gregory.price@...verge.com>
Cc: Gregory Price <gourry.memverge@...il.com>,
<linux-kernel@...r.kernel.org>, <linux-cxl@...r.kernel.org>,
<linux-mm@...ck.org>, <cgroups@...r.kernel.org>,
<linux-doc@...r.kernel.org>, <akpm@...ux-foundation.org>,
<mhocko@...nel.org>, <tj@...nel.org>, <lizefan.x@...edance.com>,
<hannes@...xchg.org>, <corbet@....net>, <roman.gushchin@...ux.dev>,
<shakeelb@...gle.com>, <muchun.song@...ux.dev>
Subject: Re: [RFC PATCH v4 0/3] memcg weighted interleave mempolicy control
Gregory Price <gregory.price@...verge.com> writes:
> On Fri, Nov 10, 2023 at 02:16:05PM +0800, Huang, Ying wrote:
>> Gregory Price <gourry.memverge@...il.com> writes:
>>
>> > This patchset implements weighted interleave and adds a new cgroup
>> > sysfs entry: cgroup/memory.interleave_weights (excluded from root).
>> >
>> > The il_weight of a node is used by mempolicy to implement weighted
>> > interleave when `numactl --interleave=...` is invoked. By default
>> > il_weight for a node is always 1, which preserves the default round
>> > robin interleave behavior.
>>
>> IIUC, this makes it almost impossible to set the default weight of a
>> node from the node memory bandwidth information. This will make the
>> life of users a little harder.
>>
>> If so, how about use a new memory policy mode, for example
>> MPOL_WEIGHTED_INTERLEAVE, etc.
>>
>
> weights are also inherited from parent cgroups, so if you set them in
> parent slices you can automatically set update system settings.
>
> by default the parent slice weights will always be 1 until set
> otherwise. Once they're set, children inherit naturally.
>
> Maybe there's an argument here for including interleave_weights in the
> root cgroup.
Even if the interleave_weights is introduced in root cgroup, the initial
default weight need to be 1 to be back-compatible with the original
MPOL_INTERLEAVE.
If we don't reuse MPOL_INTERLEAVE, but use a new memory policy mode (say
MPOL_WEIGHTED_INTERLEAVE). The default values of the interleave weight
in root cgroup needn't to be 1. So, we can provide a more helpful
default interleave weight based on the node memory bandwidth information
(e.g., from HMAT, CDAT, etc). That will make users life much easier.
Do you agree?
--
Best Regards,
Huang, Ying
Powered by blists - more mailing lists