OpenMSX slow and low fps on Raspberry Pi 4

Page 5/7
1 | 2 | 3 | 4 | | 6 | 7

By Manuel

Ascended (16625)

Manuel's picture

06-06-2020, 18:28

You could try revision c3679faad640f9b8d82f59aeef51294ba0dc517c.... that's the last one with OpenGL 2.1. Would be nice to know how that one runs.

By Manuel

Ascended (16625)

Manuel's picture

07-06-2020, 11:06

gaula82 wrote:

-Build and SDL2 version with KMSDRM video backend support. Use current soures for that. DO NOT run emulators inside X11: run them on KMSDRM, with NO X11 server running.

Apparently, this is the way to go for RPi.

By Randam Hajile

Expert (80)

Randam Hajile's picture

07-06-2020, 11:26

Manuel wrote:

You could try revision c3679faad640f9b8d82f59aeef51294ba0dc517c.... that's the last one with OpenGL 2.1. Would be nice to know how that one runs.

OK, I built OpenMSX with revision e2aaec058341fce27e45d0434cf2080455a91907, which is 1 revision before the one you mentioned, because that one already contains work on OpenGL 3.3.

Results are quite positive, actually. Using renderer SDLGL-PP and Scale x2, I get an almost constant frame rate of 50fps. It's not 100% flawless, but close enough!

Seems like that is the best option for the pi 4 for now... thanks for the suggestion. Smile

By DarkSchneider

Paladin (929)

DarkSchneider's picture

07-06-2020, 17:42

I have to say that the new render subsystem is much slower than the old one. On PC I use the old SDL instead the SDLGL-PP because I get much more speed in throttle mode.

By pgimeno

Master (169)

pgimeno's picture

07-06-2020, 17:49

DarkSchneider wrote:

I have to say that the new render subsystem is much slower than the old one. On PC I use the old SDL instead the SDLGL-PP because I get much more speed in throttle mode.

I was experiencing the same, and it turned out to be caused by VSYNC. When VSYNC became adjustable, disabling it restored normal behaviour for me. Until then, setting maxframeskip=100 worked around it.

I'm not sure if that's the issue you're having, though.

By DarkSchneider

Paladin (929)

DarkSchneider's picture

07-06-2020, 18:05

pgimeno wrote:
DarkSchneider wrote:

I have to say that the new render subsystem is much slower than the old one. On PC I use the old SDL instead the SDLGL-PP because I get much more speed in throttle mode.

I was experiencing the same, and it turned out to be caused by VSYNC. When VSYNC became adjustable, disabling it restored normal behaviour for me. Until then, setting maxframeskip=100 worked around it.

I'm not sure if that's the issue you're having, though.

I use Catapult and it has no VSYNC option. Simply when using SDL it runs much faster than with SDLGL-PP. Don't know exactly the settings that Catapult uses, but in both cases with the same maxframeskip.

By Manuel

Ascended (16625)

Manuel's picture

07-06-2020, 19:13

So, try this:
- in Catapult set maxframeskip to 100 or so (whatever max you can put in there). Does that help?

Or, open the console with F10 and type: set sync_to_vblank_mode immediate, which gives no sync to vblank. This setting is new in recent development builds.

By DarkSchneider

Paladin (929)

DarkSchneider's picture

07-06-2020, 19:31

Changing VBLANK could vary slighty, but not very noticeable.
Increasing the maxframeskip helps, but this means that the rendering process takes much longer in the new renderer, if there is need to skip more frames to get the same speed.
And the RPi has not a so great CPU compared to PC.

By Manuel

Ascended (16625)

Manuel's picture

07-06-2020, 19:38

No, the SDLGL-PP takes much less CPU processing, as most of it is done on the GPU. But if there is vsync, it will never output more than 60 fps (for typical monitors). Hence the frameskip needed. What kind of OS and GPU are you using?

By pgimeno

Master (169)

pgimeno's picture

07-06-2020, 20:02

I wonder if it's falling back to software GL.

Page 5/7
1 | 2 | 3 | 4 | | 6 | 7