Dolphin, the GameCube and Wii emulator - Forums

Full Version: (suggestion) optimize how dolphin works?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
(09-15-2012, 09:23 AM)AnyOldName3 Wrote: [ -> ]It may be possible to have a HLE'd 100% accuracy if we eventually give up and Statically recompile bits we can't fix, although that wouldn't be ideal, as it wouldn't reach the point where dolphin would do exactly what the wii would do if the same software was in it, for example if homebrew required the function we'd worked around.

well, i dont understand why my suggestion its taken up so badly, i just think optimize the code and how dolphin works should be a priority.
a year ago play pokemon battle revolution was impossible, crashing bugs and if it worked at all i got with the same hardware 20-25 fps
now there are minimal bugs, mostly graphical only, and i get like 30-45 fps while in a double battle.
so my guess bugfixes optimize how dolphin works since those bugs uses resoruces that might have been speeding up the emulator, plus some optimization to the code at least i guess...
I think it was "badly taken" (I didn't get this impression, trust me, I've seen ideas here get shut down pretty badly) because optimizing sometimes isn't possible or easy to do. It's not always just a matter of refocusing priorities, there are some pretty severe limitations the developers face (time involved, complexity of said optimizations, how optimizations affect current code e.g major restructuring may be required). It's also not always clear what optimizations can be made, or if they will enhance performance in any significant way. In short, optimizations aren't something easy that the devs can just code. They feel that accuracy should come first since it can accomplish a lot in terms of making the emulator more compatible.
(09-16-2012, 11:23 AM)Shonumi Wrote: [ -> ]I think it was "badly taken" (I didn't get this impression, trust me, I've seen ideas here get shut down pretty badly) because optimizing sometimes isn't possible or easy to do. It's not always just a matter of refocusing priorities, there are some pretty severe limitations the developers face (time involved, complexity of said optimizations, how optimizations affect current code e.g major restructuring may be required). It's also not always clear what optimizations can be made, or if they will enhance performance in any significant way. In short, optimizations aren't something easy that the devs can just code. They feel that accuracy should come first since it can accomplish a lot in terms of making the emulator more compatible.

agreed, except i understand that and i want it to be compatible with all the possible games out there.
but in the meantime, a SMALL optimization i guess can be performed. since with the criteria i read related to a snes emulator, bnes i think it is, to fully emulate the console with a processor of @31.74 MHZ you need over 3 GHZ of processor to be able to run it.
with that criteria dolphin would need a processor like 100 GHZ? well if nasa borrows me the server, and let the sattelites crash and everything else go to hell (forgive my french) then i will be happy to enjoy a realistic hardware emulation of GC/WII.
the rest of you will need to stay in line before me of course Tongue
Hz (be it KHz, MHz, GHz or whatever) is a very poor measurement to compare CPU performance between different chips of different architectures (and so are DMIPS for that matter). So you can't really say it'd take 100GHz CPU, especially without saying what kind of CPU :p Just thought I'd let you know since I see that a lot on emulation boards when people say "you'd need XY-GHz to run that." It's more complicated than that, unfortunately.

But yes, small optimizations are probably possible in existing program logic. I don't know if this applies to Dolphin specifically, but you might run into a case, say texture loading, where you find that you can't change the core behavior to be faster, but there could be things you can do in the program logic more efficiently e.g. fewer copy operations (using pointers) and making tighter loops. Though finding things like that needs a lot of code review and time by those familiar with the affected code, hence it's not a focus now, but I'm sure it could be done in due time Wink
(09-16-2012, 11:54 AM)Shonumi Wrote: [ -> ]Hz (be it KHz, MHz, GHz or whatever) is a very poor measurement to compare CPU performance between different chips of different architectures (and so are DMIPS for that matter). So you can't really say it'd take 100GHz CPU, especially without saying what kind of CPU :p Just thought I'd let you know since I see that a lot on emulation boards when people say "you'd need XY-GHz to run that." It's more complicated than that, unfortunately.

