Re: [RFC PATCH v4 2/7] mm/demotion: Expose per node memory tier to sysfs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 5/27/22 7:45 PM, Jonathan Cameron wrote:
On Fri, 27 May 2022 17:55:23 +0530
"Aneesh Kumar K.V" <aneesh.kumar@xxxxxxxxxxxxx> wrote:

From: Jagdish Gediya <jvgediya@xxxxxxxxxxxxx>

Add support to read/write the memory tierindex for a NUMA node.

/sys/devices/system/node/nodeN/memtier

where N = node id

When read, It list the memory tier that the node belongs to.

When written, the kernel moves the node into the specified
memory tier, the tier assignment of all other nodes are not
affected.

If the memory tier does not exist, writing to the above file
create the tier and assign the NUMA node to that tier.
creates

There was some discussion in v2 of Wei Xu's RFC that what matter
for creation is the rank, not the tier number.

My suggestion is move to an explicit creation file such as
memtier/create_tier_from_rank
to which writing the rank gives results in a new tier
with the next device ID and requested rank.

I think the below workflow is much simpler.

:/sys/devices/system# cat memtier/memtier1/nodelist
1-3
:/sys/devices/system# cat node/node1/memtier
1
:/sys/devices/system# ls memtier/memtier*
nodelist  power  rank  subsystem  uevent
/sys/devices/system# ls memtier/
default_rank  max_tier  memtier1  power  uevent
:/sys/devices/system# echo 2 > node/node1/memtier
:/sys/devices/system#

:/sys/devices/system# ls memtier/
default_rank  max_tier  memtier1  memtier2  power  uevent
:/sys/devices/system# cat memtier/memtier1/nodelist
2-3
:/sys/devices/system# cat memtier/memtier2/nodelist
1
:/sys/devices/system#

ie, to create a tier we just write the tier id/tier index to node/nodeN/memtier file. That will create a new memory tier if needed and add the node to that specific memory tier. Since for now we are having 1:1 mapping between tier index to rank value, we can derive the rank value from the memory tier index.

For dynamic memory tier support, we can assign a rank value such that new memory tiers are always created such that it comes last in the demotion order.

-aneesh








[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux