From: Yang Shi <yang.shi@linux.alibaba.com>
To: Michal Hocko <mhocko@kernel.org>
Cc: Keith Busch <keith.busch@intel.com>,
Dave Hansen <dave.hansen@intel.com>,
mgorman@techsingularity.net, riel@surriel.com,
hannes@cmpxchg.org, akpm@linux-foundation.org,
dan.j.williams@intel.com, fengguang.wu@intel.com,
fan.du@intel.com, ying.huang@intel.com, ziy@nvidia.com,
linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [v2 RFC PATCH 0/9] Another Approach to Use PMEM as NUMA Node
Date: Thu, 18 Apr 2019 09:24:35 -0700 [thread overview]
Message-ID: <bdc25ae2-bddd-1ecb-58b8-ce506274f1bb@linux.alibaba.com> (raw)
In-Reply-To: <20190417175151.GB9523@dhcp22.suse.cz>
On 4/17/19 10:51 AM, Michal Hocko wrote:
> On Wed 17-04-19 10:26:05, Yang Shi wrote:
>> On 4/17/19 9:39 AM, Michal Hocko wrote:
>>> On Wed 17-04-19 09:37:39, Keith Busch wrote:
>>>> On Wed, Apr 17, 2019 at 05:39:23PM +0200, Michal Hocko wrote:
>>>>> On Wed 17-04-19 09:23:46, Keith Busch wrote:
>>>>>> On Wed, Apr 17, 2019 at 11:23:18AM +0200, Michal Hocko wrote:
>>>>>>> On Tue 16-04-19 14:22:33, Dave Hansen wrote:
>>>>>>>> Keith Busch had a set of patches to let you specify the demotion order
>>>>>>>> via sysfs for fun. The rules we came up with were:
>>>>>>> I am not a fan of any sysfs "fun"
>>>>>> I'm hung up on the user facing interface, but there should be some way a
>>>>>> user decides if a memory node is or is not a migrate target, right?
>>>>> Why? Or to put it differently, why do we have to start with a user
>>>>> interface at this stage when we actually barely have any real usecases
>>>>> out there?
>>>> The use case is an alternative to swap, right? The user has to decide
>>>> which storage is the swap target, so operating in the same spirit.
>>> I do not follow. If you use rebalancing you can still deplete the memory
>>> and end up in a swap storage. If you want to reclaim/swap rather than
>>> rebalance then you do not enable rebalancing (by node_reclaim or similar
>>> mechanism).
>> I'm a little bit confused. Do you mean just do *not* do reclaim/swap in
>> rebalancing mode? If rebalancing is on, then node_reclaim just move the
>> pages around nodes, then kswapd or direct reclaim would take care of swap?
> Yes, that was the idea I wanted to get through. Sorry if that was not
> really clear.
>
>> If so the node reclaim on PMEM node may rebalance the pages to DRAM node?
>> Should this be allowed?
> Why it shouldn't? If there are other vacant Nodes to absorb that memory
> then why not use it?
>
>> I think both I and Keith was supposed to treat PMEM as a tier in the reclaim
>> hierarchy. The reclaim should push inactive pages down to PMEM, then swap.
>> So, PMEM is kind of a "terminal" node. So, he introduced sysfs defined
>> target node, I introduced N_CPU_MEM.
> I understand that. And I am trying to figure out whether we really have
> to tream PMEM specially here. Why is it any better than a generic NUMA
> rebalancing code that could be used for many other usecases which are
> not PMEM specific. If you present PMEM as a regular memory then also use
> it as a normal memory.
This also makes some sense. We just look at PMEM from different point of
view. Taking into account the performance disparity may outweigh
treating it as a normal memory in this patchset.
A ridiculous idea, may we have two modes? One for "rebalancing", the
other for "demotion"?
next prev parent reply other threads:[~2019-04-18 16:24 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-11 3:56 [v2 RFC PATCH 0/9] Another Approach to Use PMEM as NUMA Node Yang Shi
2019-04-11 3:56 ` [v2 PATCH 1/9] mm: define N_CPU_MEM node states Yang Shi
2019-04-11 3:56 ` [v2 PATCH 2/9] mm: page_alloc: make find_next_best_node find return cpuless node Yang Shi
2019-04-11 3:56 ` [v2 PATCH 3/9] mm: numa: promote pages to DRAM when it gets accessed twice Yang Shi
2019-04-11 3:56 ` [v2 PATCH 4/9] mm: migrate: make migrate_pages() return nr_succeeded Yang Shi
2019-04-11 3:56 ` [v2 PATCH 5/9] mm: vmscan: demote anon DRAM pages to PMEM node Yang Shi
2019-04-11 14:31 ` Dave Hansen
2019-04-15 22:10 ` Yang Shi
2019-04-15 22:14 ` Dave Hansen
2019-04-15 22:26 ` Yang Shi
2019-04-11 3:56 ` [v2 PATCH 6/9] mm: vmscan: don't demote for memcg reclaim Yang Shi
2019-04-11 3:56 ` [v2 PATCH 7/9] mm: vmscan: check if the demote target node is contended or not Yang Shi
2019-04-11 16:06 ` Dave Hansen
2019-04-15 22:06 ` Yang Shi
2019-04-15 22:13 ` Dave Hansen
2019-04-15 22:23 ` Yang Shi
2019-04-11 3:56 ` [v2 PATCH 8/9] mm: vmscan: add page demotion counter Yang Shi
2019-04-11 3:56 ` [v2 PATCH 9/9] mm: numa: add page promotion counter Yang Shi
2019-04-11 14:28 ` [v2 RFC PATCH 0/9] Another Approach to Use PMEM as NUMA Node Dave Hansen
2019-04-12 8:47 ` Michal Hocko
2019-04-16 0:09 ` Yang Shi
2019-04-16 7:47 ` Michal Hocko
2019-04-16 14:30 ` Dave Hansen
2019-04-16 14:39 ` Michal Hocko
2019-04-16 15:46 ` Dave Hansen
2019-04-16 18:34 ` Michal Hocko
2019-04-16 15:33 ` Zi Yan
2019-04-16 15:55 ` Dave Hansen
2019-04-16 16:12 ` Zi Yan
2019-04-16 19:19 ` Yang Shi
2019-04-16 21:22 ` Dave Hansen
2019-04-16 21:59 ` Yang Shi
2019-04-16 23:04 ` Dave Hansen
2019-04-16 23:17 ` Yang Shi
2019-04-17 15:13 ` Keith Busch
2019-04-17 9:23 ` Michal Hocko
2019-04-17 15:23 ` Keith Busch
2019-04-17 15:39 ` Michal Hocko
2019-04-17 15:37 ` Keith Busch
2019-04-17 16:39 ` Michal Hocko
2019-04-17 17:26 ` Yang Shi
2019-04-17 17:29 ` Keith Busch
2019-04-17 17:51 ` Michal Hocko
2019-04-18 16:24 ` Yang Shi [this message]
2019-04-17 17:13 ` Dave Hansen
2019-04-17 17:57 ` Michal Hocko
2019-04-18 18:16 ` Keith Busch
2019-04-18 19:23 ` Yang Shi
2019-04-18 21:07 ` Zi Yan
2019-04-16 23:18 ` Yang Shi
2019-04-17 9:17 ` Michal Hocko
2019-05-01 6:43 ` Fengguang Wu
2019-04-17 20:43 ` Yang Shi
2019-04-18 9:02 ` Michal Hocko
2019-05-01 5:20 ` Fengguang Wu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=bdc25ae2-bddd-1ecb-58b8-ce506274f1bb@linux.alibaba.com \
--to=yang.shi@linux.alibaba.com \
--cc=akpm@linux-foundation.org \
--cc=dan.j.williams@intel.com \
--cc=dave.hansen@intel.com \
--cc=fan.du@intel.com \
--cc=fengguang.wu@intel.com \
--cc=hannes@cmpxchg.org \
--cc=keith.busch@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mgorman@techsingularity.net \
--cc=mhocko@kernel.org \
--cc=riel@surriel.com \
--cc=ying.huang@intel.com \
--cc=ziy@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.