[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Re: [RFC, PATCH 24/24] i386 Vmi no idle hz

Pavel Machek wrote:

When a VCPU enters its idle loop, it disables its periodic
alarm and sets up a one shot alarm for the next time event.
That way, it does not become ready to run just to service
the periodic alarm interrupt. Instead, it can remain halted
until there is some real work pending for it.  This allows
the hypervisor to use the physical resources more
effectively since idle VCPUs will have lower overhead.

Does this NO_IDLE_HZ work only on VMI-enabled runs or globally? We are
trying to get NO_IDLE_HZ working to save some power on notebooks; how
is it related to this?

The NO_IDLE_HZ implementation provided here is enabled when the VMI-Timer device is used as the timer interrupt source. The VMI-Timer device is only present on paravirtual hardware.

However, the hooks introduced into the kernel (stop_hz_timer, restart_hz_timer) with these patches will be approximately the same (perhaps a subset) for implementing NO_IDLE_HZ on systems that use other interrupt sources.

Can you use NO_IDLE_HZ patches that are already floating around?

Certainly we plan to merge our NO_IDLE_HZ implementation with those patches once they are stabilized in the kernel. Presently, they seem to be too fast of a moving target to be worth merging at this point, though. Additionally, the VMI-Timer NO_IDLE_HZ implementation does not need all the machinery provided with the NO_IDLE_HZ patches that are floating around because the VMI-Timer code does not track time by counting interrupts. This leads to a fairly simplistic NO_IDLE_HZ implementation.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.