3 ms·
Anyone know why the performance difference is so dramatic? My guess was that the difference would go the other way -- that Xen would be more efficient, because
by mwcampbell 11y ago
Anyone know why the performance difference is so dramatic? My guess was that the difference would go the other way -- that Xen would be more efficient, because it was designed for paravirtualization rather than hardware emulation, and the guest kernels had to be modified to accommodate it.
- tekacs 11y agoI believe it's because Xen adds overhead[0] in its process of working around the need for hardware virtualisation support[1], whereas KVM has much less overhead, but requires hardware support to run efficiently. [0]: http://dtrace.org/blogs/brendan/2013/01/11/virtualization-performance-zones-kvm-xen/ http://dtrace.org/blogs/brendan/2013/01/11/virtualization-pe... [1]: Xen was built before such support was widely adopted.
- alexforster 11y agoThis is about right. A lot of the performance seems to be coming from lower hypervisor CPU overhead and better I/O virtualization with virtio.
- kev009 11y agoRunning "xen" vm is way too broad to know. http://www.brendangregg.com/blog/2014-05-07/what-color-is-your-xen.html http://www.brendangregg.com/blog/2014-05-07/what-color-is-yo.... PVH should be as good as KVM.
- mrmondo 11y agoCame here to say exactly this.
- cthalupa 11y agoBlame AMD. They ruined PV performance on x84_64 when they removed two of the protection rings. Hardware extensions still move the performance needle towards Xen (PV)HVM/PVH and KVM, but the extra context switches required due to the inferior (for paravirtualization) architecture are a major performance hit. (PV, of course, performs IO better when there is not SRIOV access to the IO devices)