Dolphin, the GameCube and Wii emulator - Forums

Full Version: HLE or LLE
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4
Quote:I can't believe you people actually think this stuff is true, and you are all "experts".
I'd say they have more knowledge on the subject than you. You still haven't provided any technical


Quote:He he knows so much, he would know that LLE is superior in terms of accuracy to HLE.
We all know LLE can be more accurate, there are times when HLE is just as accurate as LLE. You don't code, do you??? If you did I imagine you would know that there is a hundred different ways to code anything. Each have their own optimizations, pros and cons. Hle and Lle are basically just different ways to code something. Hle using short cuts, but not in the way you think. The example AON3 posted is a good way to put it. You can put the same code into either, an HLE or LLE emulator, and you'll get the same result back. This isn't always, but it does happen. And LLE is not always superior.
Quote:No one is going to deliberately title there video incorrectly and say SNES9x is HLE when it isn't. SNES9x is most definitely a HLE emulator. Anyone who argues against this is ignorant and stubborn.
He wasn't even saying the video was mis-named. He was saying that it doesn't prove anything.
Quote:If the bugs are there is LLE, they will most definitely be there with HLE. HLE will never match LLE in terms of accuracy. Never.
Look up. AON3's example really helps to show you how it can.
Quote:No it doesn't, at all. Just because upscaling USES interpolation to resize a given resolution, doesn't mean that it IS interpolation. Its the most absurd thing I've ever had to argue about.
Here
Here as well.

Quote: Talk is cheap. DO IT.
He already did it.
Another small counterpoint:
(07-11-2013, 01:29 AM)shoober420 Wrote: [ -> ]
Shonumi Wrote:In short, using HLE in one department doesn't somehow mean everything else is suddenly using HLE or even affected by the parts that do use HLE. It just doesn't work like that.
When the core of the emulator is built upon HLE, then yes it does.
What do you define as the "core" of the emulator? If this "core" is "built upon HLE", it must be HLEing some specific hardware, right? What hardware is this "core" emulating?
SNES9x is not LLE. Prove it besides with code.

I disagree that upscaling is interpolation. Nothing will change my mind. Just because some random guy on a forum says it is, doesn't mean it actually is.

Mupen64Plus is not a true LLE emulator. Its based off of Mupen64 which is a HLE emulator. I will be waiting for Shonumi to make this true LLE emulator that allows you to increase internal upscaling. He and no one else has done it.

I don't feel like arguing with any of you anymore.
(07-11-2013, 12:15 PM)shoober420 Wrote: [ -> ]SNES9x is not LLE. Prove it besides with code.

What is this I don't even
(07-11-2013, 12:33 PM)ExtremeDude2 Wrote: [ -> ]What is this I don't even

Throwing a bunch of code in someones face instead of pin pointing where exactly this supposed LLE code is has to be the worst example of proof. Copying and pasting links to code, how technical.
(07-11-2013, 01:02 PM)shoober420 Wrote: [ -> ]
(07-11-2013, 12:33 PM)ExtremeDude2 Wrote: [ -> ]What is this I don't even

Throwing a bunch of code in someones face instead of pin pointing where exactly this supposed LLE code is has to be the worst example of proof. Copying and pasting links to code, how technical.
You're arguing about something this technical and when someone gives technical answer that's now not a good enough answer simply because you don't know what you're looking at, nor do you possess the knowledge for this argument in the first place. You've spat out many of your arguments from thin air, not even knowing what you're talking about. If you did know, this would be the best example of proof for you. You've done nothing but waste everyone's time trying to correct you, simply because we cannot let a user who doesn't know any better see what you wrote and us not respond because that would allow them to think what you wrote is true, then they would be misinformed. Many users are tired of arguing, we've made our case. We've given proof, examples, etc. That's the best we can do, and that fact you say stuff like
Quote:Nothing will change my mind.
That shows how stubborn you are and if that's the case then you are just here to argue. I don't know if you're trying to be a troll, or if you find this funny, but the best thing for you to do is to get off the forums.
He doesn't need to see the code. He knows it's true in his heart. And that's good enough for him.
(07-11-2013, 01:02 PM)shoober420 Wrote: [ -> ]
(07-11-2013, 12:33 PM)ExtremeDude2 Wrote: [ -> ]What is this I don't even

Throwing a bunch of code in someones face instead of pin pointing where exactly this supposed LLE code is has to be the worst example of proof. Copying and pasting links to code, how technical.
Where is the lle code, you ask? Well that's an easy answer: everywhere. The entire .cpp file i linked is lle emulation.

There is absolutely no way whatsoever to differentiate lle and hle except by examining the source code. The only difference between them is the method of emulation.
shoober420 Wrote:Bit for bit is impossible and very subjective. I don't even agree with byuu there. This is emulation, not replication. Emulation can never be bit for bit perfect, even with LLE (unless its something simple).

I'm not going to be as forward as RachelB, but on what basis can you say that? What basis do you have to disagree with byuu when you have no technical idea concerning what you're talking about? Emulation is exactly focused on replication, duplication, recreation, and any other synonyms you can think of:

Wikipedia Wrote:an emulator is hardware or software or both that duplicates (or emulates) the functions of one computer system (the guest) in another computer system (the host), different from the first one, so that the emulated behavior closely resembles the behavior of the real system (the guest). This focus on exact reproduction of behavior is in contrast to some other forms of computer simulation, in which an abstract model of a system is being simulated. For example, a computer simulation of a hurricane or a chemical reaction is not emulation.

shoober420 Wrote:I never said complex hardware can't be HLE'd, I was simply trying to say that LLE will more accurately emulate the complex hardware (and the simple hardware).

But you did say that only simple hardware could be HLE'd accurately, which rules out the possibility that you think complex hardware could be HLE'd accurately:

shoober420 Wrote:Only the "simple" things can be emulated that accurate.

The issue we're debating isn't whether or not LLE will more accurately emulate complex hardware, it's whether or not HLE can accurately emulate complex hardware. Your statements say that it's not possible for HLE to accurately emulate complex hardware. We've shown otherwise with real-life examples.

shoober420 Wrote:Oh that would work, it just wouldn't be accurate, which is the whole thing I'm trying to explain to you. LLE is more accurate then HLE.

Explain how it wouldn't be accurate, technically. Saying LLE is more accurate than HLE doesn't say how an HLE method isn't accurate. Again, HLE methods fail for specific, technical reasons. I'm asking you to provide one (at least).

shoober420 Wrote:Okay, maybe on the simple things you might be able to emulate it 100%, but on the complex things its not going to happen, not even with LLE.

Even from the same company that designed the original hardware, has access to all of the original documentation, has access to the some of the very same people who designed the games and the console's components, and has more knowledge about the internal workings of the system than anyone else? What's stopping them from emulating everything, simple or complex, 100%? Again, there are specific technical reasons why Nintendo is able to accurately emulate an SNES on systems like the Wii and 3DS 100% as far as we know, and why other implementations such as the 360's original XBOX emulation isn't quite up to 100% (inaccurate and incomplete emulation profiles used for certain games).

shoober420 Wrote:I know that, it uses interpolation to upscale. Just because something uses something, it doesn't become what it uses.

If we take what you say, that upscaling uses interpolation, consider that on one level all that upscaling does is use interpolation by your definition. By your account, the only thing upscaling does is interpolation. How is upsclaing then not interpolation if all it ever does revolves around interpolation?

shoober420 Wrote:Yes it does.

Demonstrate that then. Show me something (doesn't have to be anything fancy, nearest neighbor is fine), then go step-by-step through the process of upscaling. Show me where interpolation is utilized like some sort of tool in the overall process. Show me that, and I'll show that interpolation is isn't utilized like a tool during upscaling, I'll show you that interpolation is the whole process itself.

shoober420 Wrote:HLE can't accurately replicate mid-scanline rendering in the PPU, which is why it happens in the first place.

And you have no evidence that it's because of HLE that the mid-scanline rendering isn't happening correctly, and not because an LLE implementation is buggy or incomplete. It isn't that hard to ask the developers to confirm or deny this (which I'm in the process of doing). Again, my point was that you keep assuming that HLE is the cause without considering other things can just as well be the cause or without trying to find specific evidence that HLE is the culprit.

shoober420 Wrote:Tell her to examine it again, because SNES9x is not LLE.

She never said SNES9x was LLE (implying the that whole emulator is an LLE emulator). She said the CPU is LLE'd. Again it isn't that hard to confirm with the developers of SNES9x themselves.

shoober420 Wrote:So you knew this whole time that the CPU isn't HLE'd, but were trying arguing against it with me this whole time? Wow, you're a real big jerk bro.

First of all, please go back and look at your old thread. I said it then that using HLE in the CPU is a very rare occassion when programming an emulator. This isn't something I've suddenly pulled out of nowhere.

Shonumi Wrote:it's rare to get a chance to HLE any parts of the CPU. This is due to the fact that HLE relies on mimicking the large-scale behavior of hardware. The large-scale behavior of a CPU is to run specific programs. To HLE that, you'd necessarily have to know the large-scale behavior of the program (e.g. ROM, ISO, DOL, etc) you're running. That's not very practical unless there are only a handful of games for the emulator, and you know the assembly of each game very well.

Of course I knew the CPU isn't HLE'd, so of course I'd debate with you, because you've been saying CPUs can be emulated via HLE.

shoober420 Wrote:Well apparently, there were a lot of SNES emulators that used HLE for the CPU
shoober420 Wrote:Most, if not all N64 emulators use HLE for the CPU

What we have been arguing about was whether or not HLE could be used for only simple things or if it could accurately emulate complex things. I've already stated that there are several requirements to being able to use HLE effectively: you need to be able to reliably reproduce the large-scale behavior of the hardware, and you need to thoroughly understand how that hardware functions (through reverse engineering). Machine-complexity isn't a factor, though it can correlate to how well large-scale behavior can be reproduced. Because the large-scale behavior can't suitably be recreated without following each step exactly, CPU emulation tends to largely be LLE'd.

shoober420 Wrote:Talk is cheap. DO IT.

The custom sprites? Already did that last month. Increasing the internal resolution on a DS emulator? I'm already studying and experimenting with it. Again, my DS emulator project is 4 or 5 years down the road. I'm going to do GB/GBC/GBA emulation before that. In the meantime, I'll be waiting for a detailed academic paper explaining why "true LLE emulators" are technically incapable of increasing the internal resolution.

shoober420 Wrote:saying upscaling uses its own special form of interpolation, which is not true.

But it does use its own form of interpolation. So does downscaling. So does bilinear texture filtering. Interpolation isn't a single, specified algorithm; interpolation describes numerous algorithms that perform various tasks.

shoober420 Wrote:It also is saying that interpolation can't be used without some form of upscaling, which also isn't true.

You're the only one here claiming that. We've all claimed that you can interpolate without necessarily upscaling something, just as you can interpolate without necessarily downscaling something. You keep trying to claim we're saying otherwise, but if you look at all of our posts, we haven't been saying anything different.

shoober420 Wrote:If the CPU uses an LLE interpreter, but the emulator itself is HLE, it still uses HLE on the CPU in some form, making it not a true LLE CPU emulator (unlike MESS which is).
shoober420 Wrote:Mupen64Plus is not a true LLE emulator. Its based off of Mupen64 which is a HLE emulator.

Even if it falls under your category of "HLE emulator", so what? Whether or not Mupen64Plus was an "LLE emulator" or an "HLE emulator" was not something we were debating. You've been claiming that it HLEs the CPU and if not, using HLE somewhere - even if the CPU were LLE'd - means some form of HLE is still being used on the CPU. That's what we've been discussing. Both of those aforementioned claims are wrong.

I had a little chat with the lead developer from Mupen64Plus. Got a chance to say hi and thank him for the emulator. Also asked about instances of HLE within Mupen64Plus:

Shonumi Wrote:I had a little chat with the lead developer from Mupen64Plus. Got a chance to say hi and thank him for the emulator. Also asked about instances of HLE within Mupen64Plus:


[Image: clap.gif]

I cannot believe you went through the effort to do that.
Pages: 1 2 3 4