[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6096c96086187e51706898e58610fc0148b4ca23.camel@linux.intel.com>
Date: Wed, 08 Jun 2022 11:15:27 -0700
From: Tim Chen <tim.c.chen@...ux.intel.com>
To: Johannes Weiner <hannes@...xchg.org>, linux-mm@...ck.org
Cc: Hao Wang <haowang3@...com>, Abhishek Dhanotia <abhishekd@...com>,
"Huang, Ying" <ying.huang@...el.com>,
Dave Hansen <dave.hansen@...ux.intel.com>,
Yang Shi <yang.shi@...ux.alibaba.com>,
Davidlohr Bueso <dave@...olabs.net>,
Adam Manzanares <a.manzanares@...sung.com>,
linux-kernel@...r.kernel.org, kernel-team@...com,
Hasan Al Maruf <hasanalmaruf@...com>
Subject: Re: [PATCH] mm: mempolicy: N:M interleave policy for tiered memory
nodes
On Tue, 2022-06-07 at 13:19 -0400, Johannes Weiner wrote:
>
> /* Do dynamic interleaving for a process */
> static unsigned interleave_nodes(struct mempolicy *policy)
> {
> unsigned next;
> struct task_struct *me = current;
>
> - next = next_node_in(me->il_prev, policy->nodes);
> + if (numa_tier_interleave[0] > 1 || numa_tier_interleave[1] > 1) {
When we have three memory tiers, do we expect an N:M:K policy?
Like interleaving between DDR5, DDR4 and PMEM memory.
Or we expect an N:M policy still by interleaving between two specific tiers?
The other question is whether we will need multiple interleave policies depending
on cgroup?
One policy could be interleave between tier1, tier2, tier3.
Another could be interleave between tier1 and tier2.
In the current implementation we have one global interleave knob
defined by numa_iter_interleave[].
Tim
Powered by blists - more mailing lists