-
-
Save TheManchineel/000f6260f61c5b342532a15ad8b60fee to your computer and use it in GitHub Desktop.
My VFIO setup for virtual gaming (Updated: 2026-04-03)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <?xml version='1.0' encoding='UTF-8'?> | |
| <domain type='kvm' id='5'> | |
| <name>ark-gwynbleidd</name> | |
| <uuid>545fb3e7-f93a-b220-323c-0ceaa7fb02d2</uuid> | |
| <description>Windows 11 VM for Gaming</description> | |
| <metadata> | |
| <vmtemplate xmlns="http://unraid" name="Windows 11" iconold="windows11.png" icon="windows11.png" os="windowstpm" webui="" storage="default"/> | |
| </metadata> | |
| <memory unit='KiB'>33554432</memory> | |
| <currentMemory unit='KiB'>33554432</currentMemory> | |
| <memoryBacking> | |
| <hugepages> | |
| <page size='1048576' unit='KiB'/> | |
| </hugepages> | |
| <nosharepages/> | |
| <source type='memfd'/> | |
| <access mode='shared'/> | |
| </memoryBacking> | |
| <vcpu placement='static'>14</vcpu> | |
| <iothreads>1</iothreads> | |
| <cputune> | |
| <vcpupin vcpu='0' cpuset='1'/> | |
| <vcpupin vcpu='1' cpuset='17'/> | |
| <vcpupin vcpu='2' cpuset='2'/> | |
| <vcpupin vcpu='3' cpuset='18'/> | |
| <vcpupin vcpu='4' cpuset='3'/> | |
| <vcpupin vcpu='5' cpuset='19'/> | |
| <vcpupin vcpu='6' cpuset='4'/> | |
| <vcpupin vcpu='7' cpuset='20'/> | |
| <vcpupin vcpu='8' cpuset='5'/> | |
| <vcpupin vcpu='9' cpuset='21'/> | |
| <vcpupin vcpu='10' cpuset='6'/> | |
| <vcpupin vcpu='11' cpuset='22'/> | |
| <vcpupin vcpu='12' cpuset='7'/> | |
| <vcpupin vcpu='13' cpuset='23'/> | |
| <emulatorpin cpuset='8-15,24-31'/> | |
| <iothreadpin iothread='1' cpuset='8-15,24-31'/> | |
| </cputune> | |
| <resource> | |
| <partition>/machine</partition> | |
| </resource> | |
| <os> | |
| <type arch='x86_64' machine='pc-q35-9.2'>hvm</type> | |
| <loader readonly='yes' type='pflash' format='raw'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi-tpm.fd</loader> | |
| <nvram format='raw'>/etc/libvirt/qemu/nvram/545fb3e7-f93a-b220-323c-0ceaa7fb02d2_VARS-pure-efi-tpm.fd</nvram> | |
| </os> | |
| <features> | |
| <acpi/> | |
| <apic/> | |
| <hyperv mode='custom'> | |
| <relaxed state='on'/> | |
| <vapic state='on'/> | |
| <spinlocks state='on' retries='8191'/> | |
| <vpindex state='on'/> | |
| <synic state='on'/> | |
| <stimer state='on'/> | |
| <vendor_id state='on' value='none'/> | |
| </hyperv> | |
| <smm state='on'/> | |
| </features> | |
| <cpu mode='host-passthrough' check='none' migratable='off'> | |
| <topology sockets='1' dies='1' clusters='1' cores='7' threads='2'/> | |
| <cache mode='passthrough'/> | |
| <feature policy='require' name='topoext'/> | |
| </cpu> | |
| <clock offset='utc'> | |
| <timer name='hpet' present='no'/> | |
| <timer name='hypervclock' present='yes'/> | |
| <timer name='pit' tickpolicy='delay'/> | |
| <timer name='rtc' tickpolicy='catchup'/> | |
| </clock> | |
| <on_poweroff>destroy</on_poweroff> | |
| <on_reboot>restart</on_reboot> | |
| <on_crash>restart</on_crash> | |
| <devices> | |
| <emulator>/usr/local/sbin/qemu</emulator> | |
| <controller type='pci' index='0' model='pcie-root'> | |
| <alias name='pcie.0'/> | |
| </controller> | |
| <controller type='pci' index='1' model='pcie-root-port'> | |
| <model name='pcie-root-port'/> | |
| <target chassis='1' port='0x8'/> | |
| <alias name='pci.1'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0' multifunction='on'/> | |
| </controller> | |
| <controller type='pci' index='2' model='pcie-root-port'> | |
| <model name='pcie-root-port'/> | |
| <target chassis='2' port='0x9'/> | |
| <alias name='pci.2'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> | |
| </controller> | |
| <controller type='pci' index='3' model='pcie-root-port'> | |
| <model name='pcie-root-port'/> | |
| <target chassis='3' port='0xa'/> | |
| <alias name='pci.3'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> | |
| </controller> | |
| <controller type='pci' index='4' model='pcie-root-port'> | |
| <model name='pcie-root-port'/> | |
| <target chassis='4' port='0xb'/> | |
| <alias name='pci.4'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x3'/> | |
| </controller> | |
| <controller type='pci' index='5' model='pcie-root-port'> | |
| <model name='pcie-root-port'/> | |
| <target chassis='5' port='0xc'/> | |
| <alias name='pci.5'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x4'/> | |
| </controller> | |
| <controller type='pci' index='6' model='pcie-root-port'> | |
| <model name='pcie-root-port'/> | |
| <target chassis='6' port='0xd'/> | |
| <alias name='pci.6'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x5'/> | |
| </controller> | |
| <controller type='pci' index='7' model='pcie-root-port'> | |
| <model name='pcie-root-port'/> | |
| <target chassis='7' port='0xe'/> | |
| <alias name='pci.7'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x6'/> | |
| </controller> | |
| <controller type='virtio-serial' index='0'> | |
| <alias name='virtio-serial0'/> | |
| <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/> | |
| </controller> | |
| <controller type='sata' index='0'> | |
| <alias name='ide'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/> | |
| </controller> | |
| <controller type='usb' index='0' model='ich9-ehci1'> | |
| <alias name='usb'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/> | |
| </controller> | |
| <controller type='usb' index='0' model='ich9-uhci1'> | |
| <alias name='usb'/> | |
| <master startport='0'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/> | |
| </controller> | |
| <controller type='usb' index='0' model='ich9-uhci2'> | |
| <alias name='usb'/> | |
| <master startport='2'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/> | |
| </controller> | |
| <controller type='usb' index='0' model='ich9-uhci3'> | |
| <alias name='usb'/> | |
| <master startport='4'/> | |
| <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/> | |
| </controller> | |
| <interface type='bridge'> | |
| <mac address='52:54:00:2f:0b:5f'/> | |
| <source bridge='br0'/> | |
| <target dev='vnet6'/> | |
| <model type='virtio'/> | |
| <alias name='net0'/> | |
| <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> | |
| </interface> | |
| <serial type='pty'> | |
| <source path='/dev/pts/1'/> | |
| <target type='isa-serial' port='0'> | |
| <model name='isa-serial'/> | |
| </target> | |
| <alias name='serial0'/> | |
| </serial> | |
| <console type='pty' tty='/dev/pts/1'> | |
| <source path='/dev/pts/1'/> | |
| <target type='serial' port='0'/> | |
| <alias name='serial0'/> | |
| </console> | |
| <channel type='unix'> | |
| <source mode='bind' path='/run/libvirt/qemu/channel/5-ark-gwynbleidd/org.qemu.guest_agent.0'/> | |
| <target type='virtio' name='org.qemu.guest_agent.0' state='connected'/> | |
| <alias name='channel0'/> | |
| <address type='virtio-serial' controller='0' bus='0' port='1'/> | |
| </channel> | |
| <input type='mouse' bus='ps2'> | |
| <alias name='input0'/> | |
| </input> | |
| <input type='keyboard' bus='ps2'> | |
| <alias name='input1'/> | |
| </input> | |
| <tpm model='tpm-tis'> | |
| <backend type='emulator' version='2.0' persistent_state='yes'/> | |
| <alias name='tpm0'/> | |
| </tpm> | |
| <audio id='1' type='none'/> | |
| <hostdev mode='subsystem' type='pci' managed='yes'> | |
| <driver name='vfio'/> | |
| <source> | |
| <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> | |
| </source> | |
| <alias name='hostdev0'/> | |
| <address type='pci' domain='0x0000' bus='0x07' slot='0x00' function='0x0' multifunction='on'/> | |
| </hostdev> | |
| <hostdev mode='subsystem' type='pci' managed='yes'> | |
| <driver name='vfio'/> | |
| <source> | |
| <address domain='0x0000' bus='0x01' slot='0x00' function='0x1'/> | |
| </source> | |
| <alias name='hostdev1'/> | |
| <address type='pci' domain='0x0000' bus='0x07' slot='0x00' function='0x1'/> | |
| </hostdev> | |
| <hostdev mode='subsystem' type='pci' managed='yes'> | |
| <driver name='vfio'/> | |
| <source> | |
| <address domain='0x0000' bus='0x02' slot='0x00' function='0x0'/> | |
| </source> | |
| <boot order='2'/> | |
| <alias name='hostdev2'/> | |
| <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/> | |
| </hostdev> | |
| <hostdev mode='subsystem' type='pci' managed='yes'> | |
| <driver name='vfio'/> | |
| <source> | |
| <address domain='0x0000' bus='0x03' slot='0x00' function='0x0'/> | |
| </source> | |
| <alias name='hostdev3'/> | |
| <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/> | |
| </hostdev> | |
| <hostdev mode='subsystem' type='usb' managed='no'> | |
| <source> | |
| <vendor id='0x13d3'/> | |
| <product id='0x3588'/> | |
| <address bus='3' device='2'/> | |
| </source> | |
| <alias name='hostdev4'/> | |
| <address type='usb' bus='0' port='1'/> | |
| </hostdev> | |
| <watchdog model='itco' action='reset'> | |
| <alias name='watchdog0'/> | |
| </watchdog> | |
| <memballoon model='none'/> | |
| </devices> | |
| <seclabel type='dynamic' model='dac' relabel='yes'> | |
| <label>+0:+100</label> | |
| <imagelabel>+0:+100</imagelabel> | |
| </seclabel> | |
| </domain> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment