Dedicated USB/NIC?

Everything about latency. Tips, testing methods, mouse lag, display lag, game engine lag, network lag, whole input lag chain, VSYNC OFF vs VSYNC ON, and more! Input Lag Articles on Blur Busters.
Sebichek45
Posts: 62
Joined: 01 Dec 2022, 08:06

Re: Dedicated USB/NIC?

Post by Sebichek45 » 21 Jul 2023, 03:32

kyube wrote:
20 Jul 2023, 10:25
howiec wrote:
14 Jul 2023, 14:58
  • Please do let us know how the FL1100 turns out incl. how you tested it (e.g. pertinent test setup details, control variables, measurement) which I'm sure you would probably elaborate on anyways.
My FL1100-based card arrived, here are the results:

Card name: ULS-UP3100
System: Win10 LTSC 22H2 (debloated)
Driver: 3.8.35514.0 (taken from Winraid forums labeled as `Other "pure" Fresco Logic USB3 drivers`)
Driver has been manually installed through devmgmt, as per Winraid guide.

Mousetester graph:
(1kHz spinning in circles, both MS drivers and Fresco Logic drivers resulted in the same graphs)

Image


xperf results:
(spinning in circles, only mouse plugged in and set to 1kHz polling ratescript taken from https://github.com/amitxv/PC-Tuning/tre ... in/scripts labeled as "xperf-dpcisr.bat")

DPC Info:
Total = 5449 for module Wdf01000.sys
Elapsed Time, > 0 usecs AND <= 1 usecs, 243, or 4.46%
Elapsed Time, > 1 usecs AND <= 2 usecs, 75, or 1.38%
Elapsed Time, > 2 usecs AND <= 4 usecs, 3, or 0.06%
Elapsed Time, > 4 usecs AND <= 8 usecs, 0, or 0.00%
Elapsed Time, > 8 usecs AND <= 16 usecs, 3126, or 57.37%
Elapsed Time, > 16 usecs AND <= 32 usecs, 1997, or 36.65%
Elapsed Time, > 32 usecs AND <= 64 usecs, 5, or 0.09%
Total, 5449

Interrupt info:
Total = 5128 for module Wdf01000.sys
Elapsed Time, > 0 usecs AND <= 1 usecs, 5114, or 99.73%
Elapsed Time, > 1 usecs AND <= 2 usecs, 9, or 0.18%
Elapsed Time, > 2 usecs AND <= 4 usecs, 0, or 0.00%
Elapsed Time, > 4 usecs AND <= 8 usecs, 5, or 0.10%
Total, 5128


Sadly, the FL1100 doesn't seem to be using vendor drivers and instead relies upon the wdf0100.sys driver.


In comparison, my Conrad UB108 (startech renesas/nec card performs identical)

uPD720202 xperf results:
(mouse @ 1khz spinning in circles & usb mic plugged in)

DPC Info:
Total = 10286 for module rusb3xhc.sys
Elapsed Time, > 0 usecs AND <= 1 usecs, 0, or 0.00%
Elapsed Time, > 1 usecs AND <= 2 usecs, 4339, or 42.18%
Elapsed Time, > 2 usecs AND <= 4 usecs, 794, or 7.72%
Elapsed Time, > 4 usecs AND <= 8 usecs, 2403, or 23.36%
Elapsed Time, > 8 usecs AND <= 16 usecs, 2727, or 26.51%
Elapsed Time, > 16 usecs AND <= 32 usecs, 22, or 0.21%
Elapsed Time, > 32 usecs AND <= 64 usecs, 1, or 0.01%
Total, 10286

Total = 5143 for module rusb3xhc.sys
Elapsed Time, > 0 usecs AND <= 1 usecs, 5125, or 99.65%
Elapsed Time, > 1 usecs AND <= 2 usecs, 17, or 0.33%
Elapsed Time, > 2 usecs AND <= 4 usecs, 0, or 0.00%
Elapsed Time, > 4 usecs AND <= 8 usecs, 1, or 0.02%
Total, 5143

Conclusion: I can definitely say the Renesas/NEC uPD720202 is great controller for devices such as keyboard and USB input or output devices, as separating the mouse & other USB devices on different controllers is optimal. However, it is not a good solution for 8kHz mice.

I've been eyeing the ASM3142 (which seemingly perform similar if not identical to older 1x42 controllers) controller and how it handles interrupts & DPCs, but I doubt it'll offer a better experience.

what would you recommend for normal 1khz mouse?

howiec
Posts: 183
Joined: 17 Jun 2014, 15:36

Re: Dedicated USB/NIC?

Post by howiec » 24 Jul 2023, 12:14

kyube wrote:
14 Jul 2023, 16:26
Amit, the creator of https://github.com/amitxv/PC-Tuning is planning on making a LatMon-esque GUI for xperf & WPA to measure DPC latency and interrupts. All of which can be replicated with MS' tools tho (mentioned above), just in a different looking GUI.

About RWE, this tool might be a good alternative (it's a bit perplexing to use so I haven't done much)
https://github.com/Faintsnow/HE
Thanks!
Looking forward to Amit's release and will try HE - Hardware Read & Write Utility.

howiec
Posts: 183
Joined: 17 Jun 2014, 15:36

Re: Dedicated USB/NIC?

Post by howiec » 24 Jul 2023, 12:16

sherifmagdy32 wrote:
15 Jul 2023, 04:22
I got RWEverything working on windows 11 by enabling testing mode
Yeah, that's the problem though, anti-cheat software/games will not run during test mode.

howiec
Posts: 183
Joined: 17 Jun 2014, 15:36

Re: Dedicated USB/NIC?

Post by howiec » 24 Jul 2023, 12:28

kyube wrote:
20 Jul 2023, 10:25
Sadly, the FL1100 doesn't seem to be using vendor drivers and instead relies upon the wdf0100.sys driver.


In comparison, my Conrad UB108 (startech renesas/nec card performs identical)

Conclusion: I can definitely say the Renesas/NEC uPD720202 is great controller for devices such as keyboard and USB input or output devices, as separating the mouse & other USB devices on different controllers is optimal. However, it is not a good solution for 8kHz mice.
Thanks for the details and testing.

Yeah, I was hopeful but at the same time not expecting much for high polling rate devices because it seems like there are many components along the data pipeline and how things are processed from both HW and SW perspectives that need to be designed and optimized in tandem to result in lowest consistent and stable latency even under maximum CPU, GPU, RAM, controller, OS, etc. load.

Slender
Posts: 603
Joined: 25 Jan 2020, 17:55

Re: Dedicated USB/NIC?

Post by Slender » 25 Jul 2023, 06:06

Sebichek45 wrote:
21 Jul 2023, 03:32
kyube wrote:
20 Jul 2023, 10:25
howiec wrote:
14 Jul 2023, 14:58
  • Please do let us know how the FL1100 turns out incl. how you tested it (e.g. pertinent test setup details, control variables, measurement) which I'm sure you would probably elaborate on anyways.
My FL1100-based card arrived, here are the results:

Card name: ULS-UP3100
System: Win10 LTSC 22H2 (debloated)
Driver: 3.8.35514.0 (taken from Winraid forums labeled as `Other "pure" Fresco Logic USB3 drivers`)
Driver has been manually installed through devmgmt, as per Winraid guide.

Mousetester graph:
(1kHz spinning in circles, both MS drivers and Fresco Logic drivers resulted in the same graphs)

Image


xperf results:
(spinning in circles, only mouse plugged in and set to 1kHz polling ratescript taken from https://github.com/amitxv/PC-Tuning/tre ... in/scripts labeled as "xperf-dpcisr.bat")

DPC Info:
Total = 5449 for module Wdf01000.sys
Elapsed Time, > 0 usecs AND <= 1 usecs, 243, or 4.46%
Elapsed Time, > 1 usecs AND <= 2 usecs, 75, or 1.38%
Elapsed Time, > 2 usecs AND <= 4 usecs, 3, or 0.06%
Elapsed Time, > 4 usecs AND <= 8 usecs, 0, or 0.00%
Elapsed Time, > 8 usecs AND <= 16 usecs, 3126, or 57.37%
Elapsed Time, > 16 usecs AND <= 32 usecs, 1997, or 36.65%
Elapsed Time, > 32 usecs AND <= 64 usecs, 5, or 0.09%
Total, 5449

Interrupt info:
Total = 5128 for module Wdf01000.sys
Elapsed Time, > 0 usecs AND <= 1 usecs, 5114, or 99.73%
Elapsed Time, > 1 usecs AND <= 2 usecs, 9, or 0.18%
Elapsed Time, > 2 usecs AND <= 4 usecs, 0, or 0.00%
Elapsed Time, > 4 usecs AND <= 8 usecs, 5, or 0.10%
Total, 5128


Sadly, the FL1100 doesn't seem to be using vendor drivers and instead relies upon the wdf0100.sys driver.


In comparison, my Conrad UB108 (startech renesas/nec card performs identical)

uPD720202 xperf results:
(mouse @ 1khz spinning in circles & usb mic plugged in)

DPC Info:
Total = 10286 for module rusb3xhc.sys
Elapsed Time, > 0 usecs AND <= 1 usecs, 0, or 0.00%
Elapsed Time, > 1 usecs AND <= 2 usecs, 4339, or 42.18%
Elapsed Time, > 2 usecs AND <= 4 usecs, 794, or 7.72%
Elapsed Time, > 4 usecs AND <= 8 usecs, 2403, or 23.36%
Elapsed Time, > 8 usecs AND <= 16 usecs, 2727, or 26.51%
Elapsed Time, > 16 usecs AND <= 32 usecs, 22, or 0.21%
Elapsed Time, > 32 usecs AND <= 64 usecs, 1, or 0.01%
Total, 10286

Total = 5143 for module rusb3xhc.sys
Elapsed Time, > 0 usecs AND <= 1 usecs, 5125, or 99.65%
Elapsed Time, > 1 usecs AND <= 2 usecs, 17, or 0.33%
Elapsed Time, > 2 usecs AND <= 4 usecs, 0, or 0.00%
Elapsed Time, > 4 usecs AND <= 8 usecs, 1, or 0.02%
Total, 5143

Conclusion: I can definitely say the Renesas/NEC uPD720202 is great controller for devices such as keyboard and USB input or output devices, as separating the mouse & other USB devices on different controllers is optimal. However, it is not a good solution for 8kHz mice.

I've been eyeing the ASM3142 (which seemingly perform similar if not identical to older 1x42 controllers) controller and how it handles interrupts & DPCs, but I doubt it'll offer a better experience.

what would you recommend for normal 1khz mouse?
mcs9990

User avatar
kyube
Posts: 129
Joined: 29 Jan 2018, 12:03

Re: Dedicated USB/NIC?

Post by kyube » 25 Jul 2023, 06:40

Slender wrote:
25 Jul 2023, 06:06
mcs9990
Show us proof in form of xperf and mousetester with a 8kHz mouse preferably too.

sherifmagdy32
Posts: 121
Joined: 08 Jan 2022, 23:43

Re: Dedicated USB/NIC?

Post by sherifmagdy32 » 25 Jul 2023, 16:41

howiec wrote:
24 Jul 2023, 12:16
sherifmagdy32 wrote:
15 Jul 2023, 04:22
I got RWEverything working on windows 11 by enabling testing mode
Yeah, that's the problem though, anti-cheat software/games will not run during test mode.
You just need to enable it once and run the software then disable it after that
and it will work fine later.

dougg0k
Posts: 65
Joined: 06 Jun 2023, 12:11

Re: Dedicated USB/NIC?

Post by dougg0k » 25 Jul 2023, 19:59

I found an alternative tool to RW and HE, that is just a command line tool and I replaced RW in the imod script, should work out of the box in any OS without needing to do anything.

https://github.com/dougg0k/gaming_os_tw ... on_usb.ps1

User avatar
kyube
Posts: 129
Joined: 29 Jan 2018, 12:03

Re: Dedicated USB/NIC?

Post by kyube » 26 Jul 2023, 12:18

dougg0k wrote:
25 Jul 2023, 19:59
I found an alternative tool to RW and HE, that is just a command line tool and I replaced RW in the imod script, should work out of the box in any OS without needing to do anything.

https://github.com/dougg0k/gaming_os_tw ... on_usb.ps1
Or just use amit's IMOD configuration script instead, which does it in much less lines of code and doesn't mess with anything else other than the IMOD interval (which yours does)
https://gist.github.com/amitxv/4fe34e13 ... f39757d86e

dougg0k
Posts: 65
Joined: 06 Jun 2023, 12:11

Re: Dedicated USB/NIC?

Post by dougg0k » 26 Jul 2023, 12:25

kyube wrote:
26 Jul 2023, 12:18
dougg0k wrote:
25 Jul 2023, 19:59
I found an alternative tool to RW and HE, that is just a command line tool and I replaced RW in the imod script, should work out of the box in any OS without needing to do anything.

https://github.com/dougg0k/gaming_os_tw ... on_usb.ps1
Or just use amit's IMOD configuration script instead, which does it in much less lines of code and doesn't mess with anything else other than the IMOD interval (which yours does)
https://gist.github.com/amitxv/4fe34e13 ... f39757d86e
Where do you see in my code, that it messes with other things? Less lines of code just means less in this case.

Maybe you are not able to see that my script provide more information, and I keep it very straight forward to understand and maintain, while also covering EHCI which requires a different approach. Also I provide a way to automatically set to startup without you having to do anything other than agreeing.

Plus I just added functionality that will download the tool used automatically if not found. Pretty much script working out of the box without you having to do anything. But that required more lines of code.

Regardless, it's a choice to use or not.

Post Reply