iJumbo Posted December 10, 2019 Share Posted December 10, 2019 Hi, im running a VM with Windows 10 on it, the overall performance of the machine is not bad but when i try, for example, resizing a window or navigate through folders "explorer" starts lagging but not the mouse and everything else. Im running on a test machine with one NVME disk only on the array no cache disks. CPU: Threadripper 1950x GPU: R9 290 DISK: (nvme0n1) xfs If you got any idea please let me know. Thanks VM: <?xml version='1.0' encoding='UTF-8'?> <domain type='kvm' id='1'> <name>Windows</name> <uuid>46fa2a2b-2cd6-25eb-cab6-6e82e079b731</uuid> <metadata> <vmtemplate xmlns="unraid" name="Windows 10" icon="windows.png" os="windows10"/> </metadata> <memory unit='KiB'>20971520</memory> <currentMemory unit='KiB'>20971520</currentMemory> <memoryBacking> <nosharepages/> </memoryBacking> <vcpu placement='static'>28</vcpu> <cputune> <vcpupin vcpu='0' cpuset='2'/> <vcpupin vcpu='1' cpuset='18'/> <vcpupin vcpu='2' cpuset='3'/> <vcpupin vcpu='3' cpuset='19'/> <vcpupin vcpu='4' cpuset='4'/> <vcpupin vcpu='5' cpuset='20'/> <vcpupin vcpu='6' cpuset='5'/> <vcpupin vcpu='7' cpuset='21'/> <vcpupin vcpu='8' cpuset='6'/> <vcpupin vcpu='9' cpuset='22'/> <vcpupin vcpu='10' cpuset='7'/> <vcpupin vcpu='11' cpuset='23'/> <vcpupin vcpu='12' cpuset='8'/> <vcpupin vcpu='13' cpuset='24'/> <vcpupin vcpu='14' cpuset='9'/> <vcpupin vcpu='15' cpuset='25'/> <vcpupin vcpu='16' cpuset='10'/> <vcpupin vcpu='17' cpuset='26'/> <vcpupin vcpu='18' cpuset='11'/> <vcpupin vcpu='19' cpuset='27'/> <vcpupin vcpu='20' cpuset='12'/> <vcpupin vcpu='21' cpuset='28'/> <vcpupin vcpu='22' cpuset='13'/> <vcpupin vcpu='23' cpuset='29'/> <vcpupin vcpu='24' cpuset='14'/> <vcpupin vcpu='25' cpuset='30'/> <vcpupin vcpu='26' cpuset='15'/> <vcpupin vcpu='27' cpuset='31'/> </cputune> <resource> <partition>/machine</partition> </resource> <os> <type arch='x86_64' machine='pc-i440fx-4.0'>hvm</type> <loader readonly='yes' type='pflash'>/usr/share/qemu/ovmf-x64/OVMF_CODE-pure-efi.fd</loader> <nvram>/etc/libvirt/qemu/nvram/46fa2a2b-2cd6-25eb-cab6-6e82e079b731_VARS-pure-efi.fd</nvram> </os> <features> <acpi/> <apic/> <hyperv> <relaxed state='on'/> <vapic state='on'/> <spinlocks state='on' retries='8191'/> <vendor_id state='on' value='none'/> </hyperv> <kvm> <hidden state='on'/> </kvm> </features> <cpu mode='host-passthrough' check='none'> <topology sockets='1' cores='28' threads='1'/> <feature policy='disable' name='hypervisor'/> </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='disk'> <driver name='qemu' type='qcow2' cache='writeback'/> <source file='/mnt/user/domains/Windows/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='cdrom'> <driver name='qemu' type='raw'/> <source file='/mnt/disks/172.16.10.1_isos/Windows 10/Windows10_InsiderPreview_x64_it-it_16299.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.160-1.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='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> <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:9d:64:89'/> <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 type='isa-serial' port='0'> <model name='isa-serial'/> </target> <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/domain-1-Windows/org.qemu.guest_agent.0'/> <target type='virtio' name='org.qemu.guest_agent.0' state='disconnected'/> <alias name='channel0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <input type='tablet' bus='usb'> <alias name='input0'/> <address type='usb' bus='0' port='1'/> </input> <input type='mouse' bus='ps2'> <alias name='input1'/> </input> <input type='keyboard' bus='ps2'> <alias name='input2'/> </input> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x0b' slot='0x00' function='0x0'/> </source> <alias name='hostdev0'/> <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='0x0b' slot='0x00' function='0x1'/> </source> <alias name='hostdev1'/> <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='0x0d' slot='0x00' function='0x3'/> </source> <alias name='hostdev2'/> <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='0x0c' slot='0x00' function='0x3'/> </source> <alias name='hostdev3'/> <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='0x42' slot='0x00' function='0x3'/> </source> <alias name='hostdev4'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/> </hostdev> <memballoon model='none'/> </devices> <seclabel type='dynamic' model='dac' relabel='yes'> <label>+0:+100</label> <imagelabel>+0:+100</imagelabel> </seclabel> </domain> Quote Link to comment
testdasi Posted December 10, 2019 Share Posted December 10, 2019 A few things that come to mind: Do you have Global C State Control turned off? If so, go to your BIOS and turn it back on. It is not required to be off for Threadripper. I also found turning it off negatively affects my NVMe random performance (60% drop!), which could explain your lag when accessing Explorer. SSD in the array isn't trimmed so perhaps that could be the cause but I doubt it since you seem to describe read lag and not write lag. Your 2 iso images buses are "IDE" which is incredibly out of date by now. Change it to SATA. Also your core assignment isn't ideal. The 1950X has 2 chiplets, each chiplet has 2 CCX, each CCX has 4 cores. I have found uneven load spreading across CCX can "waste" as much as a core of performance (so 7 uneven cores perform about as well as 6 cores evenly spread). So I would suggest you try something like: 1-3,5-7,9-11,13-15 + hyperthreading sisters for a total of 24. Bench that out vs your current 28 cores - I have a feeling you may be surprised as to how similar the performance is. Quote Link to comment
iJumbo Posted December 10, 2019 Author Share Posted December 10, 2019 Thanks, i will try to check if C State is on or off. I tested with CrystalDiskMark on windows and the perfomance is like 40MB/s on the 4KiB Q8T8 (read and write) and almost 3GB/s on the Seq so something is wrong. 38 minutes ago, testdasi said: SSD in the array isn't trimmed so perhaps that could be the cause but I doubt it since you seem to describe read lag and not write lag. I don't think you can trim XFS format, correct me if im wrong 38 minutes ago, testdasi said: So I would suggest you try something like: 1-3,5-7,9-11,13-15 + hyperthreading sisters for a total of 24. I will try this too Quote Link to comment
testdasi Posted December 10, 2019 Share Posted December 10, 2019 12 minutes ago, iJumbo said: I don't think you can trim XFS format, correct me if im wrong Yes you can trim xfs. I trimmed my Unassigned and cache xfs disks all the time. It's xfs in the array that can't be trim cuz it's not mounted with discard. Quote Link to comment
iJumbo Posted December 10, 2019 Author Share Posted December 10, 2019 So i can't trim mine becouse is on the array Quote Link to comment
iJumbo Posted December 10, 2019 Author Share Posted December 10, 2019 1 hour ago, testdasi said: A few things that come to mind: Do you have Global C State Control turned off? If so, go to your BIOS and turn it back on. It is not required to be off for Threadripper. I also found turning it off negatively affects my NVMe random performance (60% drop!), which could explain your lag when accessing Explorer. SSD in the array isn't trimmed so perhaps that could be the cause but I doubt it since you seem to describe read lag and not write lag. Your 2 iso images buses are "IDE" which is incredibly out of date by now. Change it to SATA. Also your core assignment isn't ideal. The 1950X has 2 chiplets, each chiplet has 2 CCX, each CCX has 4 cores. I have found uneven load spreading across CCX can "waste" as much as a core of performance (so 7 uneven cores perform about as well as 6 cores evenly spread). So I would suggest you try something like: 1-3,5-7,9-11,13-15 + hyperthreading sisters for a total of 24. Bench that out vs your current 28 cores - I have a feeling you may be surprised as to how similar the performance is. Hi, C State is now Enabled and was on Auto Changed the cores and IDE to SATA But performance is still the same. Quote Link to comment
testdasi Posted December 10, 2019 Share Posted December 10, 2019 I just noticed you have this: <feature policy='disable' name='hypervisor'/> Any particular reason for that? HyperV can also help with performance so perhaps try removing that line. Failing that, maybe try the path to the disk from /mnt/user/domains/Windows/vdisk1.img to /mnt/disk1/domains/Windows/vdisk1.img That would bypass shfs and hopefully improve performance. Failing that, start a new template and pick Q35-4.0.1 as machine type. Other than that, I'm at lost as to what else could cause performance issue. Quote Link to comment
iJumbo Posted December 10, 2019 Author Share Posted December 10, 2019 1 hour ago, testdasi said: <feature policy='disable' name='hypervisor'/> I added this to test. it was normal before and the performance was the same Quote Link to comment
workermaster Posted August 5, 2021 Share Posted August 5, 2021 Hi, I was wondering if the performance issues have been resolved? I have the same issue and was hoping to find a fix for it. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.