Re: virtio-blk performance regression and qemu-kvm
From: Dongsu Park <hidden>
Date: 2012-03-06 14:32:11
Also in:
qemu-devel
Hi Martin, On 05.03.2012 17:13, Martin Mailand wrote:
Am 10.02.2012 15:36, schrieb Dongsu Park:quoted
Recently I observed performance regression regarding virtio-blk, especially different IO bandwidths between qemu-kvm 0.14.1 and 1.0. So I want to share the benchmark results, and ask you what the reason would be.Hi, I think I found the problem, there is no regression in the code. I think the problem is, that qmeu-kvm with the IO-Thread enabled doesn't produce enough cpu load to get the core to a higher cpu frequency, because the load is distributed to two threads. If I change the cpu governor to "performance" the result from the master branch is better than from the v0.14.1 branch. I get the same results on a serversystem without powermanagment activated. @Dongsu Could you confirm those findings?
Yes, I can confirm that. I just tested with different CPU governor configs, "ondemand" and "performance". (qemu-kvm 1.0, AMD Phenom II X4 955) The result is more or less like yours. Bandwidth with "performance" gets more than 100% better than that with "ondemand". That looks definitely one of the reasons of regressions I experienced. Actually I had always tested with "ondemand", which I haven't noticed. Good catch, thanks! Dongsu
1. Test on i7 Laptop with Cpu governor "ondemand". v0.14.1 bw=63492KB/s iops=15873 bw=63221KB/s iops=15805 v1.0 bw=36696KB/s iops=9173 bw=37404KB/s iops=9350 master bw=36396KB/s iops=9099 bw=34182KB/s iops=8545 Change the Cpu governor to "performance" master bw=81756KB/s iops=20393 bw=81453KB/s iops=20257 2. Test on AMD Istanbul without powermanagement activated. v0.14.1 bw=53167KB/s iops=13291 bw=61386KB/s iops=15346 v1.0 bw=43599KB/s iops=10899 bw=46288KB/s iops=11572 master bw=60678KB/s iops=15169 bw=62733KB/s iops=15683 -martin