| Hephaestos said: how is that different or even cheaper than building a multi chip computer? I'm confused there... |
Well, the SPUs were specifically designed for this kind of work, but the original Cell that is used in the PS-3 still contained a few limitations, that made it unusable for many applications. Especially the limitation to single precission floats was a problem. The newer designs by IBM fixed this problem but if you can work with the limited precission it is difficult to beat the PS-3 if you look at the price.
In the Cell each SPU can be described as a node, so you already have in each PS-3 seven nodes. Try to find this for 400 $. And the SPUs are especially designed for matrix and vector calculations, where they can harness the power of their local memories.
This was the single reason why IBM wanted to develop the Cell. The development is rather inexpensive, you only have to develop the code for one SPU and usde this program in every SPU. For calculations that can't be handled by the SPUs effectively, you can use the PPU itself, but inder normal circumstances this unit is only used for management purposes.
The real power of the cell are its SPUs, not the PPU. But you can't really use the PPU as an SPU and vice versa, they are in fact two totally different systems. SPUs are stream processors, like the shaders in a GPU, while the PPU is dedicated for Random Access Problems like every normal CPU and relys on a (very limited) branch prediction and its cache.
Unfortunatly you can't work this way for games. Games are real time applications, which are very sensitive for delays and the whole inner communication in the cell was optimised for data throughput, not for time constraints. It is rather difficult to synchronize the different units. So games have the strong tnedency to rely on the PPU, while the SPUs are only used for special purposes. But if you want to use the SPUs the whole development becomes rather complicated and therefore expensive. While normal consoles only have to organize the CPU and the GPU, you need for the SPUs a totally different third code base. You can't use shared libraries for them as they are common for normal CPUs.
Currently the trend goes more and more in the direction to use some of the GPU shaders for purposes like physics processors. In fact, this was probably one of the main reasons for AMD to buy ATI, because Intel already has a GPU unit for its Onboard graphic chips.
The cell was in a way a direct competitor but its PPU is rather dated. Toshiba never liked this unit and they play no role in normal CPU design. In fact IBM itself groups its cell successor around an AMD CPU... I don't have the feeling that they really improve their Power PC architecture anymore outside of the ASICs context. So I have doubts about the future of the Cell. I don't see who would develop the new chip, which would be suitable for a PS-4.
On the other hand AMD is currently in a rather weak position so they might be ready to develop the next generation processors for game consoles. But they would use their ATI connections. In fact the GPU of the Xbox 360 (developed by ATI) already contains such a "misuse" of shader units.








