Re: KVM timekeeping and TSC virtualization

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

 



On 08/25/2010 06:55 AM, Marcelo Tosatti wrote:
On Tue, Aug 24, 2010 at 01:01:38PM -1000, Zachary Amsden wrote:
With this patchset, KVM now has a much stronger guarantee: If you have
old guest software running on broken hardware, using SMP virtual
machines, you do not get hardware performance and error-free time
virtualization.    However, if you have new guest software, non-broken
hardware, or can simply run UP guests instead of SMP, you can have
hardware performance, and it is now error free.  Alternatively, you can
sacrifice some accuracy and have hardware performance, even for SMP
guests, if you can tolerate some minor cross-CPU TSC variation.  No
other vendor I know of can make that guarantee.

Zach
If the processor has a stable TSC why trap it? I realize you are trying
to cover a gauntlet of hardware and guests, so maybe a nerd knob is
needed to disable.
Exactly.  If you have a stable TSC, we don't trap it.  If you don't
have a stable TSC, we do.  That's the point of these patches.
Wait, don't you trap if host TSC is faster than guest TSC?

Yes, but that's not a standard scenario, that only applies for a migration. There's also a way to avoid this:

set guest TSC > MAX (all host TSCs in cluster)

Then catchup mode will be used to keep the TSC up to speed. Actually, it's an open question what to do for SMP in this case, I'm not sure I got that right. Technically the proper thing to do is to trap, but this should have a user override.

Zach
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux