[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <871qt339td.fsf@yhuang6-desk2.ccr.corp.intel.com>
Date: Fri, 26 Aug 2022 12:31:10 +0800
From: "Huang, Ying" <ying.huang@...el.com>
To: "Aneesh Kumar K.V" <aneesh.kumar@...ux.ibm.com>
Cc: linux-mm@...ck.org, akpm@...ux-foundation.org,
Wei Xu <weixugc@...gle.com>, Yang Shi <shy828301@...il.com>,
Davidlohr Bueso <dave@...olabs.net>,
Tim C Chen <tim.c.chen@...el.com>,
Michal Hocko <mhocko@...nel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Hesham Almatary <hesham.almatary@...wei.com>,
Dave Hansen <dave.hansen@...el.com>,
Jonathan Cameron <Jonathan.Cameron@...wei.com>,
Alistair Popple <apopple@...dia.com>,
Dan Williams <dan.j.williams@...el.com>,
Johannes Weiner <hannes@...xchg.org>, jvgediya.oss@...il.com,
Bharata B Rao <bharata@....com>
Subject: Re: [RFC PATCH 2/2] mm/demotion: Expose memory tier details via sysfs
"Aneesh Kumar K.V" <aneesh.kumar@...ux.ibm.com> writes:
> All allocated memory tiers will be listed as
> /sys/devices/virtual/memtier/memtierN/
>
> Each memtier directory contains symbolic link for the memory types
> that are part of the memory tier. A directory hierarchy looks like
>
> :/sys/devices/virtual/memtier# tree memtier512/
> memtier512/
So you suggest to use abstract_distance_start as memory tier ID? That
will make memory tier ID stable unless we change abstract distance chunk
size or abstract distance division points. That is, we have at least 2
choices here
1. memory_tier0, memory_tier1, memory_tier2, ...
The ID will start from 0. This is easy to understand by users. The
main drawback is that the memory tier ID may be changed when a NUMA node
is onlined/offlined. That is, the memory tier ID is relatively
unstable.
2. memory_tier<abstract_distance_start1>, memory_tier<abstract_distance_start2>, ...
The ID will be discontinuous. So it's not as intuitive as 0,1,2,....
The main advantage is that the memory tier ID will not change when a
NUMA node is onlined/offlined. The ID will be changed only when we
change abstract distance chunk size or abstract distance division
points. That is considered relatively seldom.
Personally, I prefer the 2nd choice too. But I want to collect opinions
from other people too.
> ├── memtype1 -> ../memtype1
> ├── memtype2 -> ../memtype2
I think abstract_distance_start and abstract_distance_end is the key
information of a memory tier too. So we should show them here.
> ├── subsystem -> ../../../../bus/memtier
> └── uevent
>
> The nodes which are part of a specific memory type can be listed via
> /sys/devices/system/memtier/memtypeN/nodes.
>
> The adistance value of a specific memory type can be listed via
> /sys/devices/system/memtier/memtypeN/adistance.
>
> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@...ux.ibm.com>
Best Regards,
Huang, Ying
[snip]
Powered by blists - more mailing lists