Mouse Rate

Overview

Mouse rate is a free-to-use, very small utility written in Java programming language, which allows you to measure your mouse rate with nanosecond precision. The algorithm is considered to be clean and fast, due to it's GUI independency. Unlike other programs, this one is much less likely to provide UNREAL RESULTS. Mouse Rate can be run on any operating system, where Java Virtual Machine runs. The algorithm remains the same, so the results implement Comparable interface across all OS < ;) >. Results are displayed both as average delay between two updates and as a frequenzy in Hertz.

Mouse Rate User Interface

Benefits of higher mouse rate

First, you need a basic understanding of how mouse reporting rate works. Mouse rate commonly means how many times per second your mouse tells your computer, where is it's current position. But this doesn't mean your computer, more accurately your programs, are able or has to utilize such information overload. So, is so called "USB overclocking" still worth it ? Let's find out !

 

  Typical rate Max rate Typical delay Minimal delay
PS2 80 200 12,5 ms 5 ms
USB 125 1000 8 ms 1 ms

 As you can se, using USB port can lead to much higher frequency => less delay.

But in real life, things are not so simple. Eventhough you have your mouse set to 1 000 Hz, few more things come in your way. Sensor resolution (DPI), computer performance, software itself !

  1. DPI - If your mouse sensor has a resolution of 400 DPI and you move it by speed of 1 IPS (Inch Per Second), it is able to send 400 udaptes at best. 2 IPS means 800 updates at best => 200 updates (reports) were sent IN VAIN, because they represents duplicate position. The shorter your moves with mouse are, the more DPI is needed for the same amount of accuracy on the screen.
  2. Computer Performance - This point is very simple. Not all the hardware being sold supports higher reporting rates. Also, with higher MR your processor is interrupted in it's work more often => increased load.
  3. Software - This is crucial. Your programs have limited number of frames painted on the screen per second. Software not being run in FSEM (Full Screen Exclusive Mode) has little control over all resources and doesn't usually update so often. Programs running in FSEM (most likely games) draw the scene in precisely timed periods. Depending on hardware, framerate differes between 30 - 125 FPS (more or less). As you can see, 125 FPS means 8 frames drawn per second. Some applications even make difference between Updates Per Second (UPS) and actually printing the results on the screen (FPS), making the problem even more complicated. And here comes the LCD, commonly able to refresh 60 times per second !

    So how is it possible to feel a difference between 125 Hz and 1000 Hz mouse rate on a 60 Hz monitor ? Becaue HOW OLD is the mouse input matters. Next table should reveal more. In this example, our mouse has rate of 500 Hz (2 ms delay) and our program updates it's stat every 5 ms.

    ms mouse program update
    10 Update Update
    12 Update -
    14 Update -
    15 - Update
    16 Update -
    17 -  
    18 Update -
    19 - -
    20 Update Update

As you can see, program did update at 15 ms. And utilized 1 ms old mouse position.  At 20 ms, it depends. Old position reported 2 ms ago could be used, but our mouse could also make it in time and the position was only few nanoseconds old. In every combination of UPS/FPS and Mouse Rate, it is the mouse rate which represents MAXIMUM POSSIBLE delay. Obviously, the delay varies between few nanoseconds and the maximum given by Mouse Rate.

If you have your Mouse Rate (MR) set to 125 Hz, the difference oscilates between less than 1 ms up to 8 ms. For 500 Hz it is up to 2 ms, for 1000 up to 1 ms.

With decreasing mouse reporting rate, your ability to predict mouse movement decreases.  

Myths

  • DPI (resolution) affects mouse rate - FALSE. Your mouse can send updates how many times it wants to. DPI means how many points sensor sees per inch. It does not limit mouse's reporting rate.
  • Higher mouse rate is unnecessary, human eye can not recognize the difference - FALSE. Not only eyes are involved.

Links & Download

- Mouse Rate download.
- Java virtual machine for your operating system. 

 

 

Pavel Pscheidl
2012