[vfio-users] cpu usage in guest != cpu usage in host, even with exclusive pinning

Friedrich Oslage friedrich at oslage.de
Sun Jan 17 09:29:41 UTC 2016


Hi,

my host system is linux-4.4.0 with qemu-2.5.0 and a 4-core i7. Linux is
booted with isolcpus=1-3,5-7 to reserve 3 cores + threads for the
Windows 10 VM.
The VM's 3 cores(2 threads each) are pinned to the respective physical
core/thread. The iothread is pinned to 1-3,5-7.

When i start a simple "openssl speed" in the VM and use the task manager
to pin it to a single cpu, it work's just the way I expect it to work: 1
cpu has 100% usage, visible in both guest's task manager and host's top.

But when I start a game, for instance Diablo 3 or CoD Black Ops III, and
also use the task manager to pin it to a single cpu, the cpu usage shown
in guest's task manager differs from the one shown in host's top: the
guest shows 1 cpu with 100% usage, as expected, but the host shows all 6
cpus with 100% usage.

It only happens with games. If you use other multi-threaded programs
without 3D, for instance prime95, the cpu usage in guest's task manager
is equal to the one in top.

I can only assume vfio is somehow causing this additional cpu usage, but
a it seems to be.... to much.

Did someone else experience this or can enlighten me on what qemu/vfio
is doing with additional cpu time?

Regards,
Friedrich




More information about the vfio-users mailing list