From: George Dunlap <george.dunlap@eu.citrix.com>
To: Ian Campbell <ian.campbell@citrix.com>
Cc: Li Yechen <lccycc123@gmail.com>,
Dario Faggioli <dario.faggioli@citrix.com>,
Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
Ian Jackson <ian.jackson@eu.citrix.com>,
"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>,
Elena Ufimtseva <ufimtseva@gmail.com>,
sw@linux.com
Subject: Re: [PATCH RFC v2 4/7] libxl/vNUMA: vNUMA libxl functionality.
Date: Tue, 17 Sep 2013 17:56:20 +0100 [thread overview]
Message-ID: <523889B4.3060609@eu.citrix.com> (raw)
In-Reply-To: <1379435919.11304.187.camel@hastur.hellion.org.uk>
On 09/17/2013 05:38 PM, Ian Campbell wrote:
> On Tue, 2013-09-17 at 17:36 +0100, George Dunlap wrote:
>> On Fri, Sep 13, 2013 at 9:50 AM, Elena Ufimtseva <ufimtseva@gmail.com> wrote:
>>> vNUMA libxl supporting functionality.
>>> libxl supporting functionality for vNUMA includes:
>>> * having vNUMA memory areas sizes, transforms it to
>>> start and end pfns based on domain e820 map;
>>> * contructs vnode_to_pnode map for vNUMA nodes memory
>>> allocation and pass it to Xen; the mechanism considers
>>> automatic NUMA placement in case of presence of hardware
>>> NUMA; In best case scenario all vnodes will be allocated
>>> within one pnode. If the domain spans different pnodes,
>>> the vnodes will be one-by-one placed to pnodes. If such
>>> allocation is impossible due to the memory constraints,
>>> the allocation will use default mechanism; this is worst
>>> case scenario.
>>
>> Why would someone want to make a VM with two vnodes and then put them
>> on the same pnode? Apart from testing, of course, but our defaults
>> should be for the common case of real users.
>
> If your pool of machines included 1- and 2-node systems might you want
> to do this so that when you migrate the vm to a two node system it can
> make use of it?
Yes, but from the description (and from a brief glance at the code) it
looks like if it can happen to fit all the vnodes on a single pnode, it
will do so -- even if the node affinity for the domain spans several nodes.
I think if I was a user, and made a VM with 2 vnodes, and then set its
node affinity to two pnodes, I would expect the tools to place each
vnode on one pnode.
At this point it may be bike-shedding, though... at some point we'll
have the ability to specify node affinity for individual vcpus, at which
time we can specify a pnode affinity for individual vnodes. As long as
we have something not barking mad here, we can revisit it before the
release (as long as someone writes down to do it).
-George
next prev parent reply other threads:[~2013-09-17 16:56 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-13 8:50 [PATCH RFC v2 4/7] libxl/vNUMA: vNUMA libxl functionality Elena Ufimtseva
2013-09-17 16:36 ` George Dunlap
2013-09-17 16:38 ` Ian Campbell
2013-09-17 16:56 ` George Dunlap [this message]
2013-09-18 8:42 ` Dario Faggioli
2013-09-25 17:50 ` Konrad Rzeszutek Wilk
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=523889B4.3060609@eu.citrix.com \
--to=george.dunlap@eu.citrix.com \
--cc=dario.faggioli@citrix.com \
--cc=ian.campbell@citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=lccycc123@gmail.com \
--cc=stefano.stabellini@eu.citrix.com \
--cc=sw@linux.com \
--cc=ufimtseva@gmail.com \
--cc=xen-devel@lists.xen.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 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.