Dolphin, the GameCube and Wii emulator - Forums

Full Version: Questions on LLE and slowdowns
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
Hello all,

I'm new to Dolphin, and emulation in general, and needed to ask some questions. I know that many games seem to have issues with sound when using HLE emulation for DSP engine. What I don't get is why many games can get significant slowdowns when using LLE recompiler. Some games, like Tales of Symphonia for GC, will go as far as dropping emulation speed to lower than 70% in certain places when LLE recompiler is used.

HLE seems to have the most trouble with GC games (at least the ones I tried) and does make the performance of other games dip below 90% every once in a while. If there is some reason I'd like to know about it, especially if it is something I'm doing wrong.

Cheers.
You're doing nothing wrong. But LLE needs a powerful CPU to work flawlessly. Yours will have to be overclocked if you plan to use LLE
LLE stands for low level emulation, meaning the DSP hardware is emulated as accurately as possible. It acts like the real GC/Wii DSP would, updating registers, executing microcode, etc. This makes it vastly more accurate, but also CPU intensive. HLE stands for high level emulation, meaning if we know the large scale actions the DSP is supposed to do, we don't need to emulate everything, and we can skip a number of steps. IIRC, HLE audio essentially grabs and decodes audio as soon as the location in memory is given, so it's both faster and less demanding on the CPU. However, HLE audio isn't as accurate, you are skipping steps after all. Sometimes it's not a problem, but it is for some games.

Sorry for the long explanation, I'm basically repeating LordVador. Just felt like giving you a more detailed picture of what's going on Smile
(07-18-2012, 05:51 PM)ShiroiKage Wrote: [ -> ]Some games, like Tales of Symphonia for GC, will go as far as dropping emulation speed to lower than 70% in certain places when LLE recompiler is used.

Not on i7 980.
You probably didnt enable lle on thread or some other setting is wrong
(07-18-2012, 09:57 PM)Shonumi Wrote: [ -> ]IIRC, HLE audio essentially grabs and decodes audio as soon as the location in memory is given, so it's both faster and less demanding on the CPU. However, HLE audio isn't as accurate, you are skipping steps after all. Sometimes it's not a problem, but it is for some games.
Fwiw, it's not that HLE is unsuitable for DSP emulation per se, it's just that our HLE DSP backend is really full of hacks and fixing it would require a very detailed knowledge of how the various DSP µcodes work (... in contrast to "just" reverse-engineering the DSP opcodes and stuff). Since we have close to perfect LLE for the DSP, however, no one really cares to do the work that would be required to fix the HLE engine.
That said, given enough work a close to perfect HLE backend could be added to Dolphin, but as it stands right now it's not going to happen anytime soon.
Didn't mean to imply that HLE audio was no good or something like that :p It works for the majority of my games just fine. I guess I should have said that not as accurate doesn't necessarily mean not accurate enough. Maybe I'll take a shot at clearing up the hacks in the HLE engine one of these days, once I get a better handle on DSP emulation.
Might just as well do sth better with your time (like starting from scratch with proper dsp hle emulation in gekko xD). Lots of people took a shot at this and came to realize that it's no fun pretty fast.
azimer has been working on the dsp's hle for some time
(07-20-2012, 01:08 AM)neobrain Wrote: [ -> ](like starting from scratch with proper dsp hle emulation in gekko xD).

Just started digging into the code yesterday, as a matter of fact. Hopefully I'll make some progress.
Thanks for the replies (kind of late on reading the topic)

So I overclocked my processor up to 4.0GHz and it did help with emulation speeds, but in Zelda WW, for example, it still slows to the mid 80s in combat if I'm using LLE. Heck, outside of combat I can run both LLE and EFB --> RAM together and have almost no problems.

I tried keeping EFB --> texture with LLE and nothing, still. As long as LLE is running, things go haywire. I tried LLE dedicated thread but, of all things, it slowed down emulation speed to a crawling 20%. This is not consistent as the games will run normally most of the time, but when I get to the slowdown areas they still slow down as if nothing has changed.

Also, it is not like my processor gets maxed out or anything. The highest it got to while emulating is about 25%.

Pages: 1 2 3