Does 1000 Hz Mouse Polling Rate result in lower FPS/CPU bottlenecks?

Discussion in 'General Hardware' started by BlindBison, Jul 31, 2018.

  1. BlindBison

    BlindBison Ancient Guru

    Messages:
    1,932
    Likes Received:
    817
    GPU:
    RTX 3070
    Hi there guys,

    This is something I've wondered about for awhile now, but I haven't been able to track down a clear cut answer on this.

    My mouse supports 125, 500, and 1000 Hz polling rates.

    Based on what I've read, as you raise the polling rate, the CPU has to do more work to keep track of the mouse position which can, in theory, put a bit more strain on your CPU usage and therefore cause you to be CPU limited at least a few fps lower than you would be at, say, a 500 Hz polling rate.

    Now, some people claim this is no longer an issue and that modern hardware can handle 1000 Hz polling rate just fine with none to virtually no issues at all -- in other words, that any tax on a modern CPU should be negligible.

    On the other hand, other people seem to claim that polling your mouse an extra 500 times per second is non-trivial and may cost you some frames/CPU bottleneck you a bit sooner where 500 Hz would be a better compromise in terms of responsiveness and performance/CPU strain.

    What's the true answer here?

    Suppose one has hardware that's mid-range from a few years back. A GTX 770 / midrange i-7 from 2014 or so then for our example spec.

    Would 500 Hz or 1000 Hz polling rate be the optimal way to go?

    Thanks for your time, I appreciate it.
     
    warlord likes this.
  2. RealNC

    RealNC Ancient Guru

    Messages:
    4,146
    Likes Received:
    2,334
    GPU:
    EVGA GTX 980 Ti FTW
    The polling rate is inconsequential to CPU load. It might have made a difference on a Pentium 2 or something, but now it doesn't matter.
     
    BlindBison likes this.
  3. BlindBison

    BlindBison Ancient Guru

    Messages:
    1,932
    Likes Received:
    817
    GPU:
    RTX 3070
    @RealNC

    Thanks for the heads-up, I'll go ahead and bump mine up to 1000 Hz then. I appreciate it.
     
  4. warlord

    warlord Ancient Guru

    Messages:
    2,760
    Likes Received:
    927
    GPU:
    Null
    Not problem for synchronous CPUs. You should only lower it if you encounter static noise or glitches WHEN you move the mouse. IF the mouse movement itself gives you something to think about, lower it. IF not keep it at max polling rate, it is almost 0 resources.
     

  5. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,704
    Likes Received:
    11,872
    GPU:
    GF RTX 3060TI
    Are you sure you are capable to made movements which need 1000Hz polling?
     
  6. RealNC

    RealNC Ancient Guru

    Messages:
    4,146
    Likes Received:
    2,334
    GPU:
    EVGA GTX 980 Ti FTW
    1000Hz improves animation in high-refresh displays. 125Hz polling for example will result in some visible micro-stutter. 500Hz is much better, but since 1000Hz doesn't cost anything these days, you can just "set it and forget it."
     
  7. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,704
    Likes Received:
    11,872
    GPU:
    GF RTX 3060TI
    It costs twice comparing to 500Hz, but if all components in rig/OS work normal it will not bottleneck. (To me this sentence is more correct.)
     
  8. jbmcmillan

    jbmcmillan Ancient Guru

    Messages:
    2,760
    Likes Received:
    277
    GPU:
    Gigabyte G1 GTX970
    The proverbial splitting hairs answer lol.
     
    mbk1969 likes this.
  9. user1

    user1 Ancient Guru

    Messages:
    2,424
    Likes Received:
    1,048
    GPU:
    Mi25/IGP
    There is a minor effect that is measurable, the only cpu which i saw a noticable difference on was a core 2 based pentium dual core, however lowering the polling rate to lower to say 500hz, greatly reduced the impact. on hardware made in the last 7-8 years ive yet to see any significant cpu usage from 1000hz.
     
    BlindBison and AsiJu like this.
  10. AsiJu

    AsiJu Ancient Guru

    Messages:
    8,277
    Likes Received:
    3,000
    GPU:
    MSI RX6800XT G.XT.
    Some mice might have issues with 1000 Hz and certain game engine / Windows version combos might have USB polling rate related issues in rare cases.

    Most notably JupiterEX (FEAR engine) and W7+ where framerate will drop over time due to USB polling rate issues.

    So sometimes dropping to 500 might be beneficial but even then it has nothing to do with CPU load / overhead.

    (And mentioned FEAR's issue can't be fixed by adjusting polling rate, needs disabling HID devices as workaround)
     

  11. mbk1969

    mbk1969 Ancient Guru

    Messages:
    13,704
    Likes Received:
    11,872
    GPU:
    GF RTX 3060TI
    Troubles can come not from CPU load, but from faulty/badly coded USB drivers for some 3rd party USB controllers, and from IRQ sharing. Drivers can increasingly stall CPU working on incoming interrupts thus introducing stuttering.
     
  12. carnivore

    carnivore Member

    Messages:
    30
    Likes Received:
    7
    GPU:
    AMD HD7970
    What about battery life? If it's a wireless mouse that's also a thing to consider.
     
    BlindBison likes this.
  13. Agent-A01

    Agent-A01 Ancient Guru

    Messages:
    11,619
    Likes Received:
    1,105
    GPU:
    3080Ti Strix H20
    I think I saw a benchmark back in the day on something like A C2Q and performance from 125hz to 1000hz was a measly 2-3%.

    Nothing to worry about today.
     
  14. Corrupt^

    Corrupt^ Ancient Guru

    Messages:
    7,185
    Likes Received:
    474
    GPU:
    Geforce RTX 3090 FE
    Actually I had fps drops using 1KHz on the first AMD dualcores. But back in those days we didn't even have 500 or 1000 Hz mice, we were hex editing the Windows USBPORT.SYS file and it was the early days of "gaming mice".

    On current CPU's though it shouldn't matter. If it does occur, trust me, you'll notice, it's quite a big lagspike in movement.

    As for some mice not performing well on 1000 Hz as opposed to 500 Hz, that's just pure flawed firmware design or sensor limitations. Per example the old 3090 sensor Zowie mice would perform just fine using 1000 on max dpi, but once you were using lower DPI settings 500 Hz actually yielded better max tracking speeds and less negative acceleration.

    On a sidenote, increasing mouse frequency actually reduces screen tearing during motion. The camera updates more frequently in smaller steps. Though you need a high FPS camera to almost notice it.

    There's also an experimental filter driver that allows up to 8000 Hz on USB 3 ports (not all mice seem capable of this though, some stop at around 2Khz, some are literally capped at 1Khz in the firmware).
     
    Last edited: Aug 2, 2018
  15. RealNC

    RealNC Ancient Guru

    Messages:
    4,146
    Likes Received:
    2,334
    GPU:
    EVGA GTX 980 Ti FTW
    There's nothing special during movement that would add lag spikes. It's called polling rate, not waiting for movement rate :p
     

  16. Corrupt^

    Corrupt^ Ancient Guru

    Messages:
    7,185
    Likes Received:
    474
    GPU:
    Geforce RTX 3090 FE
    That's how it presented itself though in some extreme cases. It felt like VSYNC latency but much much worse. Obviously it also came with a FPS drop in the game as well, but the lag in mouse movement was much much worse than your regular FPS drop lag.

    It wasn't VSYNC either... I never ever use VSYNC, I despise the latency that comes with it. Maybe one day when I get a G-SYNC monitor... perhaps.

    Maybe the CPU/OS/Application has some sort of prioritizing when this happens and the USB data gets delayed? Would have to redo a lot of research I knew years ago and totally forgot about now xD
     
    Last edited: Aug 3, 2018
  17. -Tj-

    -Tj- Ancient Guru

    Messages:
    17,860
    Likes Received:
    2,398
    GPU:
    3080TI iChill Black
    Actually that is only because of logitech direct input hid bug.

    To get around that you need to add a d3d .dll file in base game dir and it will fix it.. or disable few hid components like you mentioned it., I now prefer that .dll file..

    They fixed this with fear2+
     
    AsiJu likes this.
  18. BlindBison

    BlindBison Ancient Guru

    Messages:
    1,932
    Likes Received:
    817
    GPU:
    RTX 3070


    Just leaving a comment since I ran across the video where the user had an FX8320 and 500 vs 1000 hz polling rate did appear to produce discernibly higher CPU usage.

    Now, that's obviously not a common CPU these days so I'd imagine this sort of thing doesn't register to the same extent on modern CPUs. I tried replicating his test on my 3900X and there was about a 1-2% difference in utilization, but I'm not sure that would be what's bottlenecking the CPU in a game for example.

    Anyway, just something I found interesting on this subject maybe for those with older CPUs 500 Hz is moreso the way to go? People say that you can't tell the difference and maybe its just placebo with 500 vs 1000 I dunno, but in Overwatch at high refresh rates it seems to feel "smoother" at 1000 Hz anecdotally.
     
    Last edited: Apr 16, 2021
  19. RealNC

    RealNC Ancient Guru

    Messages:
    4,146
    Likes Received:
    2,334
    GPU:
    EVGA GTX 980 Ti FTW
    @BlindBison

    That test is very flawed. First, games and normal desktop apps handle mouse messages a bit differently. Second, you can't compare CPU usage between power saving mode (which happens in the above video) and full perf mode (which is what you get when a game is running.)

    Here's a better test you can do. Run a game (I used Witcher 3) in windowed mode. I've put it at 1920x1080 in a window on a 2560x1440 desktop. Now run the test again. There is exactly zero difference in CPU load between 125Hz and 1000Hz polling. Here's how I just tested:

    Screenshot (7).jpg

    Yes, on an idle system, I too can observe a big difference in CPU usage. If you look at the cores individually in Open Hardware Monitor, you will see that one of the cores has something like a 20% usage difference between 125 and 1000. But, that's an idle CPU you're looking at, meaning it's at a very low perf state. If you run a game while doing this test, the CPU will be in its normal operating mode. When that happens, the CPU usage difference between the 125 and 1000 is so low, it doesn't even register.

    The difference between 125 and 1000 really and truly is virtually 0 on any modern CPU. (And by modern I mean any desktop CPU made in the last 15 years.)
     
    Last edited: Apr 16, 2021
    BLaZiNgSPEED, fluidz and BlindBison like this.
  20. BlindBison

    BlindBison Ancient Guru

    Messages:
    1,932
    Likes Received:
    817
    GPU:
    RTX 3070
    Thanks! That's great to know
     

Share This Page