Hacker News new | comments | ask | show | jobs | submit login

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.

I 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-pe...

[1]: Xen was built before such support was widely adopted.

This is about right. A lot of the performance seems to be coming from lower hypervisor CPU overhead and better I/O virtualization with virtio.

Running "xen" vm is way too broad to know. http://www.brendangregg.com/blog/2014-05-07/what-color-is-yo.... PVH should be as good as KVM.

Came here to say exactly this.

Blame 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)

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact