CPU needed to achieve 60fps with runahead on bsnes-jg core?

Hello,

I’m recently upgrading my Gaming setup and noticed on my AMD Ryzen 7600 (not X) CPU I’m unable to achieve consistent fullspeed on bsnes-jg core when enabling any runahead (2 or even 1 frames). In Yoshi’s Island intro (known to be one of the most performance demanding scenes on the snes library) I’m not able to achieve 60 fps. Performance goes from 55-58 fps, causing some little hiccups and audio crackling.

First I thought it could be caused by some problem on my specific setup (windows-related or whatever), but I’ve done same tests on my Server (which is a Manjaro Linux on a Ryzen 7950X CPU) and I’m not achiving stable 60 fps either (mre or less the same performance as in the other setup, about 58fps with 1 frame of Runahead and maybe about 46fps with 2 frames of runahead), which makes sense because both CPUs have about the same single core performance.

Of course I’ve repetaed all the tests without shaders or any other options that could degrade performance.

So I’m assuming I need a better CPU to achieve solid 60fps with 1 or preferably 2 frames of runahead on bsnes-jg.

I’m wondering, has anybody been able to achieve solid 60fps with runahead on that core on a better cpu? which one? I’m considering upgrading only the CPU to a 9700X, which is to my knowledge the fastest single core cpu on AM5 (3D-V cache does not matter in this case I guess), but I could consider Intel options too, in case anybody can confirm their successful experience.

Thanks in advance.

Are you going to upgrade just because of that? If you have other uses in mind for a better CPU, go ahead. Otherwise, I really suggest going with the Snes9x core. The differences are minimal and you’ll have plenty of headroom for run-ahead. Your 7600 is already a good processor.

snes9x core has unknown bugs with several games that are not identified. For example, even though theorically, only specified games here have bugs, I’ve identified bugs with other games, like Jikkyou Oshaberi Parodius, which starts with a black screen video until you push a button (otherwise game apparently works and sound is ok but no video until you push a button), and the intro is bugged anyways at some points. Snes9x has also wrong timing behavior with some superfx games (for example stunt race fx is a bit sped up compared to a real snes). So I prefer to avoid snes9x but for specific games (like some old hacks which don’t work on bsnes or real hardware).

Try the normal bsnes core. It’s much faster than bsnes-jg since it uses a per scanline renderer by default. jg got rid of that and only has a much slower per pixel one. I haven’t noticed any issues with normal bsnes with the fast renderer, including the Parodius games. And it will automatically switch to the more accurate renderer for games like Air Strike Patrol to render it’s shadow effect.

1 Like

Oh, and use the core option in bsnes for runahead instead of in the usual place in RetroArch for enabling it. It’s under emulation hacks and enhancements, internal run ahead.

May I ask why to prefer Run Ahead in BSNES settings rather than the RetroArch one?

I remember to have tried all the bsnes cores available and I don’t know right now why I decided to stay with bsnes-jg, maybe it was because of RetroAchievements or rewind support. But I will try the vanilla one again and test the performance. Thanks for the suggestion.

Yes, I know about the internal runahead, it’s the only way of enabling runahead on any bvsnes core.

It’s the only way to use runahead in bsnes. It simply does not work through the general RA option. It’s something related to how bsnes manages savestates.

I have a i5 245k, slighltly overclocked with that ultraboost thing. For single thread performance it is a little faster than 7600 (4700 vs 3900) but it should suffice for the latter.

On the island intro sequence, I get 60 fps at 1 runahead, while it dips to 51 fps at 2. However in-game with Yoshi and Mario, I get 60 fps with both runahead 1 and 2. It starts to dip at 3 (51 fps) but 3 and even 2 are not needed as they cause issues and 1 is perfectly fine.

Also if you are using Linux, I’d recommend using Ares instead for run-ahead in SNES games. Windows version of Ares due to code differences, requires double the amount of cpu power compared to the Linux version.