• Login
  • Register
  • Dolphin Forums
  • Home
  • FAQ
  • Download
  • Wiki
  • Code


Dolphin, the GameCube and Wii emulator - Forums › Dolphin Emulator Discussion and Support › Development Discussion v
« Previous 1 ... 77 78 79 80 81 ... 116 Next »

development questions -- how can I get involved?
View New Posts | View Today's Posts

Pages (2): 1 2 Next »
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes
development questions -- how can I get involved?
07-13-2010, 03:13 PM
#1
ivanq Offline
Junior Member
**
Posts: 6
Threads: 1
Joined: Jul 2010
First of all, I'm quite impressed by Dolphin's performance and by its clean build process and multiplatform support. Major kudos to the developers.

I have a few questions about how I might get involved in the development process. I'm running Linux on a 64-bit machine, by the way.

(1) I noticed that I could do a flavor=prof build, and that led me to get acquainted with OProfile, which seems like a pretty powerful tool. Does anyone have any tips about how to get the most out of the profiling data, in particular to identify bottlenecks accurately? For instance, there's a recent hack for ZeldaTP that gives a massive speedup for me, but I'm not seeing it very clearly in the OProfile data.

(2) Why is DirectX currently a bit faster than OpenGL? Are there any clear ways that OpenGL could be made faster?

(3) Quad-core speedup via additional threads... is this: (a) theoretically possible, (b) theoretically unlikely, © practically possible, (d) practically unlikely, or (e) "Shut up, kid, ya bug me." ?
GNU/Linux x86_64 on Intel Core i7 Q720 @ 1.6 GHz (quad core)
Find
Reply
07-13-2010, 03:32 PM
#2
NaturalViolence Offline
It's not that I hate people, I just hate stupid people
*******
Posts: 9,013
Threads: 24
Joined: Oct 2009
Quote:(3) Quad-core speedup via additional threads... is this: (a) theoretically possible, (b) theoretically unlikely, © practically possible, (d) practically unlikely, or (e) "Shut up, kid, ya bug me." ?

It is theoretically possible but would never happen. Currently dolphin has only two threads, cpu and graphics. The developers have been working on putting the audio on it's own thread the last couple of months but as of this moment their are serious problems with getting it to synchronize with the graphics thread. It will take a long time before they are able to put the audio on it's thread without any problems. As for 4 threads, at the moment the developers literally can't think of a way to have dolphin use more than 3 threads, and trust me they have put a lot of thought into this.

Quote:(2) Why is DirectX currently a bit faster than OpenGL? Are there any clear ways that OpenGL could be made faster?

