At my wits end with latency and audio drops in win10vm w/ threadripper 1950x


Tritech

Recommended Posts

Yep, looks like its fixed the driver crippling memory scaling (in windows anyway). Im seeing a 5-10% increase in GPU benchmarks after updating to RC4. :) 

Was hoping for more, but it looks like my bottleneck is my aging CPU now! (2x E5-2670). 

 

Ive been meaning to put my hand in my pocket and upgrade to a threadripper build for a while now.... Im very interested to see what performance gains you guys are getting after this patch...

 

Thankyou @limetech :)

Edited by billington.mark
Link to comment

I'm on i440FX and dunno if it's worth it to switch to Q35.

I had serious issues before with Q35 and i440FX is working kinda good right now.

Switching template to Q35 broke my system the last time and I had to start by zero.

So would like to know if there is much of a difference before starting from scratch again :D

 

Anyone could do some comparison with both machine types on RC4 and share?

 

Specs in signature.

gpgpu.png

Link to comment

@Nooke I'am currently testing a lot of different settings. Main VM runs still on i440fx and i have a second template as Q35 configured with the same devices passthrough as my main VM. So far it looks promising. Still trying to find the best settings for numa settings pinning etc. Will report back later.

 

 

Link to comment
3 minutes ago, bastl said:

@Nooke I'am currently testing a lot of different settings. Main VM runs still on i440fx and i have a second template as Q35 configured with the same devices passthrough as my main VM. So far it looks promising. Still trying to find the best settings for numa settings pinning etc. Will report back later.

 

looking forward to it

thanks mate!

 

Link to comment

The changes aren't that big in synthetic benchmarks like Timespy or Heaven. In FarCry 5 i saw more improvement. I guess the fact that a real game constantly streaming textures and stuff is what I see here. A synthetic benchmark loads all the stuff right at the beginning into memory. Games like Doom and FarCry at least feel smoother now. Below an overview what I've tested.

 

summary.thumb.png.47d92f7bc87088584be758888fb78403.png

 

Test 1 was my original i440fx VM with some manual tweaks like numatune, emulatorpin and iothread set. For test 2 I created a fresh Q35 VM with the same corecounts, RAM, NVME, SSD, GPU as in test 1 and applied all the tweaks from the i440fx VM + the Qemu arguments at the end of the XML

  <qemu:commandline>
    <qemu:arg value='-global'/>
    <qemu:arg value='pcie-root-port.speed=8'/>
    <qemu:arg value='-global'/>
    <qemu:arg value='pcie-root-port.width=16'/>
  </qemu:commandline>

Test 3 is a fresh Q35 VM with no manual tweaks. Only GPU and SSD/NVME passthrough, same cores and RAM as before without the Qemu arguments at the end. Test 4 is the same as test 3. I only added the Qemu part. And finally test 5 is basically test 2 with a couple tweaks.

 

In test 5 I changed the memory mode from 'preferred' to strict

    <memory mode='strict' nodeset='1'/>

added some changes in the hyperv section

    <hyperv>
      ...      
      <vpindex state='on'/>
      <synic state='on'/>
      <stimer state='on'/>
      <reset state='on'/>
    </hyperv>

and I changed some parts of the EPYC fix

old:

  <cpu mode='custom' match='exact' check='partial'>
    <model fallback='forbid'>EPYC-IBPB</model>
    <topology sockets='1' cores='7' threads='2'/>
    <feature policy='require' name='topoext'/>
    <feature policy='disable' name='monitor'/>
    <feature policy='require' name='x2apic'/>
    <feature policy='require' name='hypervisor'/>
    <feature policy='disable' name='svm'/>
  </cpu>

new:

  <cpu mode='custom' match='exact' check='full'>
    <model fallback='forbid'>EPYC</model>
    <topology sockets='1' cores='7' threads='2'/>
    <cache level='3' mode='emulate'/>
    <feature policy='require' name='topoext'/>
    <feature policy='disable' name='monitor'/>
    <feature policy='require' name='hypervisor'/>
    <feature policy='disable' name='svm'/>
    <feature policy='disable' name='x2apic'/>
  </cpu>

 

CPUZ scores also looks pretty good now. 

cpuZ.png.1c039c1457b38f9d6178fd2251a99cee.png

 

WIN10_NVME_UEFII_Q35_RC4.xml

 

 

Link to comment

I've found RC4 helps with Lag etc making it much more viable to game with - However at first attempt I am still showing up PCI Express x1.  Does anyone know if I need to modify my vm xml config as well as run RC4, or should it just work out of the box?

 

I'm guessing I need to add this to make it work?

 

<qemu:commandline>

  <qemu:arg value='-global'/>

  <qemu:arg value='pcie-root-port.speed=8'/>

  <qemu:arg value='-global'/>

  <qemu:arg value='pcie-root-port.width=16'/>

</qemu:commandline>

Edited by Marshalleq
Link to comment

@Symon Both should work. Depending on the unraid version and the stuff you passing through and how your current VM is setup, upgrading can end with an error. The savest way is to creat a new VM with the Q35 machine type, same cores RAM etc as the original one, different name. You can point it to the existing i440fx vdisk and carry over your maybe manual tweaked parts in the xml to the new one if you need. Before you screw something up, always make a backup first. 

Link to comment
17 minutes ago, bastl said:

@Symon Both should work. Depending on the unraid version and the stuff you passing through and how your current VM is setup, upgrading can end with an error. The savest way is to creat a new VM with the Q35 machine type, same cores RAM etc as the original one, different name. You can point it to the existing i440fx vdisk and carry over your maybe manual tweaked parts in the xml to the new one if you need. Before you screw something up, always make a backup first. 

Thanks for your help, I will create a new one to be safe :)

Do you know if this creates problems with the Window 10 License as the hardware ID's change?

Link to comment
13 hours ago, Symon said:

Do you know if this creates problems with the Window 10 License as the hardware ID's change?

Yes, it can. If you copy over the UUID from the activated VM to the new one, it may help. I don't know how many changes it takes before MS gets cranky, but the less you change between the VM's the better. As he said, keep RAM, core assignments, passthroughs, etc as consistent as possible.

Link to comment
  • 7 months later...

@bastl how were you able to get Unraid to utilize your 3rd slot GPU instead of the 1st slot GPU (1080ti)?

 

I haven't been able to find a way to force Unraid to utilize my 3rd slot GPU (GT 710) and passthrough my 1st slot GPU (2080 Super), so I just have the passthrough GPU in slot 3 (which is assigned to Node 0) and my unraid GPU in slot 1 (assigned to Node 1).

 

 

Link to comment

@Giggity_Grant You have to stub/bind the GPU you wanna passthrough so unraid doesn't load it at all. If I add the pci ids of the card in the 1st slot Unraid wont pick it up and will use the card in the 3rd slot. Not sure if I changed something in the BIOS as well but I think I only had an option for the link speeds of the slots not for the order or how IOMMU handles it.

Link to comment

@bastl Thanks for your reply!

 

I originally tried disabling CSM, which seemed to work - but then I ran into the same issues that other folks in this forum mentioned. After seeing your comment, I re-enabled CSM, and stubbed the pci-ids of the 1st slot card. It's back up and running at least.

 

I'm still running through the thread and trying a few of the mentioned solutions.

 

Is there anything in particular that I would have to add in order to get unRaid to pick up a basic GPU in the 3rd slot, or is this something that happens automatically (since the 1st slot GPU is stubbed)?

Link to comment

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.