Hello,

This is about a difference in QEMU's CPU consumption when the guest is idle.

Host: Intel Core i5-3330 running the kernel version 4.15.15-1-ARCH, and QEMU
version 2.11.1.

The QEMU command to use is:

qemu-system-x86_64 -m 512 -cpu host -smp 2 \
-enable-kvm -netdev user,id=user.0 -device e1000,netdev=user.0 \
-cdrom archlinux-2018.04.01-x86_64.iso -boot d

Let the guest boot to the archiso login prompt. Now, on the host machine,
run 'top' and notice that the qemu-system-x86_64 process consumes < 0.7% CPU.
Similar results appear if the netdev model chosen is e1000e.

Change the command to replace the model e1000 with pcnet:
qemu-system-x86_64 -m 512 -cpu host -smp 2 \
-enable-kvm -netdev user,id=user.0 -device pcnet,netdev=user.0 \
-cdrom archlinux-2018.04.01-x86_64.iso -boot d

Let the guest boot to the archiso login prompt. Now, on the host machine,
run 'top' and notice that the qemu-system-x86_64 process consumes between
3% and 4% CPU.

Running 'perf record' on the process here shows the function
g_main_context_check as contributing to the maximum perf overhead.

Could you help me understand the differences, in the implementation
of the models, that result in such differing idle CPU consumption?

Thank you,
Amol

Reply via email to