Deathsmiles on lr-mame2015 : Any performance tips?
-
@pjft Did you mess with blitter delay and see if that does anything? I stumbled onto old posts that it might, but I don't know what combo to use with the underclocking of the cpu.
-
@Darksavior I didn't this time around. I had tried it a few months back I believe, but for some reason never found anything that was truly deterministic in the few places I found those references. I might just have had bad luck, though, so if you can get something out of blitter delay let me know, would love to get some of these working even better.
I think I might have gone for Ibara and since the performance was already terrible I didn't feel much of a change, but I don't remember.
Edit: can you confirm what your Blitter delay is set to, by the way?
-
@pjft The default blitter delay is 50%. I haven't tried testing different combos.
-
First non-Cave game I played with:
1 on 1 Government (odd basketball Game)
On OC Pi4B 2000C/750G. Default ~50FPS
Set Main CPU Overclock to 55: New 60FPSNo perceived degradation in gameplay speed.
Winning. -
@roslof said in Deathsmiles on lr-mame2015 : Any performance tips?:
No perceived degradation in gameplay speed.
There are tons of games that'll benefit from underclocking without ruining gameplay, the reason being that the game doesn't make full use of the cpu in the first place. The same applies to FBNeo's cpu clock core option.
-
@Darksavior Thanks. So is mine. Just checking whether it would have saved that option from previous testing attempts.
-
@roslof Absolutely loving this game! Didn't know about it until you mentioned it. Proper strange, but I'm enjoying it. The setting really affect it, 55 seems about right.
Anyone - feel free to mention any other games this fix helps.
-
@AdamBeGood Can the underclock setting be saved now?
-
@ecto Yep, if you install lr-mame2016 again from Source, then the option is there under Quick Menu->Options and it can be saved.
-
Going back to what originally sparked this, me messing about with my latency settings; could someone let me know what the default settings are please?
If I try and set my Configuration to default then RetroArch freezes and I have to turn the Pi off and on.
That is on the assumption that the default Latency settings are what I should have set up, any other variables I would be happy to run with if they work better. However, I'm sure what I've currently got set isn't the optimum config.
-
@AdamBeGood I believe these are default (could verify by renaming the retroarch.cfg file and re-running RetroArch to rebuild it... all of it), but I think these are the default settings:
Max swapchain images 3
Hard CPU Sync OFF/Disabled
Frame Delay 0
Audio Latency (ms) 64
Poll Type Behavior Early
Run-Ahead to Reduce Latency OFF/DisabledI've been running with these values for months. No issues.
Recommendation: If you continue to crash, check overclock settings (comment them out and see if you're stable).
-
@roslof Superb, I'll bring mine back to those values tomorrow then.
Would overclock affect the system crashing when I select to change settings to Default? It crashes every time, I've tried it a handful of times. I have no instability at any other times.
-
@AdamBeGood what is your method of changing default settings?
-
@roslof and others,
If you would be so kind as to test this over lr-mame, it'd be very much appreciated. I tried to port the code to lr-mame which was mostly similar, though a few tweaks were needed as some public members of some classes in 2016 no longer existed in the latest code:
https://mega.nz/file/UZtH3KaL#3vZNKoR8IMbo4aSdCIaLDPbs3vrXSMLuPktuRKBkr6c
https://drive.google.com/file/d/1arGrZmKZb8TLag20UbKCAQKHt81ZkOgY/view?usp=sharing
Same kind of tests would help - changing the setting, confirming it actually changes it on MAME, and testing other games you run on lr-mame to confirm that nothing actually breaks.
I tested Deathsmiles and it seems to work well.
- at 100%, it runs at average speed: 66.54% (135 seconds)
- at 42% runs at average speed: 70.95% (146 seconds)
I tested pacman as well and it didn't crash, so that's success for me.
If this gets its tires kicked and nothing breaks, I'll happily submit this upstream.
Many thanks in advance.
-
@pjft said in Deathsmiles on lr-mame2015 : Any performance tips?:
If you would be so kind as to test this over lr-mame, it'd be very much appreciated.
Me? Test a new toy? You cray.
First thing: The change works. Properly saves and loads back perfectly. No remarkable side-effects.
Air Combat (aircomb.zip)
Test: Add 4 Credits. Measure on title Screen
Default: Solid 28.45 FPS
CPU 30: Between 28.87 to 29.72 FPS
Minor Improvement. Values hold perfectly after restartVirtua Fighter (vf.zip)
Test: Attract Demo
Default: ~32 to 34 FPS
CPU 70: ~32 to 34 FPS
No noticeable improvement. Needs a higher CPU or graphics flickerPong (pong.zip)
Test: Attract Demo
Default: 47.5 to 47.8 FPS
CPU 30-50: 47.5 to 47.8 FPS
No noticeable improvement.Might be GPU bound on these (um, for Pong, I have no idea). CPU change didn't have significant/measurable impact.
But it IS working, since underclocking VF too low resulted in a negative experience.Will try more games later.
Hope this is helpful -
@roslof Retroarch Menu -> Configuration File -> Reset to Defaults is what I was going with.
-
@roslof said in Deathsmiles on lr-mame2015 : Any performance tips?:
@AdamBeGood I believe these are default (could verify by renaming the retroarch.cfg file and re-running RetroArch to rebuild it... all of it)
that will give you retroarch defaults for ALL settings, which will break retropie in various ways. we use our own defaults.
if you've messed up your retroarch settings (just don't change latency stuff unless you know exactly what you're doing, IMO), reinstall retroarch via retropie-setup, and it will create a copy of our stock retroarch.cfg as
retroarch.cfg.rp-dist
in the/opt/retropie/configs/all/
- delete the old retroarch.cfg and rename the rp-dist one to retroarch.cfg. if you instead messed with an individual core's retroarch.cfg, then reinstall that core and do the rename within/opt/retropie/configs/(whatever)/
. if you've created core/game overrides, delete them.you can see what these various latency settings do here: https://github.com/RetroPie/RetroPie-Setup/wiki/Input-Lag - as you can see, the advice is to NOT change them because they cause known problems.
-
@AdamBeGood said in Deathsmiles on lr-mame2015 : Any performance tips?:
@roslof Retroarch Menu -> Configuration File -> Reset to Defaults is what I was going with.
this will also give you the same issue i mentioned above.
-
@roslof Thanks for testing these out, and above all make sure nothing breaks. That's indeed helpful, and I'll submit the change upstream. Mostly worried about it crashing other games, but it doesn't seem to be the case.
Interesting - I hadn't kept up with MAME, I had no idea that Pong was now emulated. I imagine that it's not a really easy one to emulate, as it was more of a physical simulation if I recall correctly.
http://adb.arcadeitalia.net/dettaglio_mame.php?game_name=pong
Reading the "INFO" tab there will provide some interesting backstory.
Thanks for giving these a shot.
-
@dankcushions Fair enough, I will stop tinkering so much I think! I just really wanted to get DeathSmiles working better, and now it does. Mission accomplished.
I completed it yesterday evening! :)
Thanks very much for all the information, I don't think I've done anything severe enough to warrant reinstalling but it is good to know how to go about that for when I do mess it up!
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.