From: "Li, Haicheng" <haicheng.li@intel.com>
To: David Rientjes <rientjes@google.com>,
"Zheng, Shaohui" <shaohui.zheng@intel.com>
Cc: Paul Mundt <lethal@linux-sh.org>,
Andrew Morton <akpm@linux-foundation.org>,
"linux-mm@kvack.org" <linux-mm@kvack.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"haicheng.li@linux.intel.com" <haicheng.li@linux.intel.com>,
"ak@linux.intel.com" <ak@linux.intel.com>,
"shaohui.zheng@linux.intel.com" <shaohui.zheng@linux.intel.com>,
Yinghai Lu <yinghai@kernel.org>
Subject: RE: [2/8,v3] NUMA Hotplug Emulator: infrastructure of NUMA hotplug emulation
Date: Sun, 21 Nov 2010 23:14:24 +0800 [thread overview]
Message-ID: <789F9655DD1B8F43B48D77C5D30659732FE95E6E@shsmsx501.ccr.corp.intel.com> (raw)
In-Reply-To: <alpine.DEB.2.00.1011201645230.10618@chino.kir.corp.google.com>
David Rientjes wrote:
> On Fri, 19 Nov 2010, Shaohui Zheng wrote:
>
>> nr_node_ids is the possible node number. when we do regular memory
>> online, it is oline to a possible node, and it is already counted in
>> to nr_node_ids.
>>
>> if you increment nr_node_ids dynamically when node online, it causes
>> a lot of problems. Many data are initialized according to
>> nr_node_ids. That is our experience when we debug the emulator.
>>
>
> I think what we'll end up wanting to do is something like this, which
> adds
> a numa=possible=<N> parameter for x86; this will add an additional N
> possible nodes to node_possible_map that we can use to online later.
> It
> also adds a new /sys/devices/system/memory/add_node file which takes a
> typical "size@start" value to hot-add an emulated node. For example,
> using "mem=2G numa=possible=1" on the command line and doing
> echo 128M@0x80000000" > /sys/devices/system/memory/add_node would
> hot-add
> a node of 128M.
>
> Comments?
Sorry for the late response as I'm in a biz trip recently.
David, your original concern is just about powerful/flexibility. I'm sure our implementation can better meets such requirments.
IMHO, I don't see any powerful/flexibility from your patch, compared to our original implementation. you just make things more complex and mess.
Why not use "numa=hide=N*size" as originally implemented?
- later you just need to online the node once you want. And it naturally/exactly emulates the behavior that current HW provides.
- N is the possible node number. And we can use 128M as the default size for each hidden node if user doesn't specify a size.
- If user wants more mem for hidden node, he just needs specify the "size".
- besides, user can also use "mem=" to hide more mem and later use mem-add i/f to freely attach more mem to the hidden node during runtime.
Your patch introduces additional dependency on "mem=", but ours is simple and flexibly compatible with "mem=" and "numa=emu".
-haicheng
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2010-11-21 15:14 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-17 2:07 [0/8,v3] NUMA Hotplug Emulator - Introduction & Feedbacks shaohui.zheng
2010-11-17 2:08 ` [1/8,v3] NUMA Hotplug Emulator: add function to hide memory region via e820 table shaohui.zheng
2010-11-17 8:16 ` David Rientjes
2010-11-18 9:20 ` Shaohui Zheng
2010-11-18 21:16 ` David Rientjes
2010-11-19 0:12 ` Shaohui Zheng
2010-11-21 0:45 ` David Rientjes
2010-11-21 14:00 ` Américo Wang
2010-11-21 21:33 ` David Rientjes
2010-11-17 2:08 ` [2/8,v3] NUMA Hotplug Emulator: infrastructure of NUMA hotplug emulation shaohui.zheng
2010-11-17 8:16 ` David Rientjes
2010-11-17 7:51 ` Shaohui Zheng
2010-11-17 21:10 ` David Rientjes
2010-11-18 4:14 ` Shaohui Zheng
2010-11-18 6:27 ` Paul Mundt
2010-11-18 5:27 ` Shaohui Zheng
2010-11-18 21:24 ` David Rientjes
2010-11-19 0:32 ` Shaohui Zheng
2010-11-21 0:48 ` David Rientjes
2010-11-21 2:28 ` [patch 1/2] x86: add numa=possible command line option David Rientjes
2010-11-21 2:28 ` [patch 2/2] mm: add node hotplug emulation David Rientjes
2010-11-21 17:34 ` Greg KH
2010-11-21 21:48 ` David Rientjes
2010-11-21 23:08 ` [patch 2/2 v2] " David Rientjes
2010-11-22 0:56 ` Greg KH
2010-11-28 1:52 ` David Rientjes
2010-11-28 5:17 ` Greg KH
2010-11-30 0:04 ` David Rientjes
2010-11-21 14:26 ` [patch 1/2] x86: add numa=possible command line option Américo Wang
2010-11-21 21:46 ` David Rientjes
2010-11-22 15:43 ` Américo Wang
2010-11-21 15:14 ` Li, Haicheng [this message]
2010-11-21 21:42 ` [2/8,v3] NUMA Hotplug Emulator: infrastructure of NUMA hotplug emulation David Rientjes
2010-11-18 21:19 ` David Rientjes
2010-11-17 2:08 ` [3/8,v3] NUMA Hotplug Emulator: Userland interface to hotplug-add fake offlined nodes shaohui.zheng
2010-11-17 8:16 ` David Rientjes
2010-11-17 2:08 ` [4/8,v3] NUMA Hotplug Emulator: Abstract cpu register functions shaohui.zheng
2010-11-17 2:08 ` [5/8,v3] NUMA Hotplug Emulator: support cpu probe/release in x86 shaohui.zheng
2010-11-21 14:45 ` Américo Wang
2010-11-22 0:01 ` Shaohui Zheng
2010-11-22 15:51 ` Américo Wang
2010-11-22 23:29 ` Shaohui Zheng
2010-11-17 2:08 ` [6/8,v3] NUMA Hotplug Emulator: Fake CPU socket with logical CPU on x86 shaohui.zheng
2010-11-17 2:08 ` [7/8,v3] NUMA Hotplug Emulator: extend memory probe interface to support NUMA shaohui.zheng
2010-11-17 18:50 ` Dave Hansen
2010-11-17 21:18 ` David Rientjes
2010-11-17 21:55 ` Dave Hansen
2010-11-17 22:44 ` David Rientjes
2010-11-17 23:00 ` Dave Hansen
2010-11-17 23:17 ` David Rientjes
2010-11-18 16:59 ` Aaron Durbin
2010-11-18 4:48 ` Shaohui Zheng
2010-11-18 6:24 ` Paul Mundt
2010-11-18 21:28 ` David Rientjes
2010-11-18 21:31 ` David Rientjes
2010-11-18 4:36 ` Shaohui Zheng
2010-11-19 7:51 ` Shaohui Zheng
2010-11-19 16:36 ` Dave Hansen
2010-11-17 2:08 ` [8/8,v3] NUMA Hotplug Emulator: documentation shaohui.zheng
2010-11-17 23:06 ` Randy Dunlap
2010-11-18 2:31 ` Shaohui Zheng
2010-11-21 15:03 ` Américo Wang
2010-11-21 15:16 ` Li, Haicheng
2010-11-21 23:33 ` Shaohui Zheng
2010-11-22 16:04 ` Américo Wang
2010-11-22 23:23 ` Shaohui Zheng
2010-11-17 5:22 ` [0/8,v3] NUMA Hotplug Emulator - Introduction & Feedbacks Paul Mundt
2010-11-19 5:54 ` Shaohui Zheng
2010-11-17 9:26 ` Yinghai Lu
2010-11-18 2:03 ` Shaohui Zheng
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=789F9655DD1B8F43B48D77C5D30659732FE95E6E@shsmsx501.ccr.corp.intel.com \
--to=haicheng.li@intel.com \
--cc=ak@linux.intel.com \
--cc=akpm@linux-foundation.org \
--cc=haicheng.li@linux.intel.com \
--cc=lethal@linux-sh.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=rientjes@google.com \
--cc=shaohui.zheng@intel.com \
--cc=shaohui.zheng@linux.intel.com \
--cc=yinghai@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox