Accurate key timing not so accurate

Post Reply
Jonathan
Xpadder creator
Posts: 1737
Joined: 24 Aug 2009, 11:33
Location: England
Contact:

Accurate key timing not so accurate

Post by Jonathan »

This is a topic following on from here
Primal Fear wrote:every time configuration (Hold and Release Zones, Tap Times, Pauses) is longer than intended, with the CPU on idle clock.
At the end of the topic I mentioned a bug in the timing system of Xpadder. Regardless of whether this timing issue is the cause of the discussed mouse stuttering it's an issue that needs attention. Some games with sequences rely on the timing being correct.

Primal, please can you perform this quick test - I am unable to simulate your idle/load difference in timings (something that should not be happening anyway) so I need a guinea pig :D

Please create a sequence that taps key X for 0.01s and test it in the keyboard test. Please can you do this for both idle and load conditions and perform the sequence a number of times to see if the timing is the same or varying between 2 nearby times (eg; 25% 0.01s, 75% 0.02s)
Now perform the same test for a taptime of 0.05s, 0.10s, 0.50s and 1.00s.
If my theory is correct then the idle times should vary more than the load times and longer tap times should be less accurate than shorter tap times (especially when idle).

Primal Fear
Xpadder Xpert
Posts: 2437
Joined: 09 Feb 2010, 16:41
Location: Germany
Contact:

Re: Accurate key timing not so accurate

Post by Primal Fear »

The keyboard test is also affected by this timing issue. If I test the timings with Xpadder's keyboard test, it shows always that the timings would be absolutely correct.
But measuring them with the stopwatch of my cell phone shows around 9.90 seconds while Xpadder should press the key 6s and the keyboard test shows 6.02s.

With a key tap time of 1.0s I measure around 1.9s with my stopwatch. Of course with these short times my reaction time comes into play, but I think it's obvious enough that the key tap time is longer then intended.

Edit: But actually this wasn't directly your question :oops:.
Idle: Show
0.01=80% no detection, 20% 0.01s
0.05=90% 0.04, 10% 0.05s
0.10=85% 0.09; 5% 0.10; 5% 0.11; 5% 0.12
0.50=60% 0.52; 40% 0.53
1.00=2% 1.01; 47% 1.02; 47% 1.03; 1% 1.04; 2% 1.05; 1% 1.06
Load: Show
0.01=80% no detection, 20% 0.01s
0.05=>90% 0.4; <10%0.5
0.10=>90% 0.9; <10%0.10
0.50=>90% 0.49; <10%0.50
1.00=<10% 0.99; >90% 1.00

Jonathan
Xpadder creator
Posts: 1737
Joined: 24 Aug 2009, 11:33
Location: England
Contact:

Re: Accurate key timing not so accurate

Post by Jonathan »

Thank you for that info - very detailed which helps to show the issue clearly :rightthumbup:

Good idea timing via stopwatch. The keyboard test in Xpadder is a separate thread and does not include the timing bug that the coreloop does but it is clearly flawed. I am still getting quite accurate timings even when timing myself on idle but I do now get inaccurate test timing was under load although not as bad as your time differences.

Please can you perform the same idle/load test with both the keyboard test and your stopwatch for tap times of 3.00s and 9.00s (the test cannot display higher than 9.99 but we should be ok).

I suspect the bug is cumulative so whatever "timeleak" you get for 3s should be triple for 9s. Thank you.

Primal Fear
Xpadder Xpert
Posts: 2437
Joined: 09 Feb 2010, 16:41
Location: Germany
Contact:

Re: Accurate key timing not so accurate

Post by Primal Fear »

Idle:
on keyboard= measured by XPadder
3s key press= around 2s
9s key press= around 6s

Load:
on keyboard= measured by XPadder
3s key press= around 3s
9s key press= around 9s
Jonathan wrote:I am still getting quite accurate timings even when timing myself on idle but I do now get inaccurate test timing was under load although not as bad as your time differences.
You can see all thinkable data about your CPU, including the current clock, using CPU-Z. It's free, really small an it works without installation.

Edit: And just in case the button animations (when loading a profile or controller layout) are also separate thread, it is also slower in idle state than in load state.

Post Reply

Return to “How do I do this combo/sequence?”