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


[Xen-devel] RFC: cpu frequency scaling

To: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] RFC: cpu frequency scaling
From: Rik van Riel <riel@xxxxxxxxxx>
Date: Wed, 25 Oct 2006 14:04:08 -0400
Delivery-date: Wed, 25 Oct 2006 11:04:42 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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>
Organization: Red Hat, Inc
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird (X11/20060614)
Right now, CPU frequency scaling in Xen does not work (right) for a
combination of reasons:
1) dom0 might not run on all physical CPUs
2) dom0 might not even have enough VCPUs to fill all physical CPUs
3) dom0 has no idea how busy the other guests are, so it does not
   know whether to scale the CPU frequencies up or down

I can see two ways to fix this:
1) move cpu frequency scaling into the hypervisor, since the hypervisor
   knows how busy all the guests are

2) make sure every physical CPU core has a dom0 VCPU pinned to it, and
   have dom0 poll the hypervisor to find out how busy each CPU is,
   scaling the frequencies of the CPUs as required

These approaches both have their drawbacks.  One requires porting over
a series of drivers from Linux to the hypervisor, maintaining two sets
into the future.  The second could mess up some of the credit
scheduler's balancing, and requires Linux modifications to poll the
hypervisor for the CPU load...

Also, it would mean the end of running a 1 vcpu small dom0, which some
people seem to like.

Which of these approaches would you prefer?

Is there a 3rd option?

Who do you trust?
The people with all the right answers?
Or the people with the right questions?

Xen-devel mailing list

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