Why is Qemu Virtual CPU on my kvm guests

kevin asked:

can some one please clarify this.

I am new to kvm and created two guest instances one linux and one windows.

On both Guests, CPU is showing as QEMU virtual CPU,why is it so?

if kvm utilizes hardware virtualization and Qemu an emulator then what is the role of kvm in virtualization,since in this case its showing only emulated cpu,which i believe is the work of Qemu and not kvm.

On xen, which i am familiar guests cpu are shown as it like an actual hardware,even if it is using qemu drivers.

My answer:

By default, QEMU/KVM exposes only a subset of CPU features to guests, so that a VM can be migrated from one CPU to another (e.g. from an Intel Xeon to an AMD Opteron) without any ill effects.

You can override this behavior if you wish, by passing parameters on the qemu command line, or setting the appropriate CPU options in your GUI/XML front end. You can select specific CPU features to expose, or to pass through all CPU features.

If you choose to override any of the parameters, then you will only be able to migrate the VM to another CPU which also has those features. If you choose to pass all host CPU features to the guest, then it will also expose the name of the CPU, and you will be unable to migrate the VM to a CPU of a different type.

The difference between QEMU and KVM is that QEMU is full processor emulation, while KVM provides full hardware virtualization (HVM) using the processor’s native virtualization capability (Intel VT-x or AMD SVM) to provide near-native CPU performance. As a result, the former is much slower than the latter.

View the full question and answer on Server Fault.

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.