Dolphin, the GameCube and Wii emulator - Forums
Missing features? Frameskipping, HLE audio emulation and low-resolution simulation. - Printable Version

+- Dolphin, the GameCube and Wii emulator - Forums (https://forums.dolphin-emu.org)
+-- Forum: Dolphin Emulator Discussion and Support (https://forums.dolphin-emu.org/Forum-dolphin-emulator-discussion-and-support)
+--- Forum: Android (https://forums.dolphin-emu.org/Forum-android)
+--- Thread: Missing features? Frameskipping, HLE audio emulation and low-resolution simulation. (/Thread-missing-features-frameskipping-hle-audio-emulation-and-low-resolution-simulation)



Missing features? Frameskipping, HLE audio emulation and low-resolution simulation. - TL7dolphin - 10-08-2018

I was unable to find the following features known from Dolphin Emulator's full PC (desktop) version:

Frameskipping
Allows sacrificing video smoothness for emulation speed.

Low resolution emulation
The minimum internal resolution (at 40:33 aspect ratio) is 640×528.

There should be e.g. a 320×264 option for when framerate is more important than resolution.

HLE audio emulation
Maybe sub-ideal for Mario Kart DoubleDash‼ due to the known problem of the in-game VGM (video game music) not looping and just turning off.

But HLE (high-level emulation)'s advantage is the ability to play sounds, especially music, independently from the emulation speed. It is more prone to malfunctions, but works in the most cases and needs less processing power.


If these features do not exist yet, please consider it a proposal.


RE: Missing features? Frameskipping, HLE audio emulation and low-resolution simulation. - Helios - 10-08-2018

Frameskipping is now removed from desktop as well and will not be returning unless somebody wants to rewrite a very large amount of Dolphin.

sub 1x IR won't help you go faster because we're almost never GPU bottlenecked. On Android you're dealing with a crap ton of driver bugs and driver overhead due to missing and/or broken features. But even .5x IR won't let you go faster. You could run at 1x1 and still not go much faster.

We already use HLE audio emulation on Android.


RE: Missing features? Frameskipping, HLE audio emulation and low-resolution simulation. - Shonumi - 10-08-2018

Quote:Allows sacrificing video smoothness for emulation speed.

The last time I heard (I think it was skid who explained it years ago) the way frame-skipping was implemented in Dolphin didn't even work the way most people expected it. With Dolphin, it didn't draw the final frame, but it's not much of a performance gain because Dolphin still has to process a bunch of stuff related to GPU emulation. That is to say, you could skip drawing the final frame on-screen, but you couldn't skip stuff like how the GC/Wii hardware send command buffers or whatever to the GPU, or how interrupts still need to be requested and processed. All of that still takes up CPU time on the host computer. Frame-skipping helped with the GPU load on the host computer, but CPUs are often the bottleneck when running Dolphin, so not much was gained. I remember frame-skipping was somewhat "broken" as well, or at least hit or miss with the black frame issue.

Anyway, contrast Dolphin with many 2D systems and the way emulators for those handle frame-skipping. Those emulators don't draw the final frame, and they don't do any or much rendering/processing related to that frame. Most 2D game consoles just put stuff in VRAM without any additional processing (no command buffers), so that why an SNES emulator can get those kinds of performance boosts with frame-skipping. I might be misremembering some of the specifics regarding Dolphin, but that's the gist of it.


RE: Missing features? Frameskipping, HLE audio emulation and low-resolution simulation. - MayImilae - 10-08-2018

Also if memory serves, even with frameskipping enabled most of the frame was drawn anyway, so there weren't even really any performance gains!


Missing features? Frameskipping, HLE audio emulation and low-resolution simulation. - JosJuice - 10-08-2018

Others here have already given you pretty much all the answers, but in case you'd like to know why there is no option to switch between DSP HLE and DSP LLE on Android, it's because DSP LLE is really slow on ARM CPUs due to the lack of a DSP ARM JIT. So you just get DSP HLE by default without any easy way to change it. You can change it manually in the INI files if you for some reason would like to try DSP LLE, though.

Frameskipping and sub-1x internal resolutions don't exist anymore in the PC version either, so really, the only thing that's lacking from the Android version out of what you described (compared to PC versions of the same age) is the ability to use DSP LLE without editing INI files.

(10-08-2018, 11:17 AM)TL7dolphin Wrote: But HLE (high-level emulation)'s advantage is the ability to play sounds, especially music, independently from the emulation speed.

Dolphin's DSP HLE hasn't done this for years, because it can cause major bugs. Please read https://dolphin-emu.org/blog/2014/11/12/the-rise-of-hle-audio/

The advantage of DSP HLE needing less processing power still applies, though.


RE: Missing features? Frameskipping, HLE audio emulation and low-resolution simulation. - degasus - 10-11-2018

(10-08-2018, 11:17 AM)TL7dolphin Wrote: I was unable to find the following features known from Dolphin Emulator's full PC (desktop) version:

[...]

If these features do not exist yet, please consider it a proposal.

Those "features" have been dropped/replaced on the desktop builds about 5 years ago. They were either not helpful, or harmful, or not required at all. Please update your desktop version of dolphin, we've improved *a lot* in the last 5 years.