By using this site, you agree to our Privacy Policy and our Terms of Use. Close

stewacide said: I'm not saying that will be the case with the PS3 as well, but the PS2 would suggest a more exotic architecture doesn't necessarily mean more potential: just more room for improvement.
Well, you can be sure that it will be much more expensive. In parallel systems you find much more possible problems, that you can run into and you won't be able to recognize them before the implementation. In fact I don't even think that the raw calculating power will be the main problem of the Xbox 360 or the PS-3. It is much more difficult to synchronize the different processes. It is very easy to bring such systems to a point where they are working very hard, while they don't do anything productive and are only reloading their processors. In such situations a single process might have a much better performance. It will be difficult to find the best solution. and even small changes in a single program can change the performance of the whole system. THese are principal problems that you have on all parallel systems. There is simply much more power "wasted" for housekeeping. Add more processors and you normally get less calculating power per processor. So you can't simply add the calculating powers. The easiest way to harvest the power of a parallel system is the used of special libraries. Simply use a special call and the library will ceate a new process, that calculates the result on a SPE or in another processor or thread. But while this solution looks easy it will be not be very effective. It is always bad if the main process has to wait for results, but have you really something usefull to do for the free SPE? In fact if you work this way it will probably be a good solution for multi plattform games, because the Xbox 360 can be used in the same way and even with the same calls. It will probaly even work with the same speed. But if you wan't to get more out of the cell you suddenly have to worry about the 512 KB local memory of a SPE, memory access and so on. You will probably be more involved with your housekeeping code, than with your real problem. If you get to this point on a Xbox 360 it is much easier. Each processor works the same, you don't need to think about memory management so much. The processor will do it for you. And when I think about the stuff that the cell should do in the background I get a bad feeling. If there are bigger memory transfers in background you should not be surprised if suddenly your helper processes run into delays and the main process has to wait sometimes. Then your problems do not matter anymore, instead you have to worry about memory access speed and so on, even in processes that are beyond your control. In fact the best way to solve such problems might be: limit your own memory access even if you use even less of the available processing power. You will be done faster and the game can be shipped earlier. Such thoughts will probably play a much bigger role than in previous plattforms.