[Dev] Build server Xen vs KVM

Luke Shumaker lukeshu at lukeshu.com
Tue Nov 7 02:35:51 GMT 2017

On Mon, 06 Nov 2017 20:21:28 -0500,
Josh Branning wrote:
> On 07/11/17 01:19, Luke Shumaker wrote:
> > Hi all,
> > 
> > In the original email, I had said that I planned on using Xen on the
> > build server.  I suppose I should ask though: Does anyone have a
> > strong opinion on KVM vs Xen?
> > 
> > (Just waiting on the the mobo now.  Also, my RAM seller had
> > mis-counted his inventory, and so I'm only getting 16GB in this
> > order).
> > 
> KVM, built into kernel. Last time I checked Xen required lots of
> dependencies.

KVM is a mechanism built into the kernel, but you still need external
(userspace) programs to do everything but CPU virtualization; which
probably means QEMU.

The dependency lists of QEMU and Xen aren't that different.

(NB: much Xen's para-virtualized device code comes from QEMU)

> Other question to consider is the overhead added as it's a build
> server, but if it's para-visualization shouldn't be so much of a
> problem.

Both KVM and Xen will be using HVM for CPU virtualization these days
(well, KVM always used HVM; Xen used to use para-virtualization for
CPU though); the real overhead will be with devices.

Both KVM/QEMU and Xen should be using virtio (para-virtualization) for
most devices.  I don't know what KVM/QEMU's para-virtualized devices
story is like these days.

One thing to note, while KVM can hot-plug add more CPUs, Xen has
support for hot-plugging and unplugging them.  I said that 16 of the
CPU cores would be dedicated to the build server VM, but Xen would
give the possiblity to rig up a system to allow "ballooning" the
number of cores up to 31 (I'd keep one reserved for dom0) if other VMs
are inactive.

Happy hacking,
~ Luke Shumaker

More information about the Dev mailing list