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

You crack me up man, CELL is a general purpose processor but urm it cant run general purpose code well without programing to the SPE`s strengths?

So urm it is NOT a general purpose processor then as you have to write SPE specific code to get the performance you want from it, nice contradiction of what you claim within the same sentance there.

 

I think what MikeB meant (and he's right here) is that the SPEs are Turing-complete, unlike (at least some) GPUs. The SPEs can effectively run any code you throw at them, much like any PC CPU, or a well-trained monkey :P

However, to get good performance out of the PS3's SPEs, you have to vectorize your code and use the best data types for it. For example, double-precision arithmetic is very weak there (1 GFLOP/s in each SPE, very low for a 3.2 GHz processor). Another problem is that the SPEs are strongest when you use them simultaneously, in order to make up for their deficiencies. This is not a problem with some kinds of algorithms (like the ones used in folding@home and other scientific applications) which are easily parallelizable.

However, on a complex application like a game engine, which processes many different workloads, often in an inherently serial fashion, you will eventually run into non-parallelizable code, which will prevent you from using the totality of the Cell's raw computing power. Of course, future engines will use more of the Cell's power, but nowhere near as much as some developer quotes make it seem (e.g. "game X uses only 30% of the Cell!!").

 



My Mario Kart Wii friend code: 2707-1866-0957