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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.