Re: [2/8,v3] NUMA Hotplug Emulator: infrastructure of NUMA hotplug emulation

David Rientjes
2010-11-18T21:19:35Z

On Thu, 18 Nov 2010, Shaohui Zheng wrote:

> On Wed, Nov 17, 2010 at 01:10:50PM -0800, David Rientjes wrote:
> > I don't understand why that's a requirement, NUMA emulation is a seperate
> > feature. Although both are primarily used to test and instrument other VM
> > and kernel code, NUMA emulation is restricted to only being used at boot
> > to fake nodes on smaller machines and can be used to test things like the
> > slab allocator. The NUMA hotplug emulator that you're developing here is
> > primarily used to test the hotplug callbacks; for that use-case, it seems
> > particularly helpful if nodes can be hotplugged of various sizes and node
> > ids rather than having static characteristics that cannot be changed with
> > a reboot.
> >
> I agree with you. the early emulator do the same thing as you said, but there
> is already NUMA emulation to create fake node, our emulator also creates
> fake nodes. We worried about that we will suffer the critiques from the community,
> so we drop the original degsin.
>
> I did not know whether other engineers have the same attitude with you. I think
> that I can publish both codes, and let the community to decide which one is prefered.
>
> In my personal opinion, both methods are acceptable for me.
>

The way that I've proposed it in my email to Dave was different: we use
the memory hotplug interface to add and online the memory only after an
interface has been added that will change the node mappings to
first_unset_node(node_online_map). The memory hotplug interface may
create a new pgdat, so this is the node creation mechanism that should be
used as opposed to those in NUMA emulation.