MAMEWorld >> EmuChat
Previous thread Previous  View all threads Index   Next thread Next   Flat Mode Flat  

krick
Get Fuzzy
Reged: 02/09/04
Posts: 4235
Send PM
Re: i3 8350k for MAME
01/29/18 06:32 PM


> Frame skipping is to improve performance on low powered cpu’s I thought. If your
> Coffee Lake runs the machines at full frames, no need to skip any.

frame_delay is a GroovyMAME specific feature.
It's completely different from frame skipping.


http://geedorah.com/eiusdemmodi/forum/viewtopic.php?id=290

Quote:


3. frame_delay 0

This, along with -vsync_offset, is the only option where the Groovy MAME user must really make an extra effort of testing and configure the emulator in a per-game basis in order to get the best possible emulation out of it (particularly, regarding the input lag issue), since this feature is heavily dependent on the computer's CPU and the usage every emulated game in particular makes of it.

The frame delay feature actually serves two purposes:

- Delaying the emulation of a frame in order to get the most up-to-date input state before going into the emulation itself

- Bypassing a frame queue that's built in the ATI video drivers when Direct 3-D 9 is used which adds a lag of 2-3 frames by itself (be aware that Direct 3-D 9 Ex already bypasses it, so there's no need for enabling frame delay with this version of the API for this purpose; just under plain Direct 3-D 9)

For actually getting the former, a CPU fast enough to emulate each frame at a fraction of the time that the original hardware did would be required, so this option is implemented in gradual steps from 1 to 9, where 1 stands for 10 % of a frame period and 9 stands for 90 %. This way, the user is able to adapt it to get the longer possible delay with the hardware in use. Notice that, theoretically, using -frame_delay set to 1 would be almost equal to not using -frame_delay at all (0) -- just 10 % more chances of catching the input in time for the next frame. The actual gain would come from raising from 1 to 9, and that gain only translates to the last remaining frame of lag and only statistically (that is, it may help only with 33 % of the total frames), so, in the end, the effect may not be really relevant.

The risk of enabling -frame_delay is that it becomes possible that several frames of emulation get into the same vertical retrace, especially if the emulation of a given game is fast enough on the target CPU, which results in an accelerated speed. Depending on the CPU and the emulated game's requirements, 1-2 most likely will be too low and 8-9, too high, so it's suggested to check how CPU-demanding the game is (by running it unthrottled and with frame delay disabled) and, if it's, say, around 700-1000 %, then set frame delay to 3 or 4, and then check if there're not emulation/speed issues. A better global approach, though, may be to always start with 8 and decrement it until a stable performance is got (check MAME's display for emulation speed when running every game).






GroovyMAME support forum on BYOAC







Entire thread
Subject Posted by Posted on
* i3 8350k for MAME Dante82 01/27/18 03:52 AM
. * Re: i3 8350k for MAME kevenz  02/24/18 02:52 PM
. * Re: i3 8350k for MAME R. Belmont  02/27/18 10:09 PM
. * Re: i3 8350k for MAME Dante82  02/25/18 07:53 AM
. * Re: i3 8350k for MAME kevenz  02/26/18 03:52 PM
. * Re: i3 8350k for MAME Dante82  01/30/18 03:24 PM
. * Re: i3 8350k for MAME Master O  01/30/18 03:57 AM
. * Re: i3 8350k for MAME R. Belmont  01/29/18 08:34 PM
. * Re: i3 8350k for MAME krick  01/29/18 06:37 PM
. * Re: i3 8350k for MAME B2K24  01/29/18 05:12 PM
. * Re: i3 8350k for MAME Dante82  01/29/18 04:01 PM
. * Re: i3 8350k for MAME SteelTigers  01/29/18 05:33 PM
. * Re: i3 8350k for MAME krick  01/29/18 06:32 PM

Extra information Permissions
Moderator:  Robbbert, Tafoid 
1 registered and 469 anonymous users are browsing this forum.
You cannot start new topics
You cannot reply to topics
HTML is enabled
UBBCode is enabled
Thread views: 1629