[vfio-users] Looking for performance tips, qemu machine type and pci/pcie-root questionning?

thibaut noah thibaut.noah at gmail.com
Fri Apr 15 03:46:56 UTC 2016

Hello everyone, so i'm still in my endless pursuit of performance.

Currently crawling qemu options a bit, running the command "$
qemu-system-x86_64 -machine help" seems that the main machine for us are
q35 and pci-i440FX.
>From what i read in my online research the main advantage of q35 seems to
be the support of pcie controller instead of just pci, so it might give
more performance?

However replacing pc by q35 and replace pci-root by pcie-root in the
libvirt xml file seems to break nvidia driver, even with removing all
hyperv features, the vendor id being masqued i have to admit i don't
understand why the nvidia drivers are not loading.
My vm is running just fine with the other machine type but if i can gain a
little bit more i would like to.

Also on the performance side, i would like to sum everything that is
possible to do in order to boost the guest system, currently i have this
list :

- hyperv features on libvirt (require to hide vendor_id)
- machine type? (need more specific answers on this)
- 1000 MHz clock resolution on host kernel
- Voluntary preemption scheduling on host kernel
-  Madvise hugepages and hugelbfs on host, also kvm_hugepages need to be
activated (don't forget the xml file)
- cpu configuration in libvirt xml (need to make more bench to find the
perfect config)
- set cpupower to performance mode
- use cset to move all host processes to specific cores reserved for the
system and untouch by the vm (although this one seems to be tricky since
libvirt fail to grab the cores after the use of cset, need some work on
Also, reserving cores for the host system seems pointless atm. With all
cores pinned and use by the vm i crushed my previous setup on benchmark, as
long as one doesn't do anything with the host it seems to be the best
option for performance. (I personnaly made two xml for this very reason,
one to use both systems at the same time, for example in order to do some
programming, and the other for performance only where i don't touch the
host at all as long as the guest os is running)

and that is about everything i found atm. If anyone on the mailing list has
more tweaks, feel free to share.
Please note i try to have the best vm possible for windows gaming, i assume
most people using vfio are gamers anyway.
Have a good day guys and may the mighty power of the loot be with you !
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/vfio-users/attachments/20160415/0074651f/attachment.htm>

More information about the vfio-users mailing list