WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

RE: [Xen-devel] Re: Xen scheduler

To: "Emmanuel Ackaouy" <ackaouy@xxxxxxxxx>, pak333@xxxxxxxxxxx
Subject: RE: [Xen-devel] Re: Xen scheduler
From: "Petersson, Mats" <Mats.Petersson@xxxxxxx>
Date: Tue, 24 Apr 2007 16:42:13 +0200
Cc: ncmike@xxxxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Tue, 24 Apr 2007 07:41:09 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <4f871bf437d5f30f1626777a8ba042c5@xxxxxxxxx>
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>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AceGfdK4ydLXhP8oRIuRZ+wbDfyODQAAG1rw
Thread-topic: [Xen-devel] Re: Xen scheduler
 

> -----Original Message-----
> From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx 
> [mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of 
> Emmanuel Ackaouy
> Sent: 24 April 2007 15:35
> To: pak333@xxxxxxxxxxx
> Cc: ncmike@xxxxxxxxxx; xen-devel@xxxxxxxxxxxxxxxxxxx
> Subject: Re: [Xen-devel] Re: Xen scheduler
> 
> On Apr 23, 2007, at 21:33, pak333@xxxxxxxxxxx wrote:
> > Basically all my questions boil down to this: Does the 
> Scheduler know 
> > about the pcpu layout(same socket) and does it do any 
> scheduling based 
> > on that.
> 
> Yes but not how you suggested.
> 
> The scheduler actually tries to schedule VCPUs across multiple
> sockets before it "co-schedules" a socket. The idea behind this is
> to maximize the achievable memory bandwidth.
> 
> On hyperthreaded systems, the scheduler will also attempt to
> schedule across cores before it co-schedules hyperthreads. This
> is to maximize achievable cycles.
> 
> At this time, no attempt is made to schedule 2 VCPUs of the
> same VM any differently than 2 VCPUs of distinct VMs.
> 
> If you feel two VCPUs would do better co-scheduled on a
> core or socket, you'd currently have to use cpumasks -- as
> mike suggested -- to restrict where they can run manually. I'd
> be curious to know of real world cases where doing this
> increases performance significantly.

If you have data-sharing between the apps on the same socket, and a shared L2 
or L3 cache, and the application/data fits in the cache, I could see that it 
would help. [And of course, the OS for example will have some data and 
code-sharing between CPU's - so some application where a lot of time is spent 
in the OS itself would be benefitting from "socket sharing"]. 

For other applications, having better memory bandwitch is most likely better. 

Of course, for ideal performance, it would also have to be taken into account 
which CPU owns the memory being used, as the latency of transferring memory 
from one CPU to another in a NUMA system can affect the performance quite 
noticably.

--
Mats
> 
> Hope this helps.
> 
> Cheers,
> Emmanuel.
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
> 
> 
> 



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

<Prev in Thread] Current Thread [Next in Thread>