First off it depends on the game. Most games are a lot faster on directx but some are actually faster with opengl, as for why, well they are two different APIs simple as that (that's the fast answer). Opengl probably could be made faster, but well I don't have time to get into that (and I can tell you right now directx will probably be faster for the rest of dolphins lifespan).

Welcome to the community. If you want I can post some ways to contribute tomorrow when I have time and I'm not using this crappy netbook keyboard.
"Normally if given a choice between doing something and nothing, I’d choose to do nothing. But I would do something if it helps someone else do nothing. I’d work all night if it meant nothing got done."  
-Ron Swanson

"I shall be a good politician, even if it kills me. Or if it kills anyone else for that matter. "
-Mark Antony
Website Find
Reply
07-13-2010, 03:58 PM (This post was last modified: 07-13-2010, 05:14 PM by jumb.)
#3
jumb Offline
Senior Member
****
Posts: 322
Threads: 1
Joined: Jun 2010
(07-13-2010, 03:32 PM)NaturalViolence Wrote: Welcome to the community. If you want I can post some ways to contribute tomorrow when I have time and I'm not using this crappy netbook keyboard.

Please do! I keep looking through the google-code, but I have limited coding experience and know nothing of the Wii hardware, so have no way to make any significant contribution. That said, I'd still love to help somehow, but not sure what to do.
E8400 @ 3GHz, 4GB Ram, Gigabyte 275GTX, Windows 7 64-bit
Find
Reply
07-14-2010, 04:53 AM
#4
ivanq Offline
Junior Member
**
Posts: 6
Threads: 1
Joined: Jul 2010
(07-13-2010, 03:32 PM)NaturalViolence Wrote: If you want I can post some ways to contribute tomorrow when I have time and I'm not using this crappy netbook keyboard.

Yes, please do.
GNU/Linux x86_64 on Intel Core i7 Q720 @ 1.6 GHz (quad core)
Find
Reply
07-14-2010, 06:55 AM
#5
gaffe
Unregistered
 
I'd like to be able to get involved with Dolphin, but I also don't know where to begin. It would be awesome to have a list of ways for relative newbies to Dolphin development to contribute Big Grin
Reply
07-14-2010, 11:20 AM
#6
NaturalViolence Offline
It's not that I hate people, I just hate stupid people
*******
Posts: 9,013
Threads: 24
Joined: Oct 2009
Well I'll write up a full guide when I have time, but that's the problem, I need time. Tomorrow 7/14/10 I should have time to write it up at work.
"Normally if given a choice between doing something and nothing, I’d choose to do nothing. But I would do something if it helps someone else do nothing. I’d work all night if it meant nothing got done."  
-Ron Swanson

"I shall be a good politician, even if it kills me. Or if it kills anyone else for that matter. "
-Mark Antony
Website Find
Reply
07-15-2010, 04:21 AM (This post was last modified: 07-15-2010, 07:17 AM by NaturalViolence.)
#7
NaturalViolence Offline
It's not that I hate people, I just hate stupid people
*******
Posts: 9,013
Threads: 24
Joined: Oct 2009
Alright. The first thing you need to determine is if you can help with the programming. You will need to know C and C++ to become a useful contributer in that way. Try and insert yourself into the dolphin community, try to learn as much about emulation as you can by asking questions on the forums and playing your favorite games, noting the bugs you find, and figuring out what is causing them. Develop a patch and post it in the patch forums. People will test your patch and give you feedback, once you get all the bugs out contact the devs on irc and have them take a look at it. If they like it they will commit it to the svn and may even give you developer access on google code if they are impressing (and you have to ask for it).

Well what if your not a programmer? What if you don't know C or C++ and can't contribute code? Well then one of the following may be the right path for you.

Become a compiler. Most dolphin users are normal people, and not very computer literate. But they do offer valuable feedback, you have to think of them as the public beta testers for dolphin (which is in a constant state of fast paced development). Their are a lot of them but most can not compile their own builds since they don't know how and don't want to learn how. By providing them with compiled builds you provide a valuable service to the community. Now obviously thanks to mamarios bot that downloads and compiles new builds from the rvn repository every few hours all members now have access to up to date builds all the time. But their are many options to choose from when compiling. Many compilers (referring to the people offering compiling services here) have set themselves apart from the others by including certain patches that are not in the svn, using specific compilers that may improve performance with certain hardware, or providing sse enhanced builds. You would think with all of these people offering compilation services that this would be pretty saturated by now and their would be no need for another person like you to start one up. But you would be wrong. Xtreme for example has been compiling builds with the tp speedup patch. The developers have neglected this issue so when someone released a patch for it he took it upon himself to provide a compilation service that incorporated the patch so that users could start testing it. As a result the patch is now bugless and will probably be committed to the svn soon. So by offering something simple like a compilation service he sped up the process of development more than he probably knows. You can start your own compilation service here in the forums and try doing something new and useful with your builds, something no one else has done yet, your only job is to think about what this might be.

Even if you aren't a programmer become familiar with google code because the devs use it FOR ALMOST EVERYTHING. I cannot stress enough how important this is. If you want you can become a tester. Use google code to post issues and find and comment on issues and fixes. We don't have that many devs so it's up to us, the users, to find the bugs for them to make their lives easier (well technically it makes their lives harder since they then have to spend time fixing the bugs but you know what I mean). They can't fix a bug if they don't know it exists.

Play some of your favorite games and talk about issues and ideas related to them in the game discussion forums. The hyrule field slowdown issue would have never even come up if people hadn't started talking about it in the Twilight Princess thread. And as a result we would have never got the patch.

Find something new to contribute. Think of something that could be helpful that we don't already have. Mamario started a wiki for dolphin a few months ago. It has helped us tremendously. Your probably wondering, why didn't we have a wiki to begin with? Well because no one had realized we needed one until someone brought it up! I garuntee you their are shitloads of ideas out their that could help us a lot that we just haven't discovered yet. I started a benchmarking project a couple months ago but had to stop it when I started running low on time, if someone wants to pick that back up they are welcome to it. Some people have suggested making an updater for dolphin to make it easier for users to stay up to date. These are just some examples, but you get my point, figure out something that could help us in some way that we don't already have and then make it happen.

Help the newbies. Many people contribute by learning as much as possible while they are here and spreading that knowledge when the newbies ask. It is important to have a well informed user base. It greatly helps smooth the process of development even though none of these people are contributing code.

I will post more later. I will keep updating this post every few hours. And trust me it will be quite long when it is done.

Edit: Scratch that, I have less time than I thought. Change "every few hours" to "every few days" Tongue.
"Normally if given a choice between doing something and nothing, I’d choose to do nothing. But I would do something if it helps someone else do nothing. I’d work all night if it meant nothing got done."  
-Ron Swanson

"I shall be a good politician, even if it kills me. Or if it kills anyone else for that matter. "
-Mark Antony
Website Find
Reply
07-15-2010, 08:35 AM
#8
Axelion Offline
Junior Member
**
Posts: 21
Threads: 10
Joined: Jul 2010
Is there a particular list of games that works faster in OpenCL?
Wait, you guys have talking about OpenGL. Are OpenCL and OpenGL the same?
-Intel i5 2500k @ 3.3Ghz
-8GB Kingston Hyper X 1600Mhz
-2x GTX 570 SLI Mode
-Corsair Force 80GB SSD Sandforce Controller
Find
Reply
07-15-2010, 09:36 AM
#9
jonnyboyC Offline
Junior Member
**
Posts: 44
Threads: 5
Joined: Jun 2010
(07-15-2010, 08:35 AM)Axelion Wrote: Is there a particular list of games that works faster in OpenCL?
Wait, you guys have talking about OpenGL. Are OpenCL and OpenGL the same?

nope, they are different, in dolphin open Gl is used as a video plugin to run all the graphics, openCL, is a computer language which always, developer access to the gpu for more general purpose computing, in dolphin it is used to decode textures, to alleviate stress from the cpu, which can be really helpful for computer with strong gpu subsystems, but a weak cpu or just extremely texture demanding games
Find
Reply
07-15-2010, 11:00 AM
#10
ivanq Offline
Junior Member
**
Posts: 6
Threads: 1
Joined: Jul 2010
(07-15-2010, 08:35 AM)Axelion Wrote: Is there a particular list of games that works faster in OpenCL?
Wait, you guys have talking about OpenGL. Are OpenCL and OpenGL the same?

What the crap, man?!

Anyhoo, I appreciate your responses, NV, and I'll be interested in any programmer-specific suggestions you might have. I'm still wondering whether the developers look at profiling data very much, and what their process might be for that. It looks like OProfile is only a Linux thing, so I don't know what the equivalent tool on Windows (if any) would be.
GNU/Linux x86_64 on Intel Core i7 Q720 @ 1.6 GHz (quad core)
Find
Reply
« Next Oldest | Next Newest »
Pages (2): 1 2 Next »


  • View a Printable Version
  • Subscribe to this thread
Forum Jump:


Users browsing this thread: 1 Guest(s)



Powered By MyBB | Theme by Fragma

Linear Mode
Threaded Mode