From: "André Przywara" <andre@andrep.de>
To: aron@hp.com
Cc: xen-devel@lists.xensource.com, Anthony.Xu@intel.com
Subject: Re: [RFC] Xen NUMA strategy
Date: Thu, 20 Sep 2007 12:26:05 +0200 [thread overview]
Message-ID: <46F24ABD.70001@andrep.de> (raw)
Hi Aron,
>> 1.) Guest NUMA support: spread a guest's resources (CPUs and memory)
>> over several nodes and propagate the appropriate topology to the
>> guest. ...
>It seems like you are proposing two things at once here. Let's call
>these 1a and 1b
>1a. Expose NUMA topology to the guests. This isn't the topology of
> dom0, just the topology of the domU, i.e. it is constructed by
> dom0 when starting the domain.
>1b. Spread the guest over nodes. I can't tell if you mean to do this
> automatically or by request when starting the guest. This seems
> to be separate from 1a.
From an implementation point-of-view this is right, if you look at my
patches I sent mid of August those parts are done in seperate patches:
http://lists.xensource.com/archives/html/xen-devel/2007-08/msg00275.html
Patch 3/4 cares about 1b), Patch 4/4 is about 1a)
But both parts do not make much sense if done seperately. If you spread
the guest over several nodes and don't tell the guest OS about it, you
will have about the same behaviour Xen had before the integration of the
basic NUMA patches from Ryan Harper in October 2006.
>> ***Disadvantages***:
>> - The guest has to support NUMA...
>> - The guest's workload has to fit NUMA...
>IMHO the list of disadvantages is only what we have in xen today.
>Presently no guests can see the NUMA topology, so it's the same as if
>they don't have support in the guest. Adding NUMA topology
>propogation does not create these disadvantages, it simply exposes the
>weakness of the lesser operating systems.
This was mostly thought of disadvantages against the solution 2)
>> 2.) Dynamic load balancing and page migration:
>Again, this seems like a two-part proposal.
>2a. Add to xen the ability to run a guest within a node, so that cpus
> and ram are allocated from within the node instead of randomly
> across the system.
This is already in Xen, at least if you pin the guest manually to a
certain node _before_ creating the guest (by saying for instance
cpus=0,1 if the first node consists of the first two CPUs). Xen will try
to allocate the guest's memory from within the node the first VCPU is
currently scheduled on (at least for HVM guests).
>2b. NUMA balancing. While this seems like a worthwhile goal, IMHO
> it's separate from the first part of the proposal.
This is most of the work that has to be done.
> If the mechanics of migrating between NUMA nodes is implemented in the
> hypervisor, then policy and control can be implemented in dom0
> userland, so none of the automatic part of this needs to be in the
> hypervisor.
This maybe true, at least there should be some means to manually migrate
domains between nodes, which must be triggered from Dom0. So automatic
behavior could be triggered from there, too.
Andre.
--
Andre Przywara
AMD - Operating System Research Center, Dresden, Germany
next reply other threads:[~2007-09-20 10:26 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-20 10:26 André Przywara [this message]
-- strict thread matches above, loose matches on Subject: below --
2007-09-14 12:05 [RFC] Xen NUMA strategy Andre Przywara
2007-09-18 6:08 ` Akio Takebe
2007-09-18 6:33 ` Xu, Anthony
2007-09-18 6:57 ` Akio Takebe
2007-09-18 8:43 ` Ian Pratt
2007-09-18 13:30 ` Aron Griffis
2007-09-19 1:04 ` Ian Pratt
2007-09-20 1:44 ` Xu, Anthony
2007-09-20 9:56 ` Ian Pratt
2007-09-20 3:09 ` Aron Griffis
2007-09-20 9:50 ` Ian Pratt
2007-09-21 21:36 ` Aron Griffis
2007-09-18 14:31 ` Aron Griffis
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=46F24ABD.70001@andrep.de \
--to=andre@andrep.de \
--cc=Anthony.Xu@intel.com \
--cc=andre.przywara@amd.com \
--cc=aron@hp.com \
--cc=xen-devel@lists.xensource.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.