Human Benchmark implemented in C++ DirectX9

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.
User avatar
Chief Blur Buster
Site Admin
Posts: 8361
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Human Benchmark implemented in C++ DirectX9

Post by Chief Blur Buster » 26 Aug 2020, 22:54

csplayer wrote:
26 Aug 2020, 12:21
Yep, getting on average about 20-30 ms faster times with this tool than i do with HB site.
That's to be expected, web browsers and Windows compositing adds a fair bit of latency -- so reaction time numbers are lengthened artificially.

C++ utility is more representative, especially during FSE VSYNC OFF operation. There are Olympics sprinters who can react in 100ms-120ms to the starting pistol.

Not surprised in seeing these numbers.
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

       To support Blur Busters:
       • Official List of Best Gaming Monitors
       • List of G-SYNC Monitors
       • List of FreeSync Monitors
       • List of Ultrawide Monitors

csplayer
Posts: 13
Joined: 26 Aug 2020, 12:10

Re: Human Benchmark implemented in C++ DirectX9

Post by csplayer » 27 Aug 2020, 03:49

Chief Blur Buster wrote:
26 Aug 2020, 22:54
csplayer wrote:
26 Aug 2020, 12:21
Yep, getting on average about 20-30 ms faster times with this tool than i do with HB site.
That's to be expected, web browsers and Windows compositing adds a fair bit of latency -- so reaction time numbers are lengthened artificially.

C++ utility is more representative, especially during FSE VSYNC OFF operation. There are Olympics sprinters who can react in 100ms-120ms to the starting pistol.

Not surprised in seeing these numbers.
Yes and i thought my reaction time was good using the human benchmark website, it is around 160-170 average, with this tool lowest 110 - 120 and highest 155.

Do you think that the average reaction time is actually faster than what the data says? i.e 250 ms, as a example from HB, also they say reaction time decline with age however mine is much faster now than it was when i was young.

It seems when i really tryhard and relax, i can achieve 140ms very consistently.
Last edited by RealNC on 27 Aug 2020, 04:17, edited 1 time in total.
Reason: Merged double post.

xeos
Posts: 29
Joined: 12 Jul 2018, 14:54
Contact:

Re: Human Benchmark implemented in C++ DirectX9

Post by xeos » 31 Aug 2020, 12:46

last click: 343.2 ms
min click: 207.4 ms
max click: 343.2 ms
average click: 254.8 ms
successful clicks: 8
early clicks: 0

in my 40s, so you'd expect me to be slower than average. My display (Dell2410)'s input lag is 20-40ms, so optimistically I could say I matched your 150ms number, once...

I'd expect faster numbers if you went from black to white. human's are less sensitive to color change than luminance - color flicker disappears above ~20hz, but for luminance it takes at least 60hz or for some folks even higher.

keep in mind that the scientific results are averages and don't necessarily represent the most motivated subjects. BUT they probably used ideal hardware, as in LEDs and microswitches. So their numbers are probably quite accurate - for the population and task.

People can move their eyes to a newly appeared target in ~70ms under the right circumstances. But hands are much slower than eyes.
Measure display input lag the cheap way or the best way (IMHO, but I'm biased).

xeos
Posts: 29
Joined: 12 Jul 2018, 14:54
Contact:

Re: Human Benchmark implemented in C++ DirectX9

Post by xeos » 31 Aug 2020, 12:50

PS for $5 + S&H + a few pennies for a toggle switch you could do this task on a raspberry pi zero and get data every bit as accurate as the professionals. There's a lot of uncertainty in terms of your keyboard/mouse delay, your screen's delay, and even the OS.
Measure display input lag the cheap way or the best way (IMHO, but I'm biased).

schizobeyondpills
Posts: 80
Joined: 06 Jun 2020, 04:00

Re: Human Benchmark implemented in C++ DirectX9

Post by schizobeyondpills » 01 Sep 2020, 09:54

1. enable whole program optimization
2. set thread priorities to high
3. set thread affinities per core pinned
4. constantly poll for input rather than wait
5. look into using CreateDeviceEx which allows independant/immediate flip
6. benchmark all of above using PresentMon/nsight/gpuview to confirm

xeos
Posts: 29
Joined: 12 Jul 2018, 14:54
Contact:

Re: Human Benchmark implemented in C++ DirectX9

Post by xeos » 02 Sep 2020, 11:44

schizobeyondpills wrote:
01 Sep 2020, 09:54
5. look into using CreateDeviceEx which allows independant/immediate flip
would that allow gsync/freesync based flipping? Otherwise I think keeping locked to vsync is better. you just need to keep track of when the image is actually displayed and measure response time relative to that. Of course to really know that you need to know the input lag of the monitor, and the input lag of your keyboard/mouse.
Measure display input lag the cheap way or the best way (IMHO, but I'm biased).

xeos
Posts: 29
Joined: 12 Jul 2018, 14:54
Contact:

Re: Human Benchmark implemented in C++ DirectX9

Post by xeos » 02 Sep 2020, 11:44

schizobeyondpills wrote:
01 Sep 2020, 09:54
5. look into using CreateDeviceEx which allows independant/immediate flip
would that allow gsync/freesync based flipping? Otherwise I think keeping locked to vsync is better. you just need to keep track of when the image is actually displayed and measure response time relative to that. Of course to really know that you need to know the input lag of the monitor, and the input lag of your keyboard/mouse.
Measure display input lag the cheap way or the best way (IMHO, but I'm biased).

csplayer
Posts: 13
Joined: 26 Aug 2020, 12:10

Re: Human Benchmark implemented in C++ DirectX9

Post by csplayer » 13 Oct 2020, 22:08

the black and white version is not working for me which is strange because the normal version works.
It's just stuck on a white screen no matter what i do.
Any plans on adding a save results function?:D

Meowchan
Posts: 36
Joined: 17 Jun 2020, 02:06

Re: Human Benchmark implemented in C++ DirectX9

Post by Meowchan » 14 Oct 2020, 02:12

Have you tried both left mouse button and the 'b' and 'w' buttons on the keyboard?

As for save function I don't know how much demand there is for the tool. I agree obtaining the results is cumbersome with the screenshot and the alt tab, but not sure if the extra tweaking can be justified at this point.

Alpha
Posts: 97
Joined: 09 Jul 2020, 17:58

Re: Human Benchmark implemented in C++ DirectX9

Post by Alpha » 21 Oct 2020, 19:45

Fastest I have on website is always low 100's but running twice today it was 106 exactly. I had a ton of clicks around this speed with the tool but always land around 135 or less after trying 5 times. I had 1 mis-click not realizing how to get out. On another I flinched due to steam pop up that had added a 175ms pull on a low 100 averaged 136 though. I ran through 12 clicks with no mis clicks and averaged 141 which is really high for me.

Is there a black frame between the red and green? I found my scores the best with a soft focus and seeing the black transition before the green.

I'll definitely play with this tool in the future since I am not sure what impact some of my software has on latency and it would be interesting to test.

I am grabbing 5900 or 5950 and interested in running some before and afters. Right now, Ryzen 3900, Aorus Master, XM1, Apex Pro TKL, 2080 Ti until AMD drops theirs so I can grab whatever is the fastest out and a shit ton of open apps running in the background. Also going to see if OBS makes any impact.

Thank you for the hard work!

Post Reply