Homebrew Question How well does RetroArch's 'run-ahead' feature reduce latency with NES emulation on the Switch?

Meteor7

Guess where this thumb goes.
OP
Member
Joined
Jun 9, 2014
Messages
1,334
Trophies
1
Location
a fit of spasms and accidental black magic
XP
4,122
Country
United States
RetroArch has a feature to reduce latency called 'run-ahead' which pre-emulates a set amount of frames ahead, and displays the frame corresponding to the button you press when you press it. As someone without a hacked Switch, I'm curious of how well the function has worked for reducing latency on NES titles in particular, but also for any emulation in general. Specifically, how low can the latency get? Has anyone taken any rough measurements? Does it adversely affect performance in some way? Does it introduce glitches or instability? Does it set your Switch on fire? Does it make all your dreams come true and dispense candy? All of the above? The reason I ask is because I'm curious to know whether one can achieve a lower latency on NES titles through RetroArch on Switch than through Nintendo's emulation given as part of their subscription service, and if it can, then what sort of trade-offs might be part of the deal. I'm also curious to hear any observations or opinions regarding how well the Switch version of RetroArch functions in general. Aaaand I suppose that's all, have a good day. Or don't. I'm not your mommy. ...probably.
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
34,119
Trophies
2
Website
trastindustries.com
XP
23,035
Country
United Kingdom
Not played with this one but is it a noticeable problem?

I had a (PAL) NES on a CRT back in my formative years. Can notice problems with games on crappy LCD TVs and/or bad controllers/controller paths. Never particularly had a problem with latency for anything being emulated on a dedicated game playing device though. If it is going to be a problem then I would have to have a look at the quality of the emulation rather than looking to tricks to try to negate such problems.
 

notimp

Well-Known Member
Member
Joined
Sep 18, 2007
Messages
5,782
Trophies
1
XP
4,382
Country
Laos
Not at all. I'd imagine. Run ahead is very CPU intensive - and mostly only available/enabled on PC builds of retroarch. Please correct me if I'm wrong, but I'd imagine, that it would not be active on the switch at all.

Also - its mainly retroarchs attempt to combat the notion that they havent cared about latency for the better part of their existence (It kind of comes with the "we work on your toothbrush and your smartoven as well" territory.. ;) ).

Run-ahead is buggy on many games as well and probably shouldnt have been released as a non-experimental feature, but then everyone started talking, about how much better Nintendos own SNES emulator was in terms of latency at one point - and for ARM devices, they were right. So as far as I'm concerned, run ahead is more of a marketing effort/interesting conceptual feature, than anything else. (Because it doubles or quadruples your CPU load, and causes issues on many games.)

Also - yes, retroarch without run-ahead is notoriously input laggy - on ARM that is.

My go ahead test for this is quickrolling on reaction on Tekken 3 but as it doesnt run fullspeed on the Switch yet - I cant test it yet. :)

Sadly I've no built in "timings memories" for SNES games (f.e.). :)
 
Last edited by notimp,

Meteor7

Guess where this thumb goes.
OP
Member
Joined
Jun 9, 2014
Messages
1,334
Trophies
1
Location
a fit of spasms and accidental black magic
XP
4,122
Country
United States
Not at all. I'd imagine. Run ahead is very CPU intensive - and mostly only available/enabled on PC builds of retroarch. Please correct me if I'm wrong, but I'd imagine, that it would not be active on the switch at all.
It is most certainly very CPU intensive, which is why I was curious just how far it could be pushed. According to this, though, it seems like they do have run-ahead implemented on Switch, though I haven't been able to confirm myself, of course.

Run-ahead is buggy on many games as well and probably shouldnt have been released as a non-experimental feature, but then everyone started talking, about how much better Nintendos own SNES emulator was in terms of latency at one point - and for ARM devices, they were right. So as far as I'm concerned, run ahead is more of a marketing effort/interesting conceptual feature, than anything else. (Because it doubles or quadruples your CPU load, and causes issues on many games.)
I'm actually quite grateful we've got the feature already, even if it is indeed a big buggy. While I haven't tested the PC build with many games other than Super Mario World, the run-ahead feature drops latency low enough and with enough stability to make Kaizos fun, and that's quite the boon for me. Besides, I'm rather giddy just being able to see input lag being countered so hard, even if it's less than perfect so far. I'm excited to see more stable implementation in the future. ^_^

My go ahead test for this is quickrolling on reaction on Tekken 3 but as it doesnt run fullspeed on the Switch yet - I cant test it yet. :)

Sadly I've no built in "timings memories" for SNES games (f.e.). :)
Mm, yeah, I'd imagine many PS1 games wouldn't be full-speed yet. C'est la vie.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
    KennieDaMeanie @ KennieDaMeanie: https://youtube.com/shorts/mCVK2BkF6MQ?feature=share