w0den Posted April 23, 2018 Share Posted April 23, 2018 Hi, Note, I edited this post. Originally I thought the main issue was audio, but it has become clear that the guest VM freezes about once every 30 seconds for a very short time (100 ms - 500 ms). My build is as fallows: Mother Board: Asrock Z370 Taichi CPU: Intel I7-8700K Memory: G.Skill Ripjav V 32 GB DDR4 3000 HD for VM: Samsun 960EVO (this is stubbed out and passed through) PCiE USB card: Inateck KT4001 (I passed the entire card through) PCIe Sata Controller: LSI SAS 9207-8i (though this is just being used for the unraid disks) GPU: NVidia GTX 760 (passed through to the VM) Other notes: - Enable PCIe ACS Overide = Yes (all my pcie devices were in the same iommu group, and I wanted to pass through one of the onboard USB controllers). - I pinned 6 of the 12 cores to my VMRacerX.xml - I have attached my KVM xml file - I have all the virtualization stuff set up in the system bios - I have tried everything that I can find in the post about CPU pinning - I have used the tips and tweeks plugin to - disable nic flow control and offloading - set vm.dirty_background_ratio to 2 - set vm.dirty_ratio to 3 - I have run the LatencyMon, and I get a message about latency, however, it always seems to be in different parts of the system. Any help would be greatly appreciated. I am happy to provide any other information . My KVM XML: <domain type='kvm'> <name>RacerX</name> <uuid>cc25b8b3-78ab-1b1b-8f69-1c997ababc10</uuid> <metadata> <vmtemplate xmlns="unraid" name="Windows 10" icon="windows.png" os="windows10"/> </metadata> <memory unit='KiB'>8388608</memory> <currentMemory unit='KiB'>8388608</currentMemory> <memoryBacking> <nosharepages/> </memoryBacking> <vcpu placement='static'>4</vcpu> <cputune> <vcpupin vcpu='0' cpuset='4'/> <vcpupin vcpu='1' cpuset='10'/> <vcpupin vcpu='2' cpuset='5'/> <vcpupin vcpu='3' cpuset='11'/> <emulatorpin cpuset='0,6'/> </cputune> <os> <type arch='x86_64' machine='pc-i440fx-2.11'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader> <nvram>/etc/libvirt/qemu/nvram/cc25b8b3-78ab-1b1b-8f69-1c997ababc10_VARS-pure-efi.fd</nvram> <boot dev='hd'/> </os> <features> <acpi/> <apic/> <hyperv> <relaxed state='on'/> <vapic state='on'/> <spinlocks state='on' retries='8191'/> <vendor_id state='on' value='none'/> </hyperv> </features> <cpu mode='host-passthrough' check='none'> <topology sockets='1' cores='2' threads='2'/> </cpu> <clock offset='localtime'> <timer name='hypervclock' present='yes'/> <timer name='hpet' present='no'/> </clock> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <emulator>/usr/local/sbin/qemu</emulator> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/user/isos/virtio-win-0.1.141-1.iso'/> <target dev='hdb' bus='ide'/> <readonly/> <address type='drive' controller='0' bus='0' target='0' unit='1'/> </disk> <controller type='usb' index='0' model='qemu-xhci'> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/> </controller> <controller type='pci' index='0' model='pci-root'/> <controller type='ide' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <controller type='virtio-serial' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </controller> <interface type='bridge'> <mac address='52:54:00:5e:4c:be'/> <source bridge='br0'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </interface> <serial type='pty'> <target type='isa-serial' port='0'> <model name='isa-serial'/> </target> </serial> <console type='pty'> <target type='serial' port='0'/> </console> <channel type='unix'> <target type='virtio' name='org.qemu.guest_agent.0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </source> <rom file='/mnt/user/domains/vbios/GK104-uefi.rom'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x00' slot='0x17' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x03' slot='0x00' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x05' slot='0x00' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x06' slot='0x00' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x0d' slot='0x00' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/> </hostdev> <memballoon model='virtio'> <address type='pci' domain='0x0000' bus='0x00' slot='0x0b' function='0x0'/> </memballoon> </devices> </domain> My syslinux configuration: default menu.c32 menu title Lime Technology, Inc. prompt 0 timeout 100 label unRAID OS menu default kernel /bzimage nvme, pci-USB, Intel Sata, onboard USB append isolcpus=4,5,10,11 pcie_acs_override=downstream vfio-pci.ids=144d:a804,1b73:1100,8086:2822,1b21:2142 initrd=/bzroot label unRAID OS GUI Mode kernel /bzimage append pcie_acs_override=downstream initrd=/bzroot,/bzroot-gui label unRAID OS Safe Mode (no plugins, no GUI) kernel /bzimage append pcie_acs_override=downstream initrd=/bzroot unraidsafemode label unRAID OS GUI Safe Mode (no plugins) kernel /bzimage append pcie_acs_override=downstream initrd=/bzroot,/bzroot-gui unraidsafemode label Memtest86+ kernel /memtest Thanks, w0den Link to comment
w0den Posted April 27, 2018 Author Share Posted April 27, 2018 I finally figured it out! I noticed that every time their was a pause there was a small spike in CPU on vCPU 0. I then watched the Task Manager very closely and saw that a program called Corsair Link was using 2% - 5% of my CPU, and jumping during those spikes. Cosair Link is a program that interfaces via USB with my cooler and gives stats on fanspeed, cpu speed, etc. and gives you control over LED color and fan speed (my cooler is Corsair H80i V2). My cooler is plugged into one of the USB devices that is not passed through to my host (I am not sure if that matters). Removed Corsair Link, and vioala everything works, no stuttering video or short freezes! At some point I will try plugging the cooler into a passed through usb controller, but I suspect the issue is that it is trying to get stats on virtualized hardware. Hope this helps someone else. Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.