May 25, 201610 yr Hey guys, long time lurker here and i've finally given up and need your help. I have very poor VM performance with win 10 (I have also tried win8 and ubuntu, both no good). I have been searching around the forums and haven't found a solution that works. Fullscreen video in chrome is extremely laggy. In games I am usually around 15-25fps with very low settings. One thing I did to try and narrow it down was I disabled cool n quiet in bios to keep the cpu at 4ghz, but it didn't change the performance at all. I am thinking GPU? Any thoughts? Also I should note that I have tried pinning anywhere from 2-6 cpus, didn't make a difference. Specs: Unraid Plus 6.1.9 AMD FX-8350 ASUS M5A99FX PRO R2.0 MSI r9 280 3gb 16gb ddr3 1866 VMs are installed on cache samsung 850 evo Win 10 VM XML: <domain type='kvm' id='4' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'> <name>win10</name> <uuid>4dbb0bdd-296f-acff-ec99-f3a2639c8f10</uuid> <metadata> <vmtemplate name="Custom" icon="windows.png" os="windows"/> </metadata> <memory unit='KiB'>8388608</memory> <currentMemory unit='KiB'>8388608</currentMemory> <memoryBacking> <nosharepages/> <locked/> </memoryBacking> <vcpu placement='static'>2</vcpu> <cputune> <vcpupin vcpu='0' cpuset='6'/> <vcpupin vcpu='1' cpuset='7'/> </cputune> <resource> <partition>/machine</partition> </resource> <os> <type arch='x86_64' machine='pc-i440fx-2.3'>hvm</type> </os> <features> <acpi/> <apic/> <hyperv> <relaxed state='on'/> <vapic state='on'/> <spinlocks state='on' retries='8191'/> </hyperv> </features> <cpu mode='host-passthrough'> <topology sockets='1' cores='2' threads='1'/> </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/bin/qemu-system-x86_64</emulator> <disk type='file' device='disk'> <driver name='qemu' type='raw' cache='writeback'/> <source file='/mnt/cache/vdisks/win10/vdisk1.img'/> <backingStore/> <target dev='hdc' bus='virtio'/> <boot order='1'/> <alias name='virtio-disk2'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </disk> <disk type='file' device='disk'> <driver name='qemu' type='raw' cache='writeback'/> <source file='/mnt/cache/vdisks/games/vdisk2.img'/> <backingStore/> <target dev='hdd' bus='virtio'/> <alias name='virtio-disk3'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/user/ISOs/Win10_1511_1_English_x64.iso'/> <backingStore/> <target dev='hda' bus='ide'/> <readonly/> <boot order='2'/> <alias name='ide0-0-0'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/user/ISOs/virtio-win-0.1.112.iso'/> <backingStore/> <target dev='hdb' bus='ide'/> <readonly/> <alias name='ide0-0-1'/> <address type='drive' controller='0' bus='0' target='0' unit='1'/> </disk> <controller type='usb' index='0'> <alias name='usb'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <controller type='pci' index='0' model='pci-root'> <alias name='pci.0'/> </controller> <controller type='ide' index='0'> <alias name='ide'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <controller type='virtio-serial' index='0'> <alias name='virtio-serial0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </controller> <interface type='bridge'> <mac address='52:54:00:49:08:26'/> <source bridge='br0'/> <target dev='vnet0'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </interface> <serial type='pty'> <source path='/dev/pts/0'/> <target port='0'/> <alias name='serial0'/> </serial> <console type='pty' tty='/dev/pts/0'> <source path='/dev/pts/0'/> <target type='serial' port='0'/> <alias name='serial0'/> </console> <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/win10.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> <hostdev mode='subsystem' type='usb' managed='yes'> <source> <vendor id='0x046d'/> <product id='0xc080'/> <address bus='4' device='3'/> </source> <alias name='hostdev0'/> </hostdev> <hostdev mode='subsystem' type='usb' managed='yes'> <source> <vendor id='0x046d'/> <product id='0xc24d'/> <address bus='4' device='2'/> </source> <alias name='hostdev1'/> </hostdev> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </memballoon> </devices> <qemu:commandline> <qemu:arg value='-device'/> <qemu:arg value='ioh3420,bus=pci.0,addr=1c.0,multifunction=on,port=2,chassis=1,id=root.1'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on'/> <qemu:arg value='-device'/> <qemu:arg value='vfio-pci,host=01:00.1,bus=root.1,addr=00.1'/> </qemu:commandline> </domain> System Devices: PCI Devices 00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (external gfx0 port B) (rev 02) 00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD/ATI] RD990 I/O Memory Management Unit (IOMMU) 00:02.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (PCI express gpp port B) 00:04.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (PCI express gpp port D) 00:0b.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (NB-SB link) 00:0d.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (external gfx1 port B) 00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] (rev 40) 00:12.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller 00:12.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller 00:13.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller 00:13.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller 00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 SMBus Controller (rev 42) 00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 Azalia (Intel HDA) (rev 40) 00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 LPC host controller (rev 40) 00:14.4 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SBx00 PCI to PCI Bridge (rev 40) 00:14.5 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI2 Controller 00:15.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB700/SB800/SB900 PCI to PCI bridge (PCIE port 0) 00:15.1 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB700/SB800/SB900 PCI to PCI bridge (PCIE port 1) 00:15.2 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB900 PCI to PCI bridge (PCIE port 2) 00:15.3 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] SB900 PCI to PCI bridge (PCIE port 3) 00:16.0 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB OHCI0 Controller 00:16.2 USB controller: Advanced Micro Devices, Inc. [AMD/ATI] SB7x0/SB8x0/SB9x0 USB EHCI Controller 00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 0 00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 1 00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 2 00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 3 00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 4 00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h Processor Function 5 01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti PRO [Radeon HD 7950/8950 OEM / R9 280] 01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti XT HDMI Audio [Radeon HD 7970 Series] 06:00.0 SATA controller: ASMedia Technology Inc. ASM1062 Serial ATA Controller (rev 01) 07:00.0 USB controller: ASMedia Technology Inc. ASM1042A USB 3.0 Host Controller 08:00.0 USB controller: ASMedia Technology Inc. ASM1042A USB 3.0 Host Controller 09:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 09) IOMMU Groups /sys/kernel/iommu_groups/0/devices/0000:00:00.0 /sys/kernel/iommu_groups/1/devices/0000:00:02.0 /sys/kernel/iommu_groups/2/devices/0000:00:04.0 /sys/kernel/iommu_groups/3/devices/0000:00:0b.0 /sys/kernel/iommu_groups/4/devices/0000:00:0d.0 /sys/kernel/iommu_groups/5/devices/0000:00:11.0 /sys/kernel/iommu_groups/6/devices/0000:00:12.0 /sys/kernel/iommu_groups/6/devices/0000:00:12.2 /sys/kernel/iommu_groups/7/devices/0000:00:13.0 /sys/kernel/iommu_groups/7/devices/0000:00:13.2 /sys/kernel/iommu_groups/8/devices/0000:00:14.0 /sys/kernel/iommu_groups/9/devices/0000:00:14.2 /sys/kernel/iommu_groups/10/devices/0000:00:14.3 /sys/kernel/iommu_groups/11/devices/0000:00:14.4 /sys/kernel/iommu_groups/12/devices/0000:00:14.5 /sys/kernel/iommu_groups/13/devices/0000:00:15.0 /sys/kernel/iommu_groups/13/devices/0000:00:15.1 /sys/kernel/iommu_groups/13/devices/0000:00:15.2 /sys/kernel/iommu_groups/13/devices/0000:00:15.3 /sys/kernel/iommu_groups/13/devices/0000:06:00.0 /sys/kernel/iommu_groups/13/devices/0000:07:00.0 /sys/kernel/iommu_groups/13/devices/0000:08:00.0 /sys/kernel/iommu_groups/13/devices/0000:09:00.0 /sys/kernel/iommu_groups/14/devices/0000:00:16.0 /sys/kernel/iommu_groups/14/devices/0000:00:16.2 /sys/kernel/iommu_groups/15/devices/0000:01:00.0 /sys/kernel/iommu_groups/15/devices/0000:01:00.1 USB Devices Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 011 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 010 Device 002: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 010 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 009 Device 002: ID 125f:312b A-DATA Technology Co., Ltd. Superior S102 Pro Bus 009 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 008 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 003: ID 046d:c080 Logitech, Inc. Bus 004 Device 002: ID 046d:c24d Logitech, Inc. G710 Gaming Keyboard Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub SCSI Devices [0:0:0:0] disk ADATA USB Flash Drive 1100 /dev/sda [1:0:0:0] disk ATA Samsung SSD 850 2B6Q /dev/sdb [2:0:0:0] disk ATA Crucial_CT128M55 MU01 /dev/sdc [3:0:0:0] disk ATA ST3000DM001-1ER1 CC25 /dev/sdd [4:0:0:0] disk ATA TOSHIBA MD04ACA5 FP2A /dev/sde [5:0:0:0] disk ATA WDC WD50EZRZ-32G 0A80 /dev/sdf [7:0:0:0] disk ATA WDC WD5000BEVT-2 1A01 /dev/sdg [8:0:0:0] disk ATA WDC WD30EZRX-00M 0A80 /dev/sdh Let me know what other info is needed Thanks
May 25, 201610 yr I'd recommend trying the 6.2 beta as it has updated virtualization tech that may perform better for you (newer kernel, newer qemu, newer libvirt, etc).
May 26, 201610 yr AMD FX is the problem, atleast i think... There is already an running post on this subject, see https://lime-technology.com/forum/index.php?topic=47089.0 The OP has almost the same hardware config as you. I also use an AMD FX series, and i have the same problem. But im 99% sure that the bottleneck is the CPU. It seems unraid, libtvirt, vfio, kvm, qemu doesnt like the amd fx series. I have an Intel CPU (i5 4670k) also and im going to test this with Unraid.
May 26, 201610 yr AMD FX is the problem, atleast i think... There is already an running post on this subject, see https://lime-technology.com/forum/index.php?topic=47089.0 The OP has almost the same hardware config as you. I also use an AMD FX series, and i have the same problem. But im 99% sure that the bottleneck is the CPU. It seems unraid, libtvirt, vfio, kvm, qemu doesnt like the amd fx series. I have an Intel CPU (i5 4670k) also and im going to test this with Unraid. I did not have any performance problem with my AMD fx CPU, so the AMD fx CPU is not the problem as far as I see it.
May 26, 201610 yr Oke, can you tell us something about the setup and config: Hardware: (cpu,mobo,gpu etc) unRaid version: Software: (OS, driver version GPU) Its not that i dont believe you, but im a little skeptic. There are a few people that seem to suffer from stuttering/low fps. see: https://lime-technology.com/forum/index.php?topic=49319.0 https://lime-technology.com/forum/index.php?topic=47089.0 https://lime-technology.com/forum/index.php?topic=49172.0 They al use an AMD FX CPU and an AMD/ATI based GPU. So likey there is something going on with the AMD FX or AMD based GPU or maby the combination of the two. Maby its just an bad config, but im going to try an intel based cpu with the same GPU to see if maby this causes the problem. Does anyone have any suggestions regarding what to try and test ?
May 26, 201610 yr Generally speaking, we prefer Intel CPUs and NVIDIA GPUs over anything AMD. Add virtual machines to the mix and "prefer" changes to "strongly recommend." While some users may have no problems using AMD devices with virtualization, there are far more that do and far less have issues when using Intel / NVIDIA based hardware. I don't think AMD tests nearly as much as Intel does when it comes to virtualization technology on consumer-class chipsets. Certainly not for their GPUs.
May 28, 201610 yr Author I updated to the latest 6.2 beta, upgrade went flawlessly and I'm loving the dual parity. Games now typically run around 50fps on medium settings. I'm just glad they are playable now, not a hardcore gamer but more of a weekend warrior, so I'm not too picky. Good to know that intel/nvidia is preferred, I may upgrade to a more low power solution in the future and I'll keep that in mind. Thanks for your help.
May 28, 201610 yr You have 8 cores with your cpu. Try this isolaote 4 of your cpu cores from linux by using isocpu in the lixuxsys.config (this will prevent the host linus os from using these cores at all) for example- append isolcpus=4,5,6,7 initrd=/bzroot I dont think your amd cpu does hyperthreading and it is just 8 plain cores, so you dont have to worry about making sure the thread pairs are from the same cpu core. (if your cpu does infact use an amd equivilent of hyperthreading, then make sure you isolate the thread pairs related to the physical core) check by looking at tools, system devices then scroll down to CPU Thread Pairings to check this.) I have had excellent results doing this and has really improved my vms Once you have added the isolcpu to your linuxsys config file reboot your server. Now in your vm manager pin the cores you just isolated to the vm (do not pin any additional cores) After doing this you will need to add a line to your xml (becareful if you edit the vm in future what you added via the xml will be lost) <emulatorpin cpuset=0,1,2,3''/> What this does is to tell the vm that all vm emulation is to be done by vcpu no 0,1,2,3 This is useful as it keeps it off the cores the vm is using and will greatly reduce latency. so you would add it under the vcpu pin part of your xml <cputune> <vcpupin vcpu='2' cpuset='4'/> <vcpupin vcpu='3' cpuset='5'/> <vcpupin vcpu='4' cpuset='6'/> <vcpupin vcpu='5' cpuset='7'/> <emulatorpin cpuset=0,1,2,3''/> </cputune> The only downside to doing this is the isocpu cores are not available to the host (unraid). But for nas operations unraid is very efficient so 2 cores would be fine for it. Running dockers doing transcoding etc obviously will use more resources. However you can pin these isolated cores to dockers aswell even though they have been isolated. If you do pin to a core to a docker aswell then make sure the docker isnt running when you are using the vm or else it will effect the vm performance. Have a look at the excellent post made by dlandon here http://lime-technology.com/forum/index.php?topic=49051.msg472193#msg472193
Archived
This topic is now archived and is closed to further replies.