You are not logged in.

#1 2014-12-02 01:07:27

root
Member
From: 127.0.0.1
Registered: 2012-04-13
Posts: 297

['Solved'] sdlmame - performance issues 0.156

I have upgraded to 0.156.u0 and since then I have noticed a poorer performance in the games I play.

At first I thought that it could be an issue with my older mame.ini file. Therefore I generated a new one and imported to it the settings I had in the older mame.ini file. See:

#
# CORE CONFIGURATION OPTIONS
#
readconfig                1
writeconfig               0

#
# CORE SEARCH PATH OPTIONS
#
#rompath                   roms
rompath                   $HOME/Sdlmame/roms
hashpath                  hash
samplepath                $HOME/.mame/samples
artpath                   $HOME/.mame/artwork
ctrlrpath                 $HOME/.mame/ctrlr
inipath                   $HOME/.mame;.;ini
fontpath                  .
cheatpath                 cheat
crosshairpath             crosshair

#
# CORE OUTPUT DIRECTORY OPTIONS
#
cfg_directory             $HOME/.mame/cfg
nvram_directory           $HOME/.mame/nvram
#memcard_directory         $HOME/.mame/memcard
input_directory           $HOME/.mame/inp
state_directory           $HOME/.mame/sta
snapshot_directory        $HOME/.mame/snap
diff_directory            $HOME/.mame/diff
comment_directory         $HOME/.mame/comments

#
# CORE STATE/PLAYBACK OPTIONS
#
state                     
autosave                  0
playback                  
record                    
mngwrite                  
aviwrite                  
wavwrite                  
snapname                  %g/%i
snapsize                  auto
snapview                  internal
statename                 %g
burnin                    0

#
# CORE PERFORMANCE OPTIONS
#
autoframeskip             1
frameskip                 0
seconds_to_run            0
throttle                  1
sleep                     1
speed                     1.0
refreshspeed              0

#
# CORE ROTATION OPTIONS
#
rotate                    1
ror                       0
rol                       0
autoror                   0
autorol                   0
flipx                     0
flipy                     0

#
# CORE ARTWORK OPTIONS
#
artwork_crop              0
use_backdrops             1
use_overlays              1
use_bezels                1
use_cpanels               1
use_marquees              1

#
# CORE SCREEN OPTIONS
#
brightness                1.0
contrast                  1.0
gamma                     1.0
pause_brightness          0.65
effect                    none

#
# CORE VECTOR OPTIONS
#
antialias                 1
beam                      1.0
flicker                   0

#
# CORE SOUND OPTIONS
#
#sound                     1
samplerate                44100
samples                   1
volume                    0

#
# CORE INPUT OPTIONS
#
coin_lockout              1
ctrlr                     
mouse                     0
joystick                  1
lightgun                  0
multikeyboard             0
multimouse                0
steadykey                 0
ui_active                 0
offscreen_reload          0
joystick_map              auto
joystick_deadzone         0.3
joystick_saturation       0.85
natural                   0
joystick_contradictory    0
coin_impulse              0

#
# CORE INPUT AUTOMATIC ENABLE OPTIONS
#
paddle_device             keyboard
adstick_device            keyboard
pedal_device              keyboard
dial_device               keyboard
trackball_device          keyboard
lightgun_device           keyboard
positional_device         keyboard
mouse_device              mouse

#
# CORE DEBUGGING OPTIONS
#
#log                       0 (OSD DEBUGGING OPTIONS)
#verbose                   0 (OSD DEBUGGING OPTIONS)
update_in_pause           0
#debug                    0 (OSD DEBUGGING OPTIONS)
debugscript               
#debug_internal            0

#
# CORE MISC OPTIONS
#
drc                       0
drc_use_c                 0
bios                      
cheat                     0
skip_gameinfo             0
uifont                    default
ramsize                   
confirm_quit              0
ui_mouse                  0
autoboot_command          
autoboot_delay            2
autoboot_script           
http                      0
http_port                 8080
http_path                 web
console                   0

#
# OSD DEBUGGING OPTIONS
#
log                       0
verbose                   0
debug                     0
debugger                  auto
oslog                     0
watchdog                  0

#
# OSD PERFORMANCE OPTIONS
#
multithreading            1
numprocessors             auto
#sdlvideofps               0
bench                     0

#
# OSD VIDEO OPTIONS
#
video                     soft
numscreens                1
window                    1
maximize                  0
keepaspect                1
unevenstretch             1
waitvsync                 0
syncrefresh               0

#
# OSD PER-WINDOW VIDEO OPTIONS
#
screen                    auto
aspect                    auto
resolution                640x480
view                      auto
screen0                   auto
aspect0                   auto
resolution0               auto
view0                     auto
screen1                   auto
aspect1                   auto
resolution1               auto
view1                     auto
screen2                   auto
aspect2                   auto
resolution2               auto
view2                     auto
screen3                   auto
aspect3                   auto
resolution3               auto
view3                     auto

#
# OSD FULL SCREEN OPTIONS
#
switchres                 0

#
# OSD SOUND OPTIONS
#
sound                     auto
audio_latency             2

#
# SDL PERFORMANCE OPTIONS
#
sdlvideofps               0

#
# SDL VIDEO OPTIONS
#
centerh                   1
centerv                   1
scalemode                 none

