I'm no expert on the subject, but the Cell architecture just looks unnecessarily complicated. Software-directed caching means you really need to know what you're doing and have a good compiler - and while that more or less works for a system that's fundamentally only going to be running one program at a time, trying to coordinate that extra complexity across a whole desktop OS's worth of different programs and threads sounds like a nightmare if I ever heard of it.