sethfrost / Member

Forum Posts Following Followers
709 102 221

Parallel Programming or why the PC and PS3 Programmers are poor folks.

multithreading is no easy thing to deal with. it is all about how to split the functions to make parallel threads. It demands a whole new way of thinking from the programmers. the debugging tools are not up to the task of finding the neuralgic points today. the greatest threat to programming threads are "deadlocks", this means the different threads are waiting for each other to finish their part. most of the libraries have to be converted/rebuild. other potential problems is the access to the harddrive and the videocard. i.e. the opengl and directx-drivers cannot handle more then one thread - so all instructions for the videocard have to be collected by one thread first... a big part of the necessary calculations are handled by the gpu nowadays, so the multi-core cpu-power isn't heavily used. and, furthermore the directx-api is not very good in handling multithreads.

the thing with the ps3 - as far as I, an industry-outsider, see it - is, that all the game programmer have to LEARN a lot of new stuff. things, that they never had to use in the past. things, they only had heard of in an academic way, if ever. they have to learn things from scratch but do not have the time to do it like they would like to, because they have to work on the next games, while learning. all their programming tools, they have built over the past have to be re-designed. the libraries rewritten. the algorithms finetuned for the next-gen processors. re-compiling, debugging, recompiling, debugging... - this must be a pain in the ass.

If you want to learn something about the Cell Processor, AnandTech has IMO the best Article about the hole thing. They discribe all the important issues in a thorough way, but everybody can understand it. You may even learn a little bit of assambly;) see: www.anandtech.com/cpuchipsets/showdoc.aspx?i=2379