Dolphin, the GameCube and Wii emulator - Forums
[Suggestion] OpenMP - 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: Development Discussion (https://forums.dolphin-emu.org/Forum-development-discussion)
+--- Thread: [Suggestion] OpenMP (/Thread-suggestion-openmp)



[Suggestion] OpenMP - Unknownforce - 04-27-2009

I was just looking around at different ways to develop multi-threaded applications and I think dolphin could benefit greatly from this.

It's called OpenMP. Check out OpenMP.org and look at the specifications, it has all the information needed.

I didn't read too much into it, but from just skimming over it, it doesn't seem like it would take too much re-write, it could also get rid of the current dual core option which currently isn't very stable as it is. Plus it also seems like it would not only do two threads, but as many as are available to the CPU, so perhaps quad cores could have even more increase over dual core...

It seems like a better alternative than trying to work out the synchronization problems that the current multi-core solution that dolphin has now. But I don't know how much re-write would be necessary to make use of it.

I could also just have mis-read it and not understand it at all. It's just something I came across and figured I'd share and see if it might help.


RE: [Suggestion] OpenMP - ector - 04-27-2009

Do you honestly think that we don't know what OpenMP is and what it does? Seriously. That's almost an insult. This seems to happen a lot - someone reads a random buzzword, and assumes that the reason we're not using it is that we've never heard of it, rather than having made a choice.

OpenMP is great for splitting giant inherently parallell for loops and things like that onto several CPUs. It is of no use whatsoever when your task is inherently linear, like the process of emulating a CPU or a GPU.

The current multicore solution, manually managing a couple of threads and carefully doing as little synchronization as possible, is the only way to go if you want an emulator to go fast, which we do.


RE: [Suggestion] OpenMP - Unknownforce - 04-28-2009

Sorry, I thought it was something new and thought it might help. But I looked again and saw the copyright date on it. I didn't realize it's been around for that long.

It was most definitely not meant as an insult.

Thanks for explaining it.


RE: [Suggestion] OpenMP - CacoFFF - 04-28-2009

It's better to look into the future, once the nm limit for current cpu's is reached, the new graphene prototypes should be able to reach speeds of 10 or more ghz, even dolphin would get 100% speed in single core in one of those...

I'm not looking way ahead, am I?


RE: [Suggestion] OpenMP - Unknownforce - 04-28-2009

it's not that far off actually, but even so, once the Larabee processor comes out, none of it will matter, Ray Tracing real-time... the bottleneck will no longer be hardware, but the software that is designed for it.


RE: [Suggestion] OpenMP - CacoFFF - 04-28-2009

AMD also announced an early model of 'Fusion' coming for this year (maybe next one, not sure), if these things can increase the cpu power without having programmers bang their heads to the closest wall they can find, things are going to get a lot interesting.

EDIT: Nah, They're finishing it for late 2010, releasing in 2011.
Also, sorry for offtopic.