[libvirt] Kvm virtualization vs emulation

Radek Hladik radek at eadresa.cz
Mon Dec 27 11:42:08 UTC 2010


Wishing Merry Christmas to all.

I am preparing new production host for libvirt and I did encounter one 
issue I am a little confused about. I am using libvirt 0.8.6 with qemu 
0.13 (both built for F13 from F14 SRPMS). When I create domain with
  <type arch='x86_64' machine='pc-0.13'>hvm</type>
libvirt executes qemu-system-x86_64 with -enable-kvm option. The other 
host where I use libvirt 0.8.2 is running qemu-kvm for similar domain. 
The problem is that qemu-system with -enable-kvm is subjectively using 
qemu emulation instead of KVM full virtualization - there is nothing in 
log or so but the guest is slow and uses a lot of CPU for simple tasks. 
If I do
cp /usr/bin/qemu-kvm /usr/bin/qemu-system-x68_64
the guest runs faster, uses less CPU on host, etc... Just booting 
RIPLinux is cca 3 times faster (about 10 secs vs 30).

So my questions are:
1) what is the logic of choosing which qemu-something to run?
2) is there any way how to force libvirt to disable the qemu emulation 
at all? I'd prefer not to start domain that would not run with full 
virtualization at all. There is no requirement for emulation on this 
host and it is a huge waste of resources.
3) Is there a way how to check qemu process if it is using the full 
virtualizaiton? As I understand it then KVM allows processes to use some 
sort of guest mode process (in addition to user mode and kernel mode) so 
I should be able to check it but I did not find out how.


Radek




More information about the libvir-list mailing list