#
# OpenGL-SPECIFIC OPTIONS
#
filter                    1
prescale                  1
gl_forcepow2texture       0
gl_notexturerect          0
gl_vbo                    1
gl_pbo                    1
gl_glsl                   1
gl_glsl_filter            1
glsl_shader_mame0         none
glsl_shader_mame1         none
glsl_shader_mame2         none
glsl_shader_mame3         none
glsl_shader_mame4         none
glsl_shader_mame5         none
glsl_shader_mame6         none
glsl_shader_mame7         none
glsl_shader_mame8         none
glsl_shader_mame9         none
glsl_shader_screen0       none
glsl_shader_screen1       none
glsl_shader_screen2       none
glsl_shader_screen3       none
glsl_shader_screen4       none
glsl_shader_screen5       none
glsl_shader_screen6       none
glsl_shader_screen7       none
glsl_shader_screen8       none
glsl_shader_screen9       none

#
# SDL FULL SCREEN OPTIONS
#
useallheads               0

#
# SDL KEYBOARD MAPPING
#
keymap                    0
keymap_file               keymap.dat
uimodekey                 SCRLOCK

#
# SDL JOYSTICK MAPPING
#
joy_idx1                  auto
joy_idx2                  auto
joy_idx3                  auto
joy_idx4                  auto
joy_idx5                  auto
joy_idx6                  auto
joy_idx7                  auto
joy_idx8                  auto
sixaxis                   1

#
# SDL LOWLEVEL DRIVER OPTIONS
#
videodriver               auto
audiodriver               auto
gl_lib                    auto

But despite noticeable improvement I still experience the following issues:

- wine like startup; that is, it opens like program I open with wine leading to reload of f.e. the tint2 bar
- graphical glitch in the menu window, especially around the mouse cursor which shows the desktop background until it is moved; similarly when moving the window the file listing "breaks" its lines until returning to normal when the window is stopped from moving
- very noticeable keyboard delay which makes it difficult to keep up to the game needs (f.e. turning around corners in World Rally).

It seems that despite the sound part being fully normal the screen display (even the computer in general?) is more stressed in this new version potentially causing the delay in the key pressing being detected.
I have noticed that the updated version comes with a new dependency on sdl2 and sdl2_ttf.
Due to these new dependencies, even though I am not sure of their impact on older hardware like mine, is sdlmame supposed to not run as smoothly as with the previous version?

Someone else with old hardware has experienced similar regression in performance with this version?

Last edited by root (2015-01-29 00:10:41)


\(o_X)/
                        'Cause I wanna be an Archy - An Archy in the UK // Sex Pistols

Offline

#2 2014-12-02 14:01:39

satanselbow
Member
Registered: 2011-06-15
Posts: 538

Re: ['Solved'] sdlmame - performance issues 0.156

What do you classify as  old?

I've not noticed any degradation in performance with 0.156 - might be better to start with a new vanilla config and go from there and see if you can isolate the issue.

You seem to have tweaked or omitted a number of settings in the "Core Performance" section(s) of mame.ini which may need to be reverted (purely comparing against the largely untouched file on my machine).

Offline

#3 2014-12-04 02:44:46

root
Member
From: 127.0.0.1
Registered: 2012-04-13
Posts: 297

Re: ['Solved'] sdlmame - performance issues 0.156

I am talking about a PIII - M @ 1,13 GHz on a T23.

I followed your advice and created, again, another default mame.ini file. In the end it seems that the bottleneck is the multithread option. An option, though, that didn't cause any performance issues in the previous version when set to 1.

When using that option set to 0, the game works normal again, or better said "normal"; now the performance issues are that even with a 10/10 frameskip the game meets 100% at a less constant interval than the previous version. As a comparison, with the frameskip set to 10/10 the % with the latest 0.155 version and using the very same ini file goes, and easily, far beyond 200.

In the same way, the graphical glitch is still there just as the 'broken lines' when moving the window. And the sound includes now some annoying noise which, to some extent extend, was also present in the previous version but in this one reached the category of annoying.

Do you mind telling me what your setup is? And post a copy of your mame.ini file?


\(o_X)/
                        'Cause I wanna be an Archy - An Archy in the UK // Sex Pistols

Offline

#4 2014-12-04 04:55:01

Grinch
Member
Registered: 2010-11-07
Posts: 265

Re: ['Solved'] sdlmame - performance issues 0.156

I don't know if Mame has changed anything internally with it's multithreading in the last version, however one thing you could do if you need some added performance is to recompile the package, the version served in COMMUNITY uses OPTIMIZE=2 (-O2), you will get some added performance if you use OPTIMIZE=3 (-O3), perhaps ARCHOPTS="-march=native" will help some as well.

Offline

#5 2014-12-05 09:59:37

satanselbow
Member
Registered: 2011-06-15
Posts: 538

Re: ['Solved'] sdlmame - performance issues 0.156

The only diff I have from install is the rom path wink

Offline

#6 2015-01-29 00:09:57

root
Member
From: 127.0.0.1
Registered: 2012-04-13
Posts: 297

Re: ['Solved'] sdlmame - performance issues 0.156

@Grinch

I am sorry if my comment regarding 'blaming' multithreading misguided you but it seem as if  a rebuild wouldn't help much as I pretty much sure that the change to sdl2 does not work well on old systems like my own. Thanks nevertheless for the suggestion.

@satanselbow

The more vanilla I go the more the more I am missing the cream I am used to with the old version so to speak.
Sure, the performance 'improves' (to some extent) but really not comparable to what I was used and, ultimately, liked.
In that sense, at least as far as I am concerned, I consider staying with the older version and 'freezing' the package the best option I have at my disposal.

If the rom path is the only thing you change I presume your setup is pretty much newer than the one discussed smile

Last edited by root (2015-01-29 00:11:16)


\(o_X)/
                        'Cause I wanna be an Archy - An Archy in the UK // Sex Pistols

Offline

Board footer

Powered by FluxBB