Page 1 of 1

Solatorobo Slowdown

Posted: Thu Mar 02, 2017 9:33 am
by milesrotaru
Emulator version: r2.5.0.3a

Game: Solatorobo - Red the Hunter (U)

System: Moto Z Play (Snapdragon 625, 3GB RAM)

Problem: Game was running like a dream with low audio latency and high res 3D rendering until I got to the second town, Spinon. Main plaza and nearby areas stutter severely even with all emulator settings reduced as far as possible in favor of speed. The forums confirm this problem existed as far back as 2014.

A save state from the aforementioned game area is attached.

Re: Solatorobo Slowdown

Posted: Thu Mar 02, 2017 9:33 pm
by Exophase
It is probably related to dynarec thrashing.. there are some things that could help, but it could be a while before an update can come I'm afraid.

But I'll post back here as I know more about a fix for it.

Re: Solatorobo Slowdown

Posted: Fri Mar 03, 2017 9:35 am
by milesrotaru
Exophase wrote:It is probably related to dynarec thrashing.. there are some things that could help, but it could be a while before an update can come I'm afraid.

But I'll post back here as I know more about a fix for it.
Thanks for looking into it dude, really appreciate your work.

Re: Solatorobo Slowdown

Posted: Tue Mar 14, 2017 6:06 pm
by talos91
Hi any news on this? This is one of the best ds games and this bug makes the game unplayable.

Re: Solatorobo Slowdown

Posted: Fri Mar 17, 2017 12:24 am
by Exophase
Can I get some directions on how to reproduce after loading the savestate (and which one), just to be sure? I want to see if I can detect anything in a PC build first.

EDIT: Nevermind, I can see that it's thrashing the recompiler like I expected. It's not enough to cause slowdown on my PC, but it does show up prominently in the profiler. It's "only" flushing once per frame, but that's enough to really slow it down apparently.

I'm going to need to find out if this is real code modification or if it's stomping on a block that's identified as code but isn't really. If it's the former I can see what options I'll have to optimize the recompiler and guardband off the modified section, but this is a massive undertaking. If it's the latter I can see if there are heuristics to better help avoid triggering it. Will need more investigation.

EDIT2: It's the latter. It's the usual case of a branch to code that hadn't been loaded yet being recompiled, which causes the later load to it to trigger a flush. The invalid code has some very obvious signs of not being code, so I added a new case to the suspicious case list and that seems to fix it.

I'm sorry to say I can't update the Android version any time soon, even with a beta, as much as I'd like to.. so you'll probably have to wait (and cross your fingers). Unless you want to run it on an RPi; that should have an update in the near future.

Re: Solatorobo Slowdown

Posted: Fri Mar 17, 2017 2:52 am
by Jay Haru
really feeling the missing Loruds here. its like for the mean time, TeamNerds would have the new updates first :/

Re: Solatorobo Slowdown

Posted: Wed Mar 22, 2017 3:33 pm
by talos91
Oh my what happened to Lordus, is he ok? BTW good job on the fix.