Hello Radek,
what I am proposing is not closely related to libvirt, but solves your problem
configurable choice-by-choice.
I have a OpenSource-Project, which currently just uses commandline calls.
The utility therefore scans during each call either for available executables,
or uses configured pathnames from a configuration file for QEMU
and KVM.
What it does is e.g. the storage of automatically created configuration
files (created by ctys-createConfVM), which contains the actual call of the
executable, including the specific CPU-ARCH.
So you can install KVM support and QEMU with full scope of CPUs, and fix
within the defined ASCII configuration file to use a specific QEMU executable,
in addition the variant of the CPU. A too for the scan and check of actual
operation state for all available QEMU-executables and KVM(ctys-plugins) is
contained too.
The installed online-help is available too at:
http://www.UnifiedSessionsManager.org
http://www.unifiedsessionsmanager.eu/doc/en/html/doc.html
For various configuration Use-Cases related to QEMU/KVM refer to:
http://www.unifiedsessionsmanager.org/doc/en/html/man7/ctys-configuration-QEMU.html
These comprise standard linux examples by KVM and embedded emulation
examples for:
->QEMU-arm-test
->QEMU-coldfire-test
->QNX-6.4.0
->Android
->MeeGo
The virlib is in current version just used by virsh for Xen.
Arno
----------------------------------------------------------------------------
Arno-Can Uestuensoez
www.i4p.com
-----Original Message-----
From: Radek Hladik [mailto:radek@eadresa.cz]
Sent: Monday, December 27, 2010 12:42 PM
To: libvirt-list@redhat.com
Subject: [libvirt] Kvm virtualization vs emulation
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
hvm
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
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list