But yes, small optimizations are probably possible in existing program logic. I don't know if this applies to Dolphin specifically, but you might run into a case, say texture loading, where you find that you can't change the core behavior to be faster, but there could be things you can do in the program logic more efficiently e.g. fewer copy operations (using pointers) and making tighter loops. Though finding things like that needs a lot of code review and time by those familiar with the affected code, hence it's not a focus now, but I'm sure it could be done in due time Wink

thats all i am sayng.
btw the processor differences its really true.
once i had an experimental pentium 4 processor, a version from intel that sold for companies only that was a "beta" dual core. it show himself as 2 different processors each of 3.0 that should give me 6.0 but the real processing time was 3.1 i think lol (and with overclocking that was lol)
my core 2 duo its 10x faster that the p4 processor, and a friend has a amd of 3 cores each 3.0 ghz and its as fast as my core 2 duo, sure installing programs and loading stuff its faster, and some games but overall its a very similar speed his amd system and mine.
my mom has a amd dual core and its slow as a intel p3 processor lol.
I'm sorry if I sound rude with this but we get a lot of similar "requests" in these forums. Your suggestion boils down to "make dolphin faster". A lot of people come in here and propose that the devs should make more of an effort to optimize dolphin better but none of them make any suggestions as to how or what we could do to achieve this because most of them aren't programmers and don't have a clue what they're talking about. Unless you can make a specific suggestion as to what we should do to improve dolphins performance your suggestion is meaningless.

Also you really need to work on your English. I can't even figure out what you were trying to say with that last post because it was written in such an incomprehensible way.
(09-16-2012, 12:22 PM)NaturalViolence Wrote: [ -> ]I'm sorry if I sound rude with this but we get a lot of similar "requests" in these forums. Your suggestion boils down to "make dolphin faster". A lot of people come in here and propose that the devs should make more of an effort to optimize dolphin better but none of them make any suggestions as to how or what we could do to achieve this because most of them aren't programmers and don't have a clue what they're talking about. Unless you can make a specific suggestion as to what we should do to improve dolphins performance your suggestion is meaningless.

Also you really need to work on your English. I can't even figure out what you were trying to say with that last post because it was written in such an incomprehensible way.

sorry i am rusty on my english. my main language its spanish (latin american)
well my idea of how to, its to clean or redo the code, and change patches for real fixes of bugs. thats all. i am not a programmer so i cannot really be more specific.
Apply patch/fix for a certain game will break compatibility of the other ...
Choose your poisons :
_Speed : Most games run better now but crash every 5 mins or so -> Not playable
_Accuracy : Most games run slow but almost no crash -> Playable
(09-16-2012, 12:56 PM)admin89 Wrote: [ -> ]Apply patch/fix for a certain game will break compatibility of the other ...
Choose your poisons :
_Speed : Most games run better now but crash every 5 mins or so -> Not playable
_Accuracy : Most games run slow but almost no crash -> Playable

what about _accuracy but 100% optimized so dolphin only uses the necesary resources and nothing else?
bugs and some patches slow down any emulator. please correct me if i am talking crazy since i am not a programmer, but i have a long while using different kind of emulators.
Quote:bugs and some patches slow down any emulator. please correct me if i am talking crazy since i am not a programmer, but i have a long while using different kind of emulators.

Bugs are a result of the emulation not being very accurate. Bugs do not directly affect performance. It is, however, true that as accuracy increases, there tends to be less bugs but also less speed. So eliminating bugs actually hurts performance. The bugs themselves don't have much if any effect.

By the way, plenty of people on the forum speak spanish (like Shonumi and I, although Shonumi is much better than me because she knows more vocabulary) so you can post both Spanish and English I you want to be understood better.

EDIT: correction: MOST bugs in Dolphin do not directly affect performance to a noticeable degree that fixing them would be any help to speed. The general trend is that the bugs actually increas performance but decrease accuracy.
Pages: 1 2 3