3 ms·
It's a shame the PS3's Cell failed so badly. As far as theoretical general purpose performance per transistor it was a great design, but was stuck in a no man'
by codex 14y ago
It's a shame the PS3's Cell failed so badly. As far as theoretical general purpose performance per transistor it was a great design, but was stuck in a no man's land between general purpose CPUs and GPUs, each more specialized. However, you can see some of the Cell's ideas live on in the Xeon Phi and elsewhere.
- jfb 14y agoEh. It failed because it didn't solve problems devs actually had, and made many formerly easy things harder. Most technical decisions made for political reasons end up in the same bucket.
- jiggy2011 14y agoI've never programmed one, but curious which tasks it made harder?
- codex 14y agoAgreed, but the point was not to make developers' lives easier. Were it, they would have put a monster multicore X86 CPU in the PS3. The idea was to get maximum performance for minimum hardware cost (that is, minimum number of transistors) even if it made developers lives harder. This is because the console market typically involves an initial subsidy of the hardware by the manufacturer, and to minimize the need for cooling hardware in the machine. And that is why it was so hard to program--things that the hardware used to do for you, you now had to do in software (manual DMA, caching, coherency). If you were smart, you could do it better than the hardware implementations (special purpose vs. general purpose), or at least as well. In this respect it was like a GPU--but people are more familiar with how GPUs work, and they dominate their restrictive niche quite well already. There was no niche to fill between hard-to-program, special-purpose, graphics-specialized GPUs and easy to program, general-purpose, transistor-wasting traditional CPUs outside of, say, physics engines (and supercomputers). The Cell was neither special purpose nor general purpose. Sony bet that super-smart game developers would create great things out of hard-to-program machines like they always had in the past (e.g. the PS1 and PS2)--after all, the machine had a ten year lifecycle, so developers would eventually have the skillz. However, the return wasn't worth it, for the most part--gamers care about graphics, and that wasn't where the Cell could add a lot of value due to the unbalanced architecture of the PS3 and the amazing rate of progress made by GPUs. So the Cell was used for tasks that a general purpose CPU could do better (if less efficiently), but it was still harder to program than a GPCPU, and it was overkill for CPU tasks (i.e. the game engine) which don't require a lot of horsepower in a game, and don't expose much parallelism. However, Intel is targeting the Xeon Phi at areas the Cell was good at (lots of parallelism, lots of unpredictable branching--mainly supercomputing), albeit with hardware which is slightly easier to program. I think Sony hit it slightly off the mark, trading a bit too much complexity in software for savings in hardware. There is definitely a sweet spot. They would have been better off with a more powerful CPU and fewer SPEs, or SPEs which were slower but had a real cache.