We tested with virtio too (we didn't realize Qemu didn't use it by default!) and while Qemu performance was little better, tools/kvm still beat it with fair margin. Unfortunately I posted the non-virtio results.
That said, don't read too much into the results. It's *one benchmark* on *one machine*. If you care about performance, you'd better benchmark things yourself. The point of publishing the results is just to show that there's some real potential in tools/kvm and that Qemu probably should improve their default configuration.
Posted Jun 16, 2011 11:07 UTC (Thu) by stefanha (subscriber, #55072)
[Link]
Although the default configuration doesn't provide optimal performance for your particular benchmark it is a conservative configuration that is safe and compatible with all sorts of guest operating systems. The scope of qemu-kvm is different from native kvm tool - it needs to run old and broken non-Linux guests in addition to supporting cutting edge guests.
qemu-kvm users normally use virt-install or virt-manager to create VMs that are configured pretty well by default. This benchmark used the raw qemu-kvm command-line without ensuring an equivalent VM configuration - not a fair benchmark.
Native Linux KVM tool v2
Posted Jun 16, 2011 15:09 UTC (Thu) by bronson (subscriber, #4806)
[Link]
If it takes an hour of reading manpages and tweaking command line configs to make one version fast, and the other version is fast out of the box, then that's not a fair benchmark either.
(Not saying it does, just that your position seems oversimplified)
Native Linux KVM tool v2
Posted Jun 16, 2011 22:41 UTC (Thu) by aliguori (subscriber, #30636)
[Link]
The mode the they are using is not the default in QEMU because it's faster than bare metal assuming an otherwise uncontended system with plenty of memory to burn. The results are inconsistent and the safety of doing this depends on how well behaved your guest is.
It's usually not what people want to use even if it makes for artificially high benchmarks.
Native Linux KVM tool v2
Posted Jun 17, 2011 11:41 UTC (Fri) by Darkmere (subscriber, #53695)
[Link]
Frankly, even when using virt-install I'm never certain if it's the right speed or not. Mostly _io_ tends to send systems into 20+ load "wait until world peace happens" even with (supposedly?) virtio enabled.
the current state of qemu-kvm is at times, a headache to deal with.
Speeding up qemu-kvm
Posted Jun 17, 2011 22:04 UTC (Fri) by jrn (subscriber, #64214)
[Link]
Based on
> Some block drivers perform badly with cache=writethrough, most notably, qcow2. If performance is more important than correctness, cache=writeback should be used with qcow2.
I switched to cache=unsafe, and life became way better. The kind of tests I do in VMs let me recreate the image if there's a sudden crash, so safety is not such a worry. Not sure if virt-install does something like that.