Sony Ditching Cell Architecture For Next PlayStation?
RogueyWon writes "According to reports in Kotaku and Forbes, Sony is planning to ditch the Cell processor that powered the PlayStation 3 and may be planning to power the console's successor using a more conventional PC-like architecture provided by AMD. In the PS3's early years, Sony was keen to promote the benefits of its Cell processor, but the console's complicated architecture led to many studios complaining that it was difficult to develop for."
Won't buy it. They screwed us with Linux on the PS3. Their consoles are done in this house.
We all know Sony will just remove the cell processor functionality in a few updates time.
You know, there is a difference between trolling and pointing out the flaws in your reasoning. Just saying.
I can practically hear game programmers everywhere cheering.
If game programmers dislike the Cell, why can't they just convince their bosses to target their next project at PC and Xbox 360 instead of PS3 and Xbox 360?
Probably. But they'll probably use a POWER7 based CPU instead of an AMD x86 CPU. Given how much Cell influenced POWER7, I'd actually say that's a huge likelyhood they'd go POWER instead of x86.
Non impediti ratione cogitationus.
...a more conventional PC-like architecture provided by AMD.
So, then I'll just dump $300.00+ on the next generation PlayStation, and ~$60.00 on a game, when I could just play the $60.00 game on my PC, which I already have.
TOKYO, Japan -- Sony released their heavily anticipated and much hyped Playstation 4 Entertainment System today, but the games are nowhere to be found. Developers agree the hardware specs are extremely impressive, but nobody knows how to actually make games for it. Thankfully, the latest member of this venerable line of consoles is backwards compatible with the games of all previous generations.
"I think we got it perfect this time," says Sony chairman Kaz Hirai, "we expect our internal studios won't figure out how to make games for at least another few months. Third party developers should take even longer. We figure the PS4 should be hitting its stride right when the PS5 hits the market several years down the road."
How difficult will it be to develop games for that one? When asked the question, Hirai rubs his hands together, a gleeful smile spreading across his face.
"Impossible."
I programmed a Cell processor (for HPC, not gaming) a few years ago, and it was definitely a pain in the butt compared to just targeting a multi-core x86.
The problem, at least back then, was that you had to write explicit code to have the various cores communicate with each other (DMA transfers, etc.)
I imagine compilers/libraries/SDK's have improved the situation since then, but really the modest performance premium offered by the chip just wasn't worth the hassle.
Not being a game developer I wonder what game devs would prefer, a PS4 chip architecture that is similar to other consoles/PC architecture but with the cost of starting with new dev kits/libraries, or sticking with Cell-based architecture but you still have big differences with PC/Xbox Next/Wii U. Seems to me the initial pain of working with new libraries and dev kits would be a time consumer at the beginning, but the long term gain of easier portability would be worth it in the end. Devs, what would you prefer?
If they need to put the $ in excu$e: "It would cost more programmer time, which is money, to get the same performance out of a PlayStation 3 that one could get out of a PC."
The cell didn't live up to it's expectations long before the PS3's launch. They had to shoehorn in a conventional nvidia GPU at the last minute. (In a manner that causes a lot of odd development problems, and cripples the PS3's already limited memory)
The cell is just one in a long line of "Hey lets use lots of general purpose CPUs for graphics!" ideas that never panned out. Didn't work out for Intel with Larabee either.
I don't think those asymmetrical vector units strapped on to the PPC core have been particularly popular either. It seems that, in general, that offloading tasks to your "computer unit" (Formally called a GPU) has proven to be a much better solution.
I'm guessing the next playstation will have a conventional CPU+gpu design with shared high speed memory (Like the xbox).. Maybe it will be some cool unified tech from AMD. Maybe it will be a multi-core arm cpu, or maybe it will be conventional x86.
In the past half-decade PPC seems to be going nowhere in the consumer space.
I am an AMD fan and all but we don't need another way for Sony to 'Bulldozer' over previous functionality.
Silence is a state of mime.
I've shipped PS2 games and worked with numerous developers that have shipped PS3 games.
Sony's problem is the Not-Invented-Here syndrome. They have yet to learn the lesson that Apple mastered years ago in the 80's -- use off the shelf commodity parts!! Why? They will become DIRT cheap in a few years. Why waste millions of dollars investing into R&D of new hardware when in 5 years somebody else will have a no-name version of it at a fraction of the price??
e.g.
Sony is _slowly_ learning this lesson. After how many man-years of a buggy PS2 GS (Graphics Synthesizer) that couldn't even properly do z-tesing (!?!/!) the PS3 RSX is (mostly) a GTX 7800+
http://en.wikipedia.org/wiki/RSX_'Reality_Synthesizer'
When the PS2 first came out everyone bitched how difficulty it was, yet it was a beautiful thing to see all of its 7 CPUs working full speed load-balancing the system. It laid the foundation that multi-core programming was the future. When the PS3 came out everyone bitched how even more difficult it would be. Developers just sucked it up and now we are even seeing A.I. running on the SPE/SPUs on second-gen and 3rd-gen PS3 games! That's pretty cool to see a modern game engine utilizing every core it can.
Using stock parts: CPU + GPU is a great way to minimize costs. You don't get the same performance benefits of true dedicated design but the commodity parts are cheap enough that the pricing curve naturally takes care of that. Kind of a no-brainer if Sony decides to use an AMD or Intel CPU for the PS4.
References:
See: PS3 games list & SPE usages
http://www.neogaf.com/forum/showthread.php?t=184843
i.e.
and
Game developers too stupid to deal with complex systems.
Sorry, but 'it's complex hardware' excuse pissed me off.
Right. Because parallel programming on a processor with completely manual cache management is just so easy. The supercomputer people find it tricky too.
I guess you're just so much smarter then everyone else.
SJW n. One who posts facts.
It was less that, and more that learning and targeting that platform simply wasn't worth it. All that effort (i.e. additional cost) earns you some niceties, to be sure, but also makes a multi-platform release much more difficult and costly.
Arguably that was even the goal of the cell: to provide a technical carrot for publishers to make really awesome PS3 only titles using the advanced hardware. It wasn't a bad idea, actually, but ultimately the PS3 came out too late and too expensive. Everyone had an Xbox 360, no one had and Xbox 360, and so no developers were willing to sink the time, effort and money into developing for a platform that nobody had. (This has, of course, changed but the damage was done.)
Remember the launch? IBM, Sony and Toshiba were going to put Cell processors in everything from cheap consumer electronics to number crunching supercomputers. In reality, IBM sold a few Cell blades, Sony put one in each PS3 and that's about it.
I am TheRaven on Soylent News
Good parody. When I think about the PS3's processor, I always remember them bragging at launch that devs will still be trying to optimize for the PS3 when it's lifetime is over. I'm still astounded that they thought that was something to brag about.
"If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
I guess we should dust off our old Xbox hacking skills if that's the case.
I mean, if the Playstation 4 is going AMD Fusion, it'll probably be x86 with GPU, and we all know the fun that was had breaking into the original Xbox (which was originally done with AMD parts before they switched to Intel)
Of course, they could always take the lessons of the Xbox and fix it so it won't be a problem. Oh wait, it's Sony, nevermind.
"PS VITA use ARM because: 1)Battery needs, 2)Apple iOS. Otherwise it would use a simplified version of PS3 CELL for sure." er... what does iOS have to do with anything? unless this is some kind of subtle Android Fanboy thing.
There Can Be Only One...
Counterpoint: The prime researcher and developer of the Cell architecture abandoned it as a dead end.
The trouble with the Cell processor is that there's not enough memory per processor. Each of the little processors (the "SPE" units) in the PS3 only has 256KB of RAM. That's not enough to store a frame. It's not enough to store a game level, or a significant amount of geometry. It's more like having a number of DSPs available.
This forces redesigning the program to work in batch mode. A batch job is one frame, but it's still a batch job. Data for one frame cycle is sequentially pumped through one or more SPEs. There's not much random access, because access to main memory from an SPE is in big blocks, transferred in the background.
This is both limiting and a huge pain. Especially when the competition is selling shared-memory multiprocessors. I used to do game physics engines, and when the PS3 came out, my reaction was "I'm glad I sold off that technology and got out of the business." I knew some people at Sony's SCEA R&D center, and they basically threw all their smart people at trying to figure out how to use the Cell effectively. Many of the early games really ran in the main CPU, with the SPEs managing things that didn't affect gameplay, like particles for fire, explosions, smoke, and such.
If each SPE came with a few megabytes of RAM, instead of only 256K, it wouldn't be so bad. Then you could probably have the physics engine in one CPU, the AI in another, the background object management in a third, and so on. But each of those things needs more state than whatever fraction of 256K is left over after the code is loaded.
There's a long history of Cell-like architectures in the supercomputer field. The BBN Butterfly, the NCube Hypercube, and the Connection Machine also consisted of a large number of processors, each with a small memory. None were successful. One of the lessons of multiprocessing computer architecture to date is that the two extremes - shared memory multiprocessors and networked clusters of separate computers - are useful. None of the partially-shared machines have been successful. The Cell is the only one ever to be mass-produced.
Great for audio, though. The audio guys like having their own processor, and audio processing really is a streaming process of tight loops without much state.
The PS3 has probably provided the biggest software leap in game architecture in the last 3 years. This is in comparison to typical XBox or PC platform. I argue this only because the forced paradigm shift to fully utilize the Cell architecture should be directly transferable to multi threaded programming on an 8 core AMD/Intel processor.
The PS3 teams that fully utilize Cell would probably lead the way in the next 10 years on PC platforms.
If Sony hadn't spent so much money on that complicated CELL processor, maybe they could have afforded to add an extra 64MB of RAM to the incredibly limiting memory ceiling. That's where so many of the difficulties come from.
I went to eat some animal crackers and the box said, "Do not eat if seal is broken." I opened the box and sure enough..
Right. Because parallel programming on a processor with completely manual cache management is just so easy. The supercomputer people find it tricky too.
I don't know if the systems I work on qualify as supercomputers, or even as super, but I design programs to operate in SMP environment in systems with several levels of noncoherent caches.
I don't whine about it. Please tell me I'm smarter than everyone else.
It took years for PS3 to get good games. It was 10x harder to work with than the X360 or Wii.
Uncharted 3 is a thing of beauty (for a console) and Naughty Dog is squeezing amazing performance out (for a console), but they're the best devs Sony has and it took 5 years. Was a new proprietary architecture that works unlike anything else on the market worth the billions of losses and the ramp-up time? No. Xbox 360 has power parity (better in some areas, worse in others, but you can do about the same games on both) even though it's 'just' a little 3 core PC in a box.
What saved them was the Blu-ray drive (and the death of HD-DVD) and that Sony has better dev teams than MS. One SCE Santa Monica Division is worth more than all the Cell processors put together.
In fact, the Xbox 360 is essentially "fusion" at the motherboard level -- The CPU can lock and share portions of the cache directly with the GPU -- there's around 27gb/s bandwitdth between the two, and all 512 MB of main memory is GDDR, controlled by the GPU die. This is, 5 years ago, closer to AMD's promised Fusion processors than what AMD's own Llano CPUs are today.
My basic predictions for the next Playstation and Xbox are something on the order of:
It's not that developers are too stupid (although some may be).
It's that if you have to spend a bunch of extra time managing the complexity inherent in the system, you've either got to put less time in to other parts of the game or you've got to spend more money making the game.
Which is why everyone hated Vita development, right? Clearly they have learned nothing in the six years since the ps3 launched.
I design programs to operate in SMP environment...
Notch? Is that you?
An enigma, wrapped in a riddle, shrouded in bacon and cheese
It also used it as a shift in priorities for the PlayStation division. Kaz wanted something easy to make games for, like the ps1. The best way to do that was common hardware.
I used to program SPUs for a living for a game studio. (Worked on SOCOM Confrontation and some unannounced titles).
I disagree with all this bitching from devs: the CELL SPU is a thing of beauty.
If an engineer is worth his salt, and knows his trade well, what he can do with it is amazing.
I was blown away with how incredibly fast this SPU is, once properly used.
But only if you know how to do branchless code, and you know the difference between structures-of-arrays and arrays-of-structures.
Once the data is lined up properly, and you eliminated those nasty branches, carefully crafted code (intrinsics, not vanilla C++) will make that thing fly like nothing else. Insanely fast, think GPU-fast, but with a more generic programming model.
I regret the death of the Cell architecture.
Bram Stolk http://stolk.org/tlctc/
Aand an Extra Counterpoint if the first one wasn't enough: The rest of that post is complete retardation mixed with tinfoil hattery.
I don't think it's that they're too stupid to figure it out. It's that they're smart enough to see that developing for PC and Xbox is pretty straight forward, and then porting that work over to the PS3 costs a lot of development time and money that could have gone in to actually building the game. People who work with supercomputers and whatnot, don't have to think about shipping a retail game that performs good for PC, Xbox360, and PS3.
Their Handhelds also often have the option to play games from the previous generation. Something Sony DID enable for japanese customer of the Vita but not for American and European customers. That is even more evil, spend time developing a feature useful to customers, then deny it.
Sony is not so much evil as in love with itself and so it is determined to fuck itself over and over again.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
It was a result of an even more epic fail in the NIH/Sony Reality Distortion field.
So anyone who has looked at it may wonder as to why it has split memory, separate video and system RAM. Such a thing is required for a PC addon card, but is not ideal in a console because of limited RAM available and the fact that it is really a single task machine. The reason is that the RSX was developed on fairly short notice, and is more or less a PC part with mods, not a complete design.
Now why would they do that? PS3 was in development for a long time, why not get a special customized part like ATi did for the 360? Well because Sony didn't have nVidia working on it from the start, it was added on later.
This then leads to the question of what were they looking at before. The answer is in fact the Cell processor. They though it was going to be so fucking amazing it was to be the GPU, not the CPU, in the system. I don't know if you can find videos anymore but Sony did some demos of a ton of Cell processors rendering stuff.
I agree with you. Sony made good products.
FTFY
It's a Sony used to be a sign of quality. Nowadays it's a stigma and a representation of our disposable electronics society.
Balanced is what Fox News advertises themselves as. They're balanced in that they give both sides the same platform with which to speak upon, irrespective of the validity or even the accuracy of the arguments put forth by either side.
Balanced is not synonymous for fair. It is not synonymous for right. Balanced is only for sore losers, whiners, and people who think they're entitled to both an opinion and an audience but have neither.
Quite frankly, Sony's behavior has been atrocious over the last two decades. They have been douchebags. GP and other comments have listed plenty of examples of why they deserve such derision. Now, if you can provide examples of why they might not, bring it. If you can't, shut up and stop whining about how the world (or Slashdot in this case) isn't fair because your opinion counts less than everybody else's. Because quite frankly, if you can't provide those examples, your opinion on the matter sure as hell does count less than the opinions of people who can provide examples, irrespective of their ultimate opinion.
"If a nation expects to be ignorant and free in a state of civilization, it expects what never was and never will be."
With regards to IBM's decision to kill it was how useful it was vs alternatives. The Cell wasn't as good a "general purpose" CPU as a more classic CPU architecture like x64 or POWER. It's central PPC unit was pretty weak. Ok no problem, that's not really what it is for, it is for all that vector math and that's what the SPUs are good at. ...except in that field you are now competing with GPUs. A Cell has 8 SPUs? A Tesla has hundreds of CUDA cores. The limitations on GPUs are different, and more intense in many ways (when code branches it really needs to branch the same way for 32 processes due to the parallel nature of the GPU's processing). However you still have the fact that for highly parallel floating point vector math GPUs lay down the number crunching hardcore, and of course can be fitted to any existing system with a PCIe 16x slot.
So that kind of thing factors in to the thought process as well. If your chip is not as good as your other CPUs at being general purpose, and not as good at its special purpose as GPUs, then what is the market?
nVidia and AMD are hard to compete with. They can throw down a lot of R&D dollars at making a hell of a stream processor since there's a massive market in those for video games.
For me the problem with this is the $1500 of games I've invested into the PS3 platform. I was hoping that PS4 would be an upclocked Cell cpu with more cores and faster video so it would enable PS3 games to still run, and be fast enough to emulate PS2 games. If sony drop backwards compatibility altogether I might skip PS4 and go back to PC gaming. There's not much point to buying x86 console hardware if I can buy an i7 and have someone crack the architecture of the console.
With all your experience in Cell programming, can you please answer the following question?
Do you think it would be possible to abstract away all the low level details of Cell programming into a high level programming language so as that the programmer woud only have to deal with the actual algorithm at hand, and not the low level details?
Thank you in advance for your attention.
I think that the PS4 will not be able to emulate the Cell processors efficiently enough to have backwards compatibility in software.
I also think that putting a PS3 into a PS4 will not be viable economically.
So, what does Sony plan to do with backwards compatibility? will the PS4 not run the PS3 games at all?
Current PS3 games are for Cell indeed, but then again PS2 games of the time weren't and in fact cannot run on Cell. Just like PS1 games could not run on a PS2, but the PS2 had found a graceful way to incorporate PS1 guts for productive use even during native PS2 operation. Sadly, PS2 guts were nothing but a drain in the BC PS3 editions unless actually running PS2 games, causing Sony to drop it.
MS did not 'steal' anything. IBM went to MS and Sony and sold them both on different technologies that both happen to be PPC. MS elected a more conventional architecture while Sony went in for the significantly different Cell option. I think IBM sold the most comprehensive copy-protection story of the time which enticed MS away from x86. Reading the complexities of the exploits shows very deep design points around copy protection.
I will say one thing, the story explicitly said AMD *graphics*. Not even the unsubstantiated rumor said anything about the CPU one way or another. People may be presuming APU because the thermal characteristics seem a good fit, but that's just theory and not even rumor backed yet.
XML is like violence. If it doesn't solve the problem, use more.
Agreed. You can write a program optimized for any ordinary architecture out there (PC (running windows, linux, whatever), Mac, xbox, even cell phones), or you can write it optimized for this odd highly parallel architecture that is ps3. Chances are you're going to write it first and foremost for everything else, and then do your best port to the ps3. The last thing you will do is come up with some crazy hyper-optimized stuff for the ps3 that won't run anywhere else.
Oh sure, the cell phone version is going to need some simplification, and the libraries/etc are a little different from directx to the mac and so on. However, all of those devices have in common that you use a graphics API to control the GPU, you have a bucket of RAM, and you have a few processor cores that are all equivalent and which run threads. The only difference is how fast those individual components are, and how much RAM there is.
PS3's biggest problem seems to be that it was the oddball.