Slow disk IO for all guests with all disc modes and types.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
libvirt (Ubuntu) |
Confirmed
|
Low
|
Unassigned |
Bug Description
Very slow disk throughput for all guest OS's. Windows seems to be the slowest at ~3MBps. Linux guests usually get ~18MBps. All tests performed on two physical hosts.
Host1: Intel Core2 - 2.8GHz, 4GB RAM, 2 SATA2 7500RPM discs in an mdraid0.
Host2: Intel Core2 Quad - 2.4GHz, 5GB RAM, 6 SATA2 7500RPM discs. Mix of hw raid0/5, mdraid0/5, LVM, and LVM on mdraid5.
Tested on both Ubuntu 9.10 and Ubuntu Lucid Beta1.
Tested disc IO by copying a large file (>100MB).
Tested against the following guests with the following average results:
-Windows XP x86 - <4MBps - Installation takes >8 hours.
-Ubuntu 9.10 server - <=20MBps
-Ubuntu 9.10 server built for virtualization (vmbuilder virt optimization) - <=20MBps
Tested on multiple hosts with multiple configurations. Same results on all physical hosts.
Guest disk types: raw/qcow2, preallocated/thin provisioning, IDE/SCSI/VirtIO emulation. (Virtio emul only on Linux guests)
Host disk types: ext3/4 on disc, ext3/4 on LVM on disc, ext3/4 on LVM on mdraid5 (3 7500RPM SATA2).
Average host disk throughput: ext3/4 on disc - 80MBps, ext3/4 on LVM on disc - 80MBps, ext3/4 on LVM on mdraid5 - 75MBps
Average guest disk throughput (WindowsXP): 3MBps on all hosts.
Average guest disk throughput (Linux): 18MBps on all hosts.
I also did a few non standard tests to rule some things out.
1. Hosted WindowsXP guest image on /dev/shm. This yielded much better, but still very poor results of ~20MBps.
2. Tested all guests on all hosts using both KVM and QEMU with the same results.
3. Tested all possible guest disc emulation modes on all guests, with no variation in results.
3. Tested WindowsXP guest image on an mdraid0 of 2 7500RPM Sata2 discs (160MBps on host). Same result. <4MBps.
Possibly related:
-When creating guest images using virt-manager, on a FS under LVM, thin provisioning is ALWAYS the norm. Specifying a disc allocation the same size as the guest image, always results in a thin-provisioned guest image. Creating images on a FS without LVM works correctly. As stated though, I've seen the same performance regardless of thin-provisioning.
I'm not sure what package is causing the problem. I tested against both kvm and qemu with the same result, so I suspect libvirt, but I don't know enough yet about how the 2/3 interact. I believe my testing has ruled out the possibility of any problems with the host FS/discs.
ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: libvirt-bin 0.7.5-5ubuntu15
ProcVersionSign
Uname: Linux 2.6.32-16-generic x86_64
NonfreeKernelMo
Architecture: amd64
Date: Sun Mar 28 12:13:13 2010
InstallationMedia: Ubuntu 10.04 "Lucid Lynx" - Beta amd64 (20100317.1)
ProcEnviron:
LANGUAGE=
PATH=(custom, no user)
LANG=en_US.utf8
SHELL=/bin/bash
SourcePackage: libvirt
description: | updated |
tags: |
added: cache ext3 ext4 libvirt qemu writeback removed: amd64 apport-bug |
Changed in libvirt (Ubuntu): | |
status: | Incomplete → Confirmed |
Could you describe which commands you've used to:
1. create the guests
2. start the guests
3. run the benchmarks