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] New CPU scheduler w/ SMP load balancer

To: xen-devel@xxxxxxxxxxxxxxxxxxx, ack@xxxxxxxxxxxxx
Subject: Re: [Xen-devel] New CPU scheduler w/ SMP load balancer
From: Anthony Liguori <aliguori@xxxxxxxxxx>
Date: Fri, 26 May 2006 10:42:39 -0500
Delivery-date: Fri, 26 May 2006 08:43:28 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <20060526130150.GA2756@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
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: <20060526130150.GA2756@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird (X11/20060522)
Hi Emmanuel,

Thanks for the heads up. It would have been nice to float these patches to the list before committing.

Can you provide some more details on any results you may have seen with the new scheduler? How does it affect common benchmarks? How does the "load balancer" scale? How much penalty do you pay (if any at all) on UP?

Better yet, if you have a paper you could share, that would be even better :-) If you cannot share because of conference restrictions, it would be nice if you could a condensed version (similar to what the L4ka group did for their afterburning work).

Based on your description though, the new scheduler looks very promising!


Anthony Liguori

Emmanuel Ackaouy wrote:
Executive summary

I have just committed a change to xen-unstable.hg which adds
support for a new Xen CPU scheduler, which should greatly
enhance resource scheduling on SMP systems and provides better
QoS controls.

The new scheduler is not currently the default, so to enable
it you will need to put "sched=credit" on the Xen command line.
Please give it a go and provide us with some feedback as to how
it performs with your workloads!


The new CPU scheduler automatically load balances guest VCPUs
across all available physical CPUs on an SMP host. You no longer
need to manually pin VCPUs to load balance the system. However,
you can restrict which CPUs a particular VCPU may run on using
the existing "vcpu-pin" interface.

Each guest domain is assigned a "weight" and a "cap".

A domain with a weight of 512 will get twice as much CPU as a
domain with a weight of 256 on a contended host. Legal weights
range from 1 to 65535 and the default is 256.

The cap optionally fixes the maximum amount of CPU a guest will
be able to consume, even if the host system has idle CPU cycles.
The cap is expressed in percentage of one physical CPU: 100 is
1 physical CPU, 50 is half a CPU, 400 is 4 CPUs, etc... The
default, 0, means there is no upper cap.

To use the new scheduler, you need to pick up my change. You
will need to upgrade the tools as well as the hypervisor. We
intend to make this the default scheduler in the near future.
Until then, you must specify "sched=credit" on the Xen command
line in your boot loader.

Once you are running with the new SMP credit scheduler, you will
be able to check and modify your domains' weights and caps using
the "xm csched" command:

xm csched -d <domain>                     lists weight and cap
xm csched -d <domain> -w <weight>   sets the weight
xm csched -d <domain> -c <cap>              sets the cap

I'm interested to hear about your experiences using this
scheduler as well as any performance results running your
favorite applications or benchmarks over it.


Xen-devel mailing list

Xen-devel mailing list