On Sunday 19 April 2015 13:45:21, Stefan Fritsch wrote: > CVSROOT: /cvs > Module name: src > Changes by: s...@cvs.openbsd.org 2015/04/19 13:45:21 > > Modified files: > sys/arch/amd64/amd64: lapic.c mptramp.S vector.S > sys/arch/amd64/include: codepatch.h cpuvar.h i82093reg.h > i82489reg.h i82489var.h specialreg.h > > Log message: > Add support for x2apic mode > > This is currently only enabled on hypervisors because on real > hardware, it requires interrupt remapping which we don't support > yet. But on virtualization it reduces the number of vmexits > required per IPI from 4 to 1, causing a significant speed-up for MP > guests. > > ok kettenis@
Maybe I should have mentioned that the speed-up has been observed on KVM. On vmware, it is not noticable (probably because it does more elaborate things in legacy mode like binary patching). Virtualbox does not support x2apic, yet (there is some code but it is disabled). I would be interested to hear reports about xen. Versions 4.1+ should have x2apic support. Thanks to ajacoutot@ and jasper@ for testing earlier versions of the diff.