[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <92fb15d4-b8fe-4b73-ba2c-2ded3c9bd4ca@sk.com>
Date: Wed, 5 Feb 2025 14:34:07 +0900
From: Honggyu Kim <honggyu.kim@...com>
To: "Huang, Ying" <ying.huang@...ux.alibaba.com>
Cc: kernel_team@...ynix.com, Joshua Hahn <joshua.hahnjy@...il.com>,
gourry@...rry.net, hyeonggon.yoo@...com, rafael@...nel.org, lenb@...nel.org,
gregkh@...uxfoundation.org, akpm@...ux-foundation.org, rakie.kim@...com,
dan.j.williams@...el.com, Jonathan.Cameron@...wei.com, dave.jiang@...el.com,
horen.chuang@...ux.dev, hannes@...xchg.org, linux-kernel@...r.kernel.org,
linux-acpi@...r.kernel.org, linux-mm@...ck.org, kernel-team@...a.com
Subject: Re: [PATCH v3] Weighted interleave auto-tuning
Hi Ying,
On 1/22/2025 10:24 AM, Huang, Ying wrote:
[snip]
>>>> diff --git a/Documentation/ABI/testing/sysfs-kernel-mm-mempolicy-weighted-interleave b/Documentation/ABI/testing/sysfs-kernel-mm-mempolicy-weighted-interleave
>>>> index 0b7972de04e9..d30dc29c53ff 100644
>>>> --- a/Documentation/ABI/testing/sysfs-kernel-mm-mempolicy-weighted-interleave
>>>> +++ b/Documentation/ABI/testing/sysfs-kernel-mm-mempolicy-weighted-interleave
>>>> @@ -20,6 +20,30 @@ Description: Weight configuration interface for nodeN
>>>> Minimum weight: 1
>>>> Maximum weight: 255
>>>> - Writing an empty string or `0` will reset the weight
>>>> to the
>>>> - system default. The system default may be set by the kernel
>>>> - or drivers at boot or during hotplug events.
>>>> + Writing invalid values (i.e. any values not in [1,255],
>>>> + empty string, ...) will return -EINVAL.
>>>> +
>>>> +What: /sys/kernel/mm/mempolicy/weighted_interleave/mode
>>>> +Date: January 2025
>>>> +Contact: Linux memory management mailing list <linux-mm@...ck.org>
>>>> +Description: Auto-weighting configuration interface
>>>> +
>>>> + Configuration modes for weighted interleave. Can take one of
>>>> + two options: "manual" and "auto". Default is "auto".
>>>> +
>>>> + In auto mode, all node weights are re-calculated and overwritten
>>>> + (visible via the nodeN interfaces) whenever new bandwidth data
>>>> + is made available either during boot or hotplug events.
>>>> +
>>>> + In manual mode, node weights can only be updated by the user.
>>>> + If a node is hotplugged while the user is in manual mode,
>>>> + the node will have a default weight of 1.
>>>> +
>>>> + Modes can be changed by writing either "auto" or "manual" to the
>>>> + interface. All other strings will be ignored, and -EINVAL will
>>>> + be returned. If "auto" is written to the interface but the
>>>> + recalculation / updates fail at any point (-ENOMEM or -ENODEV)
>>>> + then the mode will remain in manual mode.
>>>> +
>>>> + Writing a new weight to a node directly via the nodeN interface
>>>> + will also automatically update the system to manual mode.
>>> IMHO, this interface is somewhat hard to be used. Users need to
>>> know
>>> which value is legal. So, this will become something like,
>>> $ cat mode
>>> auto [manual]
>>> $ echo auto > mode
>>> $ cat mode
>>> [auto] manual
>>
>> This is exactly I internally proposed to Hyeonggon, but couldn't share
>> the idea directly here.
>>
>>> Unless it's possible we will add more modes in the future, this is
>>> kind
>>> of overkill for me. How about something simpler as below?
>>> $ cat auto
>>> true
>>> $ echo 0 > auto
>>> $ cat auto
>>> false
>>
>> That also makes sense, but I feel like somewhat vague what "auto" false
>> means. The "auto" might be better to be "use_hmat" instead and this
>> makes "use_hmat" false more meaningful. "use_hmat_weight" or
>> "use_hmat_info" might be another candidates.
>
> As Gregory pointed out in another email. hmat isn't good because it's
> platform dependent. We may use something else to get default weights on
> another platform.
Sorry for the late reply. I prefered "mode" contains auto/manual and
"hmat" names were my second thought, which may not be proper here as you
mentioned.
>
> I'm open to other platform independent naming. For example, use_default.
I'm also fine to your another proposal "auto" with Y/N, which is used in
v4.
>
> [snip]
>
> ---
> Best Regards,
> Huang, Ying
Thanks,
Honggyu
Powered by blists - more mailing lists