[vfio-users] Intel x2APIC and APIC Virtualization (APICv or vAPIC)

Bob Dawes xochipilli4 at yahoo.com
Tue Jun 14 19:53:25 UTC 2016


My 100 series skylake / i5 6600k doesn't support apicv and used to have 
x2apic off by default. A recent bios update however switched x2apic on 
whilst also (finally) providing the cpu firmware bug fix. Consistent 
with the claims in this thread however I found I have to add nox2apic on 
my kernel command line to get client benchmarks back to previous values 
and although the impact is not large - I detected it because it was 
noticeable under heavy load such as playing games. Haven't looked into 
why and the stats don't show much change in my collectd history 
with/without x2apic so I think I will go with the explanation that kvm 
just does it better. Seems reasonable enough ... although of course it 
is just as likely to be a bios bug.

Worth bearing in mind in case anybody else finds a similar present that 
isn't included in the changelog when they do their next bios update. No 
ACS support on my root port for an i5-6600k but worth bearing in mind 
that the spec. from intel for the 6th generation does not promise ACS 
support on the PEG root bridge unless certain circumstanes are fulfilled 
(mine can provide an ACSViolation error .. no idea if it's useful 
though). If anybody really wants to know more I'll go find the 
reference, but I remember it making sense and being because graphics 
cards are about as easy to isolate for absolute sure as a forest fire. 
This applies only to v3 compatible cards as I've never seen a v3 
compatible card that wasn't just a legacy card with some of the rough 
edges taken off to make it sufficient for the v3 backwards compatibility 
requirement. I'm not even sure if there is such a thing as a v3 graphics 
card - but I'm sure it would isolate fine or not be v3.

D

On 14/06/16 10:07, Zycorax Tokoroa wrote:
> I'd say that at least some consumer product support apicv, as it 
> happens with PCIe ACS probably. My i7-5930K reports it HAS support for 
> it, and it is enabled by default.
>
> Zycorax Tokoroa
>
>
>>
>> cat /sys/module/kvm_intel/parameters/enable_apicv
>>
>> Should its possible to determine that consumer platforms doesn't
>> supports APICv at all, I suppose that you may want to add again hv-vapic
>> for your Windows VMs if your removed it thinking that your platform
>> supports APICv. I suppose that the performance scale for VMs goes like
>> this: Emulated x2APIC -> HyperV hv-vapic (For Windows VMs) -> Intel
>> APICv (On Intel enterprise platforms).
>>
>
> _______________________________________________
> vfio-users mailing list
> vfio-users at redhat.com
> https://www.redhat.com/mailman/listinfo/vfio-users





More information about the vfio-users mailing list