[pve-devel] cpu flags optimisations

Alexandre Derumier aderumier at odiso.com
Mon Jul 8 11:40:33 CEST 2013


This patch series add some cpu flags optimisations:

1) x2apic

This reduce context switch with multicore guests.
Even if the host cpu don't have x2apic, it's working because qemu have an virtual x2apic implementation for guest.
We need  in-kernel irqchip support for this, which is enable for kvm guest since qemu 1.3.
(I don't enable it if nokvm param is set)

2) +sep flag

Need for win8 boot.
This flag was missing from rhel < 6.4 host kernel. It's ok now.
But it's also missing from kvm64 model. (It's exist in other cpu models, amd or intel).
So it's pretty safe to enable it.
If the host kernel is older, qemu filter the flag.

This also improve performance of winxp && win7 32 bits guests.

3) hyperv enlightements for windows guests (> vista)

This add special hyper-v cpu flags for windows guests.
This improve performance and avoid some bsod related to timer.

(I currently disable the hv_vapic flag because I can't get it working).

I have tested all theses flags with: win2003, win2008R2, winxp, linux debian 64bit, on intel and amd physicals processor

It doesn't break live migration, because new cpu flags are not see by guests until a vm reset.

I don't known if Martin can do more tests on more os ?



More information about the pve-devel mailing list