This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] [RFC][PATCH] domheap optimization for NUMA

To: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] [RFC][PATCH] domheap optimization for NUMA
From: "Zhai, Edwin" <edwin.zhai@xxxxxxxxx>
Date: Wed, 2 Apr 2008 21:06:04 +0800
Cc: ryanh@xxxxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxx, "Zhai, Edwin" <edwin.zhai@xxxxxxxxx>
Delivery-date: Wed, 02 Apr 2008 06:07:27 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <C4167FD8.1E925%keir.fraser@xxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <20080331104015.GM18363@xxxxxxxxxxxxxxxxxxxxxx> <C4167FD8.1E925%keir.fraser@xxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.11
On Mon, Mar 31, 2008 at 11:47:36AM +0100, Keir Fraser wrote:
> On 31/3/08 11:40, "Zhai, Edwin" <edwin.zhai@xxxxxxxxx> wrote:
> > A new interface alloc_domheap_pages_on_node is introduced instead of 
> > changing
> > current implementation, which is invasive.
> > 
> > There are still many places left for the new interface, but we can change 
> > them
> > in a incremental way if needed.
> A function called alloc_domheap_pages_on_node() should take a *node*
> argument not a vcpu. Perhaps have a helper domain_default_node() which
> returns node for d->vcpu[0] if d->vcpu[0] is non-NULL, else returns some
> value meaning 'any'.
> This will probably require some changes to page_alloc.c. That file currently
> likes to pass cpu ids around rather than node ids, but it would really be
> cleaner to pass around the latter.

The issue is alloc_domheap_pages take domain* as parameter to indicate if need 
account pages for the domain, sometimes it's NULL. In this case, we can't 
the node from domain. I believe it's why use cpu here as getting cpuid is 

Another option, always use domain* to locate node(not allowed NULL) and add a 
new flag _MEMF_assign to indicate the assignment, which changes the interface 
and is invasive.

>  -- Keir
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel

best rgds,

Xen-devel mailing list