Re: [PATCH] sched/numa: add per-process numa_balancing

From: Gang Li
Date: Wed Mar 02 2022 - 21:40:59 EST


Hi Peter Zijlstra,

On 2022/1/12 22:43, Peter Zijlstra wrote:
>> Set per-process numa balancing:
>> prctl(PR_NUMA_BALANCING, PR_SET_NUMAB_DISABLE); //disable
>> prctl(PR_NUMA_BALANCING, PR_SET_NUMAB_ENABLE); //enable
>> prctl(PR_NUMA_BALANCING, PR_SET_NUMAB_DEFAULT); //follow global
>
> This seems to imply you can prctl(ENABLE) even if the global is
> disabled, IOW sched_numa_balancing is off.

I have discussed the semantics of this API with Mel Gorman, we both
agree that we can prctl(ENABLE) even if the global is disabled.

On 2021/11/10 00:26, Mel Gorman wrote: [1]
> For symmetry and consistency of the tuning. Either there is per-process
> control or there is not. Right now, there is only the ability to turn
> off NUMA balancing via prctl if globally enabled. There is no option to
> turn NUMA balancing on for a single task if globally disabled.

On 11/18/21 4:58 PM, Mel Gorman wrote: [2]
> On Thu, Nov 18, 2021 at 11:26:30AM +0800, Gang Li wrote:
>> 3. prctl(PR_NUMA_BALANCING, PR_SET_NUMAB_ENABLE); //enable
>
> If PR_SET_NUMAB_ENABLE enables numa balancing for a task when
> kernel.numa_balancing == 0 instead of returning an error then sure.

[1] Link: https://lore.kernel.org/lkml/20211109162647.GY3891@xxxxxxx/
[2] Link: https://lore.kernel.org/lkml/20211118085819.GD3301@xxxxxxx/
--
Thanks
Gang Li