[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9c93f72ad70687d06e9318f8023ce45d39f742e3.camel@intel.com>
Date: Thu, 12 May 2022 15:18:27 +0800
From: "ying.huang@...el.com" <ying.huang@...el.com>
To: Aneesh Kumar K V <aneesh.kumar@...ux.ibm.com>,
Wei Xu <weixugc@...gle.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Greg Thelen <gthelen@...gle.com>,
Yang Shi <shy828301@...il.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Jagdish Gediya <jvgediya@...ux.ibm.com>,
Michal Hocko <mhocko@...nel.org>,
Tim C Chen <tim.c.chen@...el.com>,
Dave Hansen <dave.hansen@...el.com>,
Alistair Popple <apopple@...dia.com>,
Baolin Wang <baolin.wang@...ux.alibaba.com>,
Feng Tang <feng.tang@...el.com>,
Jonathan Cameron <Jonathan.Cameron@...wei.com>,
Davidlohr Bueso <dave@...olabs.net>,
Dan Williams <dan.j.williams@...el.com>,
David Rientjes <rientjes@...gle.com>,
Linux MM <linux-mm@...ck.org>,
Brice Goglin <brice.goglin@...il.com>,
Hesham Almatary <hesham.almatary@...wei.com>
Subject: Re: RFC: Memory Tiering Kernel Interfaces (v2)
On Thu, 2022-05-12 at 12:42 +0530, Aneesh Kumar K V wrote:
> On 5/12/22 12:33 PM, ying.huang@...el.com wrote:
> > On Wed, 2022-05-11 at 23:22 -0700, Wei Xu wrote:
> > > Sysfs Interfaces
> > > ================
> > >
> > > * /sys/devices/system/memtier/memtierN/nodelist
> > >
> > > where N = 0, 1, 2 (the kernel supports only 3 tiers for now).
> > >
> > > Format: node_list
> > >
> > > Read-only. When read, list the memory nodes in the specified tier.
> > >
> > > Tier 0 is the highest tier, while tier 2 is the lowest tier.
> > >
> > > The absolute value of a tier id number has no specific meaning.
> > > What matters is the relative order of the tier id numbers.
> > >
> > > When a memory tier has no nodes, the kernel can hide its memtier
> > > sysfs files.
> > >
> > > * /sys/devices/system/node/nodeN/memtier
> > >
> > > where N = 0, 1, ...
> > >
> > > Format: int or empty
> > >
> > > When read, list the memory tier that the node belongs to. Its value
> > > is empty for a CPU-only NUMA node.
> > >
> > > When written, the kernel moves the node into the specified memory
> > > tier if the move is allowed. The tier assignment of all other nodes
> > > are not affected.
> > >
> > > Initially, we can make this interface read-only.
> >
> > It seems that "/sys/devices/system/node/nodeN/memtier" has all
> > information we needed. Do we really need
> > "/sys/devices/system/memtier/memtierN/nodelist"?
> >
> > That can be gotten via a simple shell command line,
> >
> > $ grep . /sys/devices/system/node/nodeN/memtier | sort -n -k 2 -t ':'
> >
>
> It will be really useful to fetch the memory tier node list in an easy
> fashion rather than reading multiple sysfs directories. If we don't have
> other attributes for memorytier, we could keep
> "/sys/devices/system/memtier/memtierN" a NUMA node list there by
> avoiding /sys/devices/system/memtier/memtierN/nodelist
This will make the interface not extensible. Even a single file
"/sys/devices/system/node/memtiers" is better. As an readonly file, it
should be OK to put multiple values in it.
I remember that one rule for sysfs is that it is accessed more via
libsysfs. Does that make life easier?
Best Regards,
Huang, Ying
Powered by blists - more mailing lists