From: Gordan Bobic <gordan@bobich.net>
To: kvm@vger.kernel.org
Subject: Re: virtio disk slower than IDE?
Date: Sun, 15 Nov 2009 22:47:59 +0000 [thread overview]
Message-ID: <4B00851F.5060206@bobich.net> (raw)
In-Reply-To: <4AFFFF0D.3090608@redhat.com>
Dor Laor wrote:
> On 11/15/2009 02:00 PM, Gordan Bobic wrote:
>> Dor Laor wrote:
>>> On 11/14/2009 04:23 PM, Gordan Bobic wrote:
>>>> I just tried paravirtualized virtio block devices, and my tests show
>>>> that they are approximately 30% slower than emulated IDE devices. I'm
>>>> guessing this isn't normal. Is this a known issue or am I likely to
>>>> have
>>>> mosconfigured something? I'm using 64-bit RHEL/CentOS 5 (both host and
>>>> guest).
>>>
>>> Please try to change the io scheduler on the host to io scheduler, it
>>> should boost your performance back.
>>
>> I presume you mean the deadline io scheduler. I tried that (kernel
>> parameter elevator=deadline) and it made no measurable difference
>> compared to the cfq scheduler.
>
> What version of kvm do you use? Is it rhel5.4?
It's RHEL 5.4.
$ rpm -qa | grep -i kvm
kmod-kvm-83-105.el5_4.9
kvm-83-105.el5_4.9
> Can you post the qemu cmdline and the perf test in the guest?
Here is what is in the libvirt log:
For IDE emulation:
LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin HOME=/root USER=root
LOGNAME=root /usr/libexec/qemu-kvm -S -M pc -m 2048 -smp 4 -name
RHEL_5_x86-64 -uuid cb44b2c5-e64b-848f-77af-f8e7f02fa2ca
-no-kvm-pit-reinjection -monitor pty -pidfile
/var/run/libvirt/qemu//RHEL_5_x86-64.pid -boot c -drive
file=/var/lib/libvirt/images/RHEL_5_x86-64.img,if=ide,index=0,boot=on
-net nic,macaddr=54:52:00:5a:67:4b,vlan=0,model=e1000 -net
tap,fd=15,script=,vlan=0,ifname=vnet0 -serial pty -parallel none -usb
-vnc 127.0.0.1:0 -k en-gb
For virtio:
LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin HOME=/root USER=root
LOGNAME=root /usr/libexec/qemu-kvm -S -M pc -m 2048 -smp 4 -name
RHEL_5_x86-64 -uuid cb44b2c5-e64b-848f-77af-f8e7f02fa2ca
-no-kvm-pit-reinjection -monitor pty -pidfile
/var/run/libvirt/qemu//RHEL_5_x86-64.pid -boot c -drive
file=/var/lib/libvirt/images/CentOS_5_x86-64.img,if=virtio,index=0,boot=on
-net nic,macaddr=54:52:00:5a:67:4b,vlan=0,model=e1000 -net
tap,fd=15,script=,vlan=0,ifname=vnet0 -serial pty -parallel none -usb
-vnc 127.0.0.1:0 -k en-gb
The test is building the Linux kernel (only taking the second run to
give the test the benefit of local cache):
make clean; make -j8 all; make clean; sync; time make -j8 all
This takes about 10 minutes with IDE disk emulation and about 13 minutes
with virtio. I ran the tests multiple time with most non-essential
services on the host switched off (including cron/atd), and the guest in
single-user mode to reduce the "noise" in the test to the minimum, and
the results are pretty consistent, with virtio being about 30% behind.
> Lastly, do you use cache=wb on qemu? it's just a fun mode, we use
> cache=off only.
I don't see the option being set in the logs, so I'd guess it's whatever
qemu-kvm defaults to.
Gordan
next prev parent reply other threads:[~2009-11-15 22:47 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-14 14:23 virtio disk slower than IDE? Gordan Bobic
2009-11-15 9:51 ` Dor Laor
2009-11-15 12:00 ` Gordan Bobic
2009-11-15 13:15 ` Dor Laor
2009-11-15 22:47 ` Gordan Bobic [this message]
2009-11-16 16:40 ` john cooper
2009-11-16 18:11 ` Charles Duffy
2009-11-16 21:09 ` Dor Laor
-- strict thread matches above, loose matches on Subject: below --
2009-11-16 16:53 john cooper
2009-11-17 1:14 ` Gordan Bobic
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4B00851F.5060206@bobich.net \
--to=gordan@bobich.net \
--cc=kvm@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox