@AC regarding Cell
Not sure where you get your thoughts on the Cell, but you're wrong in many ways.
Cell BE was designed pretty much for the PS3. Yes it's a great HPC platform, yes it can crunch huge amounts of data, but at it's heart it's a multi-media monster.
The SPEs are SIMD RISC processors that are capable of high speed single precision operation and operate best on streams of data. The internal architecture of Cell is designed to facilitate monstrously large bandwidth between the SPEs, the PPC core and the memory controller. The SPEs are actually capable RISC processors in their own right, each with 256KB of local storage - not cache, it's a local memory structure available only to the SPE it's tied to. You're incorrect to characterize the SPEs as if they were simply special purpose FP units, they are far more flexible than that.
All of Cell's cores run at the 3.2GHz core frequency, as does the internal bus that links the SPEs and PPC core. The bandwidth between processor cores inside the Cell is truly huge, the theoretical maximum is around 300GB/second, though the practical limit appears to be about 200GB/second. The memory interface on the Cell allows the memory to run effectively at the same speed as the processor so that the XDR memory that is paired to the Cell effectively runs at 3.2GHz. SPEs can't access memory directly as their local memory store is their memory, however they do not require the PPC code to access memory for them. The 64-bit virtual memory addresses that the SPEs use are passed directly to a memory controller and a DMA operation is performed for the SPE. The PPC core has nothing to do with it. The SPEs operate independently, they are loaded with a program and run their program, the PPC core doesn't spend time house keeping for the SPEs, they do it themselves.
The way you discussed the differences in data between a scientific application and a game are just plain wrong. You said "each 'core' in the cell can crunch through the portions of data it's best at dealing with" What? The PPC core is a general purpose core with it's own FP capabilities. The SPEs are SIMD/RISC processors which are identical to each other. You also said "When it comes to a game however, the data to be processed isn't static and is constantly changing depending on the players actions the PS3 has to go through the task of deciding what data can be processed by what SPU and churning data out to that SPU." That's rubbish. The PS3 is not the PPC core on the Cell, nor does the PPC core have to be constantly tending to the SPEs like a mother hen. If a developer who only thinks of the SPEs as special purpose FP units comes along and uses them in that way, then your 'model' could match how that programmer handles things. However, that is not a limitation of the architecture it's a limitation of the programmer. If an SPE is handling collision detection (for example), it can do it on it's own without any coordination from the 'PS3'. A programmer who uses the SPEs as processors in their own right will do things very differently, and gain huge benefits by doing so.
PS3 was always designed as a gaming system, you're completely wrong to say otherwise. Cell BE was designed for the PS3, the two literally go hand in hand.