Slashdot Mirror


Prospects For the CELL Microprocessor Beyond Games

News for nerds writes "The ISSCC 2005, the "Chip Olympics", is over and David T. Wang at Real World Technologies put a very objective review of the CELL processor (the slides for the briefing are also available), covering all the aspects disclosed at the conference. Besides the much touted 256 GFlops single-precision floating point performance the CELL processor has 25-30 GFlops in double-precision, which is useful enough for scientific computation. Linus seems interested in CELL, too."

56 of 246 comments (clear)

  1. I'll believe it when I see it by chris09876 · · Score: 5, Insightful

    This is a very positive review for the cell processor. It does seem like a really exciting new piece of technology. It promises a lot, and if it will do everything people say it will do, it really has the possibility to give the entire industry a big leap forward.

    That being said, I think it's important not to get too excited about it... it's hard to say if it will live up to everything that people have written about it. I'm a bit skeptical. Until I see some production units doing amazing things, I'm cautiously optimistic.

    1. Re:I'll believe it when I see it by Neil+Watson · · Score: 2, Insightful

      I too, am skeptical. Especially when I see Rambus mentioned. I keep looking around expecting to see a school of their lawyers circling. Biding their time until before a patent law suit frenzy.

    2. Re:I'll believe it when I see it by BobPaul · · Score: 5, Insightful

      That being said, I think it's important not to get too excited about it... it's hard to say if it will live up to everything that people have written about it. I'm a bit skeptical. Until I see some production units doing amazing things, I'm cautiously optimistic

      I'm a little bit concerned about the PowerPC Element. The article states that it's not simply a Power5 derivative, but a core designed for high mhz at the cost of per stage logic depth. To quote the author: "The result is a processing core that operates at a high frequency with relatively low power consumption, and perhaps relatively poorer scalar performance compared to the beefy POWER5 processor core. "

      The means the PPE in the CELL @ 4Ghz will not perform as well as a Power5 would could it reach 4Ghz (but since the CELL has 8 SPEs, I would hope it performs better as a whole than a POWER5 at the same frequency). It would be interesting to know at what frequency the two are similar, but since the PPE is integrated into an extended system, this isn't something that can ever really be benchmarked.

    3. Re:I'll believe it when I see it by sjf · · Score: 3, Informative

      They licensed technology from Rambus.

    4. Re:I'll believe it when I see it by BobPaul · · Score: 4, Interesting

      I keep looking around expecting to see a school of their lawyers circling, biding their time until before a patent law suit frenzy.

      I'd be more worried about that if they DIDN'T use Rambus's technology. Rambus can't sue someone who's licensing their tech... they can only sue someone they THINK is using tech too similar to theirs without licensing it. If cell used some sort of DDR or maybe an inhouse memory tech instead, maybe then Rambus would try to sue.

    5. Re:I'll believe it when I see it by adam31 · · Score: 4, Interesting
      The fact is that this will be a much more difficult processor to program efficiently for. This is the same situation that faced developers when the PS2 came out. It's taken game developers 4 years to finally tame the beast, and this chip is everything that made PS2 programming difficult, times 8.

      But look at the graphics in PS2 games now compared to 1st gen titles. The improvement is incredible! The hardware hasn't changed: it's still just a 300Mhz cpu with 4MB graphics and no pixel shading. I think we'll see the same maturation process with Cell/PS3, where the 1st gen games don't live up to the hype but more and more of the Cell's enormous potential is realized with successive generations.

      The question is whether Sony decides that part of the slow evolution in efficient PS2 programming was because of the small, exclusive development community. I would love to see Sony push a Linux PS3 similar to the version of Linux PS2 they released.

    6. Re:I'll believe it when I see it by xero314 · · Score: 4, Interesting

      The PS3 should not have nearly the problems that the PS2 had in regards to it's difficulty of development (a.k.a. Lazy developers). Because Cell is a joint project by IBM, Toshiba and Sony it will have a much larger install base. Rather than being a specialized chip for a specialized system, it is to be a general chip useable in many systems. These means more people will be programing for it, not just game developers which are notorious for there lack of desire to change (hence why the 68000, 6502 and z80 were so popular for so long). Cell chips should end up making it into systems designed for scientific computing, where developers (a.k.a. computer scientists) will be willing to take more chances and dig deeper into the architecture.

      We will see some of the typical ramp up time in cell programs but being as the cell, if you beleive what you read, is so far above and beyond other modern processors (and that lazy developers for the PS3 can always let the NVIDIA GPU carry the load in a more traditional fashion) we should see leaps and bounds in program performance fairly quickly.

    7. Re:I'll believe it when I see it by CTho9305 · · Score: 2, Interesting

      It's worth noting that various research papers have done analysis to determine the optimum level of pipelining, and found about 6 to 8 FO-4 gate delays* per stage is optimal - Intel's cancelled Tejas processor was apparently around there and would likely have run at similar clock speeds to the Cell processor. Note that in the real world, you hit other limitations earlier - right now, the main issue is power: chips that fast just run too hot.

      *a FO-4 gate delay is a "fan-out of 4 gate delay" - it's the amount of delay from one inverter (NOT gate) which drives 4 identical inverters as load.

  2. Transmeta by Anonymous Coward · · Score: 3, Funny

    Why should Linus be interested in the cell when he has the Transmeta Crusoe?

    1. Re:Transmeta by Anonymous Coward · · Score: 3, Informative

      Transmeta isn't doing the low heat processors anymore. Quoted from http://arstechnica.com/news.ars/post/20050105-4501 .html .

      CPU manufacturer Transmeta, known for their low-power processors, is evaluating an exit from the CPU market. Instead of manufacturing chips themselves, their business focus would shift towards buzzwords: licensing their intellectual property and the formation of strategic alliances to utilize their processor design as well as their research and development skills.

    2. Re:Transmeta by mirko · · Score: 3, Insightful

      These are not buzzwords : ARM have been doing this for years and are a very profitable R&D company.

      --
      Trolling using another account since 2005.
    3. Re:Transmeta by BobPaul · · Score: 2, Interesting

      Transmeta isn't doing the low heat processors anymore. Quoted from http://arstechnica.com/news.ars/post/20050105-4501 .html .

      Just because they aren't manufacturing anymore doesn't mean they're exiting the business entirely. There just might not be a "Transmetta" anymore. Instead there will be something like an "Intel Pentium 5 using lowerpower Transmetta Technology" (well probably not, but you get the idea.)

      Transmetta will be doing R&D for low power processors for years to come, I'm quite sure.

  3. Comment removed by account_deleted · · Score: 3, Insightful

    Comment removed based on user account deletion

  4. I bet this Cell processor will kick ass... by Anonymous Coward · · Score: 2, Funny

    ...playing The Game of Life.

    1. Re:I bet this Cell processor will kick ass... by ceeam · · Score: 4, Funny

      You mean.. If one part of this chip is surrounded by more than three other parts actually doing anything useful then it will die from overheating? : )

  5. Deja Vu by DrSkwid · · Score: 4, Interesting

    Sony so badly wants its next-generation game console to offer a super-realistic "virtual reality" experience, the company will design and build its own advanced 128-bit processor to realize this goal.

    Processors inside game consoles usually toil away in anonymity, derided as as poor cousins to desktop chips such as Intel's Pentium line. But with Sony Computer Entertainment's ambitious plan, its chips could outclass the offerings of the world's largest chipmaker--if all goes well.

    ...

    The system is so advanced, MicroDesign Resources analyst Keith Diefendorff wrote in a report that the system "has the potential to swipe a chunk of the low-end market from under the noses of PC vendors." He wrote that the platform may "signal the company's intention to move upscale from current game consoles, cutting a wider swath through the living room," with its abilities to function like a stand-alone DVD player and Internet set-top box.

    Sony puts on game face with new chip
    Published: May 5, 1999, 1:25 PM PDT
    By Jim Davis
    Staff Writer, CNET News.com

    --
    There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    1. Re:Deja Vu by nutshell42 · · Score: 4, Informative
      He wrote that the platform may "signal the company's intention to move upscale from current game consoles, cutting a wider swath through the living room," with its abilities to function like a stand-alone DVD player and Internet set-top box.

      Well one reason the PS2 sold like hot cakes was that it was one of the cheapest DVD players at that time (at least in Japan). There is media player software available and it's quite popular the reason it isn't a internet set-top box is that noone wants internet set-top boxes they died a painful death. Now there's no EE desktop PC because it's too slow but the difference between Cell and PS2 in this regard are

      (a) Cell was co-designed by IBM which has an interest in selling workstations etc with that chip, Sony didn't it's not their business
      (b) Cell is designed for multiprocessor environments so if it becomes too slow for a task you can simply throw more processors at it
      (c) 2000 the clockspeeds still doubled every 18 months that stopped. x86 goes the way of multiple cores too so the programmers will have to get used to parallel design anyway

      That doesn't mean it will replace x86 or even make a dent but it means that contrary to the EE it's designed for such stuff and one of the companies behind it sells specialized workstations so it's at least a possibility.

      And this time you can find more credible sources than CNET (CNET's part of the yellow press of computer news sites. Almost as bad as yahoo news) who'll tell you that.

      --
      Don't think of it as a flame---it's more like an argument that does 3d6 fire damage
    2. Re:Deja Vu by MrResistor · · Score: 3, Interesting

      Maybe--and this is a big maybe--if you needed a CPU that needed high visualization components. But then I guess you'd go with SGI.

      And why wouldn't IBM be going after SGIs market? I think your points hold in the consumer space, but in a specialized market like that I think it becomes a lot easier to gain a foothold simply based on technical merit.

      Heck, better yet, and in what seems to be more inline with IBM's current direction, why wouldn't they try to get SGI to switch to Cell?

      IBM likes the PPC chip that Apple uses, and yet it still hasn't a) taken over the world, or even b) been put into use by IBM themselves. Why doesn't IBM use Apple workstations across the enterprise? After all, they make the CPU, and for awhile even made the hard drives.

      Are you sure that isn't one of their long-term goals? IBM is a big company, and it hasn't been that long since they've decided to change how they do things. Just because you can't see any evidence that they're making that switch doesn't mean they aren't working on it. I mean, they aren't even out of the Wintel PC business yet, and won't be, at least in name, for another 5 years. Given how much MS loves it when their resellers start offering competitive products, that seems like a very important first step in any such plan.

      When you walk into an IBM facility, what brand of computers are sitting on the desks? I honestly don't know, but I would hope they eat their own dogfood. I very much doubt you'd see a Dell on every desk.

      If Apple has trouble getting developers to code for their CPU, I just don't see who would develop for a VAIO (or ThinkPad) Cell workstation or laptop

      Porting Linux takes care of a large portion of that. Yeah, I know Linux is pretty much in the same boat as Apple, but it's a real easy way to significantly boost their development community, and provides a huge amount of instant functionality.

      --
      Under capitalism man exploits man. Under communism it's the other way around.
  6. Re:Cool, as a co-proc by The_Mr_Flibble · · Score: 2, Insightful

    But isn't the point of the cell processor a distributed model.

    From the reviews I've seen they are touting it as if the cell communicates with other cells to handle all the processor intensive stuff.
    so where one cell would not be as powerful as an x86 cpu two cells would be. And the way they have designed the things is as a seperate computer on a chip so you can basically upgrade your ?? just the same way you upgrade your memmory.

    Or have I gotten the wrong end of the stick and they are designing these things for pointless fun.

  7. Reminds me of Chuck Moore's 25x multicomputer chip by LourensV · · Score: 5, Interesting

    Some time ago Chuck Moore proposed the 25x , a single chip holding a 5x5 array of simple processors. That's what this reminded me of when I first read about it. As Mr. Moore said in that Slashdot interview, "[...] the 25x is a solution looking for a problem." Cell theoretically has a lot of performance, and we're talking FLOPS not MIPS. It will certainly be useful or even revolutionary in televisions and game computers, as well as for scientific calculations. I don't see it making your desktop or server much faster though. Those don't need more FLOPS, they need more I/O bandwidth and faster peripherals, and perhaps more MIPS. I can see Cell workstations, but in the same way as you have SPARC workstations and laptops now: as development tools for the "real" hardware.

  8. More Cell reviews? by Anonymous Coward · · Score: 3, Insightful

    Sheesh, /. might as well make a Cell image & category, they post so many articles about it!

    1. Re:More Cell reviews? by adam31 · · Score: 4, Informative
      Well you can't say it isn't news for nerds. And this article has enough added information in it that I thought it to be worth posting. Most Cell news stories are dumbed down for the nonnerds, whose most pressing question is "Does it run Windows?" This article is the best source I've seen of all the info we know about Cell, without a painful amount of editorializing.

      It seemed there was a lot of misinformation/confusion going around because some people heard it supported DP floats and some people heard it used Altivec (which doesn't support DP). So half the people extrapolated that IBM had ditched Altivec (i.e. VMX), and the other half assumed there was no DP support... both of which angered people. The truth (according to this article) is that it uses BOTH: A version of VMX that supports DP. whew!

      The article also points out that the SP floats aren't truly 754-compliant, as they round-toward-zero on cast to int. This makes it compatible with that horrible C/C++ truncation cast (If anyone knows why C opts to round-toward-zero, please let me know!). However, rest assured, DPs are 854-compliant.

      Also, the article suggests that there is a memory limit (at least initially) of 256MB:

      The maximum of 4 DRAM devices means that the CELL processor is limited to 256 MB of memory, given that the highest capacity XDR DRAM device is currently 512 Mbits. Fortunately, XDR DRAM devices could in theory be reconfigured in such a way so that more than 36 XDR devices can be connected to the same 36 bit wide channel and provide 1 bit wide data bus each to the 36 bit wide point-to-point interconnect. In such a configuration, a two channel XDR memory can support upwards of 16 GB of ECC protected memory with 256 Mbit DRAM devices or 32 GB of ECC protected memory with 512 Mbit DRAM devices.

  9. Re:Cool, as a co-proc by ezavada · · Score: 2, Informative

    From what I've seen, it will be rather low horsepower compared to the current G5s, since it will be lacking deep pipelines, caches and other bits that give the G5 much of it's speed. That's not to say that it's not really a G5, it sounds like it will support the full G5 instruction set (including Altivec) and be a true 64 bit processor core, just not a particularly fast one.

    The role of the G5 cores seems to be to handle higher order logic that prepares and parses out tasks to the very fast vector units (SPEs).

    So it probably does make more sense to have it as a coprocessor in a Mac, at least until compilers and software writers routinely target the cell's SPEs -- if that day ever comes. More likely specialized code will need to be written, and particular subtasks pulled out.

    I suspect things like physics libraries, sound & video processing libraries, plus apps like SETI@home would be quickly written to use the SPEs, but most other software wouldn't be.

  10. Lost acronyms in the article.. by acomj · · Score: 2, Funny

    I like the fact that the presenters didn't remember/know what all the acronyms were in the cell diagram. I like the interview technique too. Get em drunk and watch em talk.

    I was wondering why the article was so in depth.

    Quoth
    "
    After some discussion (and more wine), it was determined that the ATO unit is most likely the Atomic (memory) unit responsible for coherency observation/interaction with dataflow on the EIB. Then, after the injection of more liquid refreshments (CH3CH2OH), it was theorized that the RTB most likely stood for some sort of Register Translation Block whose precise functionality was unknown to those outside of the SPE. However, this theory would turn out to be incorrect.
    "

  11. Perhaps, but FOUR of them... by game+kid · · Score: 2, Interesting

    ...might be used to run the PS3 (assuming this is true). Outside of a weighty OS (assuming you use Windows, Mac or a Linux GUI with that nVidia) they should do better.

    Besides, 256 GFlops in single-prec. can't be too bad either...can it?

    --
    You can hold down the "B" button for continuous firing.
  12. Re:Isn't linux running already ? by LiquidCoooled · · Score: 2, Informative

    Here you go, I found the source for you :)

    --
    liqbase :: faster than paper
  13. Re:Linux on Cell by LiquidCoooled · · Score: 2, Funny

    I use a particle accelerator with Windows all the time.

    I can't stand LCD monitors, CRT all the way ;)

    --
    liqbase :: faster than paper
  14. Re:x86 compatibility? by Decaff · · Score: 4, Informative

    What good is a new chip, no matter how fast it is, if you can't run anything on it?

    There is this really neat group of operating systems called Unix/Linuxes. They have a major advantage in that you only need a small amount of assembler to get going on a new chip, then the rest can be ported over in C/C++. This has been the situation for decades - Unix (and now Linux) has been the initial OS for almost all new chips.

    How fast will this chip be at general purpose stuff? Who cares if it can do 100GFLOPS on a couple operations.

    Reasonable point, but FLOPs are a good general measure of the speed, as they are pretty complex operations. We all used to measure speed in MIPS (Million Instructions Per Second), but as chips got so diverse, one chip's instruction could not be easily compared with another's (particularly if RISC chips were involved, where the instructions could be very minimal). FLOPs are a better measure, as a divide is a divide and a multiply is a multiply no matter what chip architecture you use.

  15. Re:x86 compatibility? by Anonymous Coward · · Score: 3, Informative

    It would be compatable with PowerPC software.

    Which means that the vast majority software I use everyday would work just fine on it.

    Although it would be slow... Cell isn't optimized for general purpose and the extra 'SPE's add another 128 registers to the PowerPC and VMX ISA's. Which wouldn't get used by normally compiled PowerPC code.

    You would have to have GCC worked over to provide 'vectorized' code to use as much as these SPE's as possible for single threaded applications, and even then you wouldn't get much more performance out of it then a normal G4-class PowerPC proccessor.

    Then you have memory managment problems to work out, probably thru a extensive firmware-based controller which would add to execution time and slow things down a little bit more.

    The advantage would be if I was doing extensive multimedia or 3d work or special types of scientific research then I could use a familar enviroment (linux) as a platform to run special applications that themselves would benifit from the tremendious performance capabilities of a few of theses cells.

    It would make a great chip for embedded multimedia player (at lower clockrates) and would be great for something like a non-linear video editor, but a Wintel killer it definately woudn't be.

    Probably would be somewhat usefull for normal desktop usage as more and more applications are multimedia in nature, but it's not going to be substancially faster then a Intel or AMD proccessor to the end user.

  16. Re:Cool, as a co-proc by stilwebm · · Score: 3, Interesting

    But what it can do is provide backup horsepower as a math co-processor.

    I see great potential for the STI Cell Processor as a SETI@Home accelerator.

    Seriously though, there may be good scientific uses for these exactly as you envisioned - in a coprocessor role. From folding proteins and weather simulations to cryptoanalysis, these could provide a great entry for distributed scientific computing.

  17. What software will it run by akc · · Score: 5, Interesting

    I've been reading about the Cell processor for a few weeks now, and there is never any discussion about the operating system architecture necessary to get this thing to perform.

    As I see it, its a Power PC of OK quality with 8 subsidiary processors optimised for operating a relatively simple task on a relatively small amount of memory.

    So - port Linux to it? But how?. Relatively easily, to make use of the main processor, but what sort of subsystem do you build so that the subsidiary processors get used to their full potential. Perhaps part of X could be configured to run on these processors - but that would be a very manual tweak to make use of the architecture. And with the best will in the world, these processors would then sit around unused for most of the time.

    What you need is a more general concept, probably at the programming language level, in which algorithmns can be expressed in such a way that the operating system can detect that they can be loaded into these subsidiary processors to be executed.

    But there doesn't seem to be anything about that in the news out there. Presumably Sony are going to do something for the PS/3 - what? and is it going to be general purpose, since much of the benefit from their purposes will be a super motion graphics processor for games.

    Until we understand what the software infrastructure to make use of the architecture of this new chip will be, then I can't see how we can make predictions of its success in the more general processor market. Before then its just marketing hype.

    1. Re:What software will it run by Anonymous Coward · · Score: 2, Insightful
      Well, it seems to be ccNuma. The coprocessors can access shared memory but copy to local memory to do the processing. The ppc control processor is there to set up stuff for the special processors since they're not equipped to communicate with the outside world themselves.

      The iteresting thing which most commentators seemed to have missed is the virtualization technology. If you're going to have cell based devices job out stuff to execute on any nearby cell processors on the network, you're going to need a really good sandbox. One that's better than Java's which isn't that good. IBM's virtualization technology is more secure than anything else I've seen out there.

    2. Re:What software will it run by cow-orker · · Score: 2, Insightful

      I don't think the operating system could make much use of the APUs. The best that can be hoped for is an OS that somehow allocates apulets to the APUs, but since the APUs will work best if used as stream processors this allocation is... well... non-trivial.

      However, given a way to allocate these units to userspace programs, there are lots of programs that could benefit. X and mplayer come to mind, provided someone implements the critical code for APUs, which may well mean coding in assembly.

      What you need is a more general concept, probably at the programming language level, in which algorithmns can be expressed in such a way that the operating system can detect that they can be loaded into these subsidiary processors to be executed.

      This will remain a dream for "general purpose languages" like C. However, I could imagine Parallel Haskell or something similar for the Cell. That would be way cool and could even work.

      Anyway, the architecture without adequate software is quite useless. I'm still very much interested.

    3. Re:What software will it run by ReelOddeeo · · Score: 3, Insightful

      What software will it run? Software "cells".

      A software cell runs on one of the APU's (or SPU's, or whatever we're currently calling them). It is sandboxed. When the main processor sends a software cell to one of the sub processors, it specifies exactly what memory that the hardware will allow that processor to access.

      You can run a software cell from an untrusted source. The software cell is a combination of code/data. The processor performs some function on it. While running, the sub processor has access only to the memory that the main processor designated.

      Applications like X Window system, Xine, MPlayer, mpg123, LAME, XMMS, etc., ad-infinitum, can be designed with their own software cells. In fact, entire libraries of software cells can be constructed and re-used. Libraries of multiplexors, demultiplexors, encoders, decoders, compositing, FFT's, transcoders, renderers, shaders, GIMP Filters (blurr, effects, etc.), etc.

      If you're building an application, such as SETI at Home, then you organize your program as software cells. You can farm out as many software cells as you have hardware cell processors to handle.

      Cells can be safely shuffled from device to device. Spare cell capacity in your TV or PS3 can run your SETI at Home, or your Xine cells.

      The Cell processor isn't very helpful for, say OpenOffice.org spreadsheets or drawings, or spellchecking. But word processing isn't the function that usually needs super fire-breathing processor power.

      It is not inconceivable that things like spreadsheet calculations can be effectively improved using software cells. But this is not as obvious (at least to me) as the former applications that I mentioned.

      So if you had a 2 GHz main processor and one or more Cell co-processors (a variable, expandable number) you would have a tremendous amount of computing power. The applications that demand extraordinary power would have it -- even with just one cell coprocessor. And this was quite a list of applications I mentioned above. Just about anything audio-visual or doing massive parallel operations on pixels, or 3d.

      --

      Those who would give up liberty in exchange for security and DRM should switch to Microsoft Palladium!
  18. What's the point? by jeif1k · · Score: 4, Insightful

    Unless you are computing digital orreries, whether it has 256GFlops or 256TFlops makes little difference if the memory bandwidth isn't substantially increased, and people don't increase the memory bandwidth because that has expensive consequences all over the system.

    On the whole, my impression is that current mainstream CPUs have a pretty reasonable balance between CPU power and all the other system components. Changing just the CPU without making substantial (and expensive) changes to the rest of the system will not magically give you more performance.

    1. Re:What's the point? by dfj225 · · Score: 4, Informative

      It seems like Cell will have more memory bandwidth than the processors commonly used today. From this article:

      " The memory and processor bus interfaces designed by Rambus account for 90% of the Cell processor signal pins, providing an unprecedented aggregate processor I/O bandwidth of approximately 100 gigabytes-per-second. "

      --
      SIGFAULT
    2. Re:What's the point? by jdb8167 · · Score: 3, Informative

      Why do you think they licensed the XDR interface from RAMBUS?

      There are 2 dual XDR interfaces. Each interface is running at 6.4 GB/s. So 4*6.4 = 25.6 GBytes/sec.

      So the CELL memory design is at least 4 times faster than current DDR2 memory systems.

  19. Re:Cool, as a co-proc by sjf · · Score: 2, Interesting

    it will be lacking deep pipelines, caches and other bits

    And that is the whole point of this processor. The G5 NEEDS those pipelines and caches in order to feed the multiple execution units, reorder instructions and avoid reading slow host memory.

    The CELL on the otherhand will have the instruction ordering done in software. All those 'bits' you describe are replaced with software: a much smarter compiler.

    Yes this processor will perform poorly with today's code. With appropriately written code it will scream.

    This chip is not going to compete with other general purpose CPUs. It's going to compete with custom ASICs and FPGAs.

    -S

  20. these are max figures by Anonymous Coward · · Score: 2, Insightful

    folks need to keep in mind these are max figures assuming software is perfectly written to take care of parallelization (does that word exist?). this means that most computer programs will hit no where near these rates, but super optimized versions of things like SETI-Home and an mpeg encoder/decoder could take advantage of it.

    just remember how many developers complained about the Emotion Engine from the SP2 and how it was such a bitch to program for, this will be worse. it's first gonna require a special compiler or at least a tool to fill the code to all the independent mini-procs and reorder all the instructions to take advantage of it's little quirks. they seem to be a bit different from pipelines, but the some of the same concepts with regards to stalls will apply. so if you're working heavily on one set of data, it's quite possible only one of these mini procs will be used, and the rest will stand there and do nothing.

    i think this is something that'll work much better on a video card and a maybe a soundcard than as a main processor, except in the cases where mostly only media processing is requird. settop boxes, game consoles, tvs, stereo systems, etc.

    1. Re:these are max figures by adam31 · · Score: 2, Informative
      these are max figures assuming software is perfectly written to take care of parallelization ... this means that most computer programs will hit no where near these rates, but super optimized versions could take advantage of it...just remember how many developers complained about the Emotion Engine from the SP2 and how it was such a bitch to program for, this will be worse

      This is essentially what happened with the PS2. 1st gen game teams thought the compiler would handle more of the task of keeping the vector units and GS busy. Didn't happen. However, PS2 teams have learned a lot of valuable lessons in the past 5 years to prepare for this jump. PC developers are going to have a horrible time trying to get performance out of the Cell.

      Most notably, devs learned that the PS2 is bus-bound. With only 16kb caches, memory-layout is paramount to avoid requisitioning the bus every 100 cycles to refill both caches just for a vtable look-up and jump.

      So the Cell forces programmers to think in this paradigm. No caches, just 256k local storage for threads. So your performance will only suffer if you fail to learn the new principles... no more cache-agnostic coding. No more memory accesses to any random place in memory.

      Then programmers figured out that the VU0 was basically sitting dormant the entire time. That's a third of the total proccessing power wasted. Little by little, they started moving tasks to the VU0-- skeletal animation, particle dynamics. The problem was that the VU0 only had 4kb of local memory, so between loading a microprogram, double-buffering memory for DMA in/out, and running the damn thing, the EE couldn't do anything useful besides babysit.

      The VU1, OTOH, was a totally different beast. It took over responsibility for the T&L stage in rendering. It had 16kb of memory and could consume a chained DMA stream of microprograms to run and the associated memory (basically a series of display lists). Once you wrote your display-list chain to a buffer and began DMA, it required no babysitting at all. Without a doubt, You can see where the design decisions behind the Cell are coming from. The PS2 was basically just a prototype Cell to see what worked.

      And here are the results. They ditched the VU0, multiplied the number of VU1s by 8, and gave each one 16x the memory, jacked up memory bandwidth. The EE (PPC) is now officially the arbiter of threads... Except now the SPEs are capable of generating execution chains-- i.e. one produces, another consumes, so the PPC doesn't need to have all the brains.

      Another interesting thing is that while certain large portions of the render loop need to be executed serially (Game Logic, Animation, Collision/Dynamics, then Render), many operations within those category can be parallelized. For instance, devs have resorted to huge hacks to make AIs look like they're running in threads when they're really not. It's simply been the case that games were definitely only running on one processor, and context switches are expensive. It's actually much more convenient to have multiple cores and turn these hacks into actual LWPs. The real question is how is Sonyibm going to handle concurrency? Are they going to write a special pthreads for the PPC threadmaster? Are they going to use chainable microprograms, where the PPC is just a glorified VIF? That is the big question eating at me right now.

      But if you look at the latest games-- Jak3, GT4... they're hitting pretty much near the theoretical limit of the PS2, no matter how unlikely that seemed just 5 years ago. The first half of the Cell learning curve has already been traversed by those brave PS2 freaks, it's up to the rest of us to learn from where they've been.

  21. Massively Parallel Promises by Doc+Ruby · · Score: 3, Interesting

    The real promise of these Cells is Internet MPP. IBM (and Sony) claim that Cell PCs will be able to cluster "natively" across Internet-latency TCP/IP networks, like broadband. If they deliver on that, then performance questions will revolve around interoperable network apps, not just the raw CPU HW.

    Intel's Pentium architecture was built to accomodate 6-way direct CPU interconnects. The idea was to build "cubic" structures for MPP computers. It took until the P4 to really deliver any of those, almost 10 years after the architecture was released. And the software is still bleeding-edge, and hand-rolled for each install. MPP SW techniques have evolved a lot since then, so perhaps the Cell will actually deliver on these "distributed supercomputer" promises.

    --

    --
    make install -not war

  22. Single Precision Rounding error by BobPaul · · Score: 2, Interesting

    Besides, 256 GFlops in single-prec. [realworldtech.com] can't be too bad either...can it?

    Unfortunately single precision number ignore certain rounding conventions in order to boost the speed. You'll get super fast single precision results, but they won't be as acurate as on other systems. Probably won't matter for physics rendering in a video game (Sony's Emotion Engine did the same thing) but it could make a big difference when applied to general purpose situations.

  23. Sure thing by Reanimated · · Score: 2, Interesting

    5 years ago the "Emotion Engine" from Sony was supposed to "steal a chunk" of the PC processing market. Didn't happen. Won't happen.

  24. Re:Cool, as a co-proc by BobPaul · · Score: 2, Informative

    IF they write/pick the OS/software for the Cell appliances correctly I could see it making some headway as a desktop replacement.

    Which is the key, exactly. As Linus wrote in one of his linked form posts (from the blurb) it's gonna be a pain to program general purpose for those vector units (SPEs).

    However, judging from the main review, it doesn't look like the PowerPC Element was casterated too much. It looks like it'll suffer from Pentium4 syndrome (boosting the frequency doesn't do as much as it used to) so it might not be as good as an equally clocked Power5 based processor, but I think you're looking too much at the SPEs when considering whether or not it'll compete with the x86 and Power5.

    Right now, there aren't x86 and Power5 chips at 4+Ghz, and looking at Intel and AMD's roadmaps, there probably won't be for quite a while. Even if this thing is horribly inefficient for general tasks, it'll be great for Graphical/Video work, great for Physics/Scientific work, and probably at least as fast for everything else as a single core P4 3.8Ghz (which does a better job melting candles than it does holding them, most of the time).

  25. Here's a more accurate review by YU+Nicks+NE+Way · · Score: 3, Informative

    You may not like Michael Kanellos usually, but I think he's hit the nail on the head here.

    This is a bigger, hotter, less stable chip with an exotic and hard to write-for architecture. That's fine for a gaming system with a dedicated revenue stream and no competition. It's not gonna make it outside that domain.

  26. Re:What's the point? - What are your assumptions? by thpr · · Score: 3, Informative
    Changing just the CPU without making substantial (and expensive) changes to the rest of the system will not magically give you more performance.

    Substantial changes, maybe. Expensive? Perhaps not. This all depends on the base assumptions from which you operate. One of the fundamental assumptions in today's existing systems is that any and all work should be done to maximize the utilization of the CPU. However, when considering how to design other types of systems, such may not be true (it may make sense to minimize the memory footprint, for example).

    If you've ever done some detailed algorithm work, you will quickly realize that there are many algorithms where you can make tradeoffs between memory and CPU time. The 'simplist' of these are the algorithms that are breadth first vs. depth first, which can trade off exponential in memory vs. exponential in time. [For a 'trivial' example, try forming the list of all operational assignments containing 6 variables and which use %, +, -, *, /, ^, &, ~, and ()... less than 50 lines of perl and you'll quickly blow through the 32-bit memory limit if written depth first, or take overnight to run breadth first]

    The significant question which has been brought up - and which remains unanswered - is what software development tools will be made available. Once this is better answered, we will all be in a better position to determine what fundamental assumptions have been changed, and therefore how we can follow the new assumptions through to conclusions about the net performance of the processor and machine in which it is contained.

  27. Maybe... by gUmbi · · Score: 3, Funny

    Since IBM is now involved, should it be called the PS/3 instead of the PS3?

  28. It's actually 2 different kinds of processors by songbo · · Score: 2, Interesting

    My view of the Cell chip is that it's actually 2 different kinds of chips put together. It has a general processor (the POWER5 core) core, and essentially co-processors that are optimized for a totally different class of programs. The POWER5 chip would let it run your normal office applications, but the SPEs allow the chip to do things like graphics processing, audio processing, simulations, etc. All those problems that lend themselves naturally to a vectorizes solution. Together, the 2 kinds of cores on a single chip has the potential to do a lot. But there has to be tools to allow developers to make use of the potential. Especially as vectorized programs are not easy to write and optimize, that makes the quality of the development tools very important in deciding the success of the chip.

    --
    There are 10 kinds of people in the world - those that know binary, and those that don't.
  29. Re:Clock speed by thpr · · Score: 2, Interesting
    So look at what is IN that Intel architecture pipeline that Cell shouldn't need (based on what we know):

    (1) fetching and prefetching (multiple P4 stages) because the extra processors on Cell can directly address their local 256KB of memory.
    (2) decoding x86 instructions into microops - since the extra processors are running code directly rather than running kludgy x86 code on a non-x86 microcore
    (3) branch prediction (since the load penalty is a lot lower due to local 256KB of memory and shallower pipeline, these stages are unnecessary)
    (4) scheduling the microops isn't necessary as Cell will require that to be done in software during compilation (ala VLIW)
    (5) retirement (since Cell isn't doing out-of-order execution, no reordering and retranslation from the microop to the x86 world is necessary)

    So given that potentially half of the 20 P4 stages (later P4s have 31) are unnecessary, that saves a lot of logic and allows the same clock speed with less stages. There has (apparently) been a lot of architecture work here to think through what adds the extra hardware and how to avoid that... the result is the ability to use higher clock speeds without having the same types of penalties the IA-32 processors encounter.

  30. 250 Gigaflops? by CTho9305 · · Score: 4, Insightful

    People seem to think this is leaps and bounds above everything else, but they're missing the details. In order to obtain that much performance, you'll need a task which parallelizes well so it can be broken up into chunks for the 8 SPEs. Graphics rendering falls into this set of tasks, but a lot of general applications just don't gain that much from parallel processors. Even when you have a task that does parallelize, writing parallel code is quite a bit harder than writing code for just a single thread of execution.

    I've seen a lot of hype about having the Cell in your laptop talk to the Cells in your desktop, microwave, and TiVo, but you have to consider real-world limitations. When you set up a network like that (presumably wireless), you're going to be limited to around 100Mbps. In computer clusters and supercomputers, one of the main limitations of performance is the communcation bandwidth available between processors, and the latency of the network. To build a "home supercomputer", you not only need a task that parallelizes well, but one that doesn't require so much inter-node communication that it's held back by a slow network. You can't work around this problem with hardware magic - if the task you're working on requires lots of communication bandwidth, you're going to be held back.

    So how much beyond a modern PC is 250GFLOPS anyway? Not much! A GeForce FX at 500MHz does 200 gigaflops. An AMD Athlon's peak performance is 2.4 GFLOPS at 600 MHz... if we scale this up to 2.2 GHz (high-end Athlon), that's 8.8GFLOPS (note: As we're talking about theoretical performance, nonlinear factors like bus speeds can be ignored). Basically, if the Cell dedicates most of its power to graphics rendering, you'll have computation power in the same range as a fast PC of today. Given that we're not going to see any products based on the Cell for a while, this isn't going to be the end of the world for Intel and nVidia (let alone the fact that Cell isn't x86).

    Consoles using the Cell will have the advantage of only having to render for TV resolutions - at most 1080 lines, while PCs will be rendering at up to 1600x1200, but if you look at recent history, you can compare the xbox to a then-good PC with a GeForce3 (which came out at around the same time) - the xbox looked better, but PCs did catch up and surpass it's performance and it didn't take all that long. Consoles have to be very high-end when they're released, because the platform doesn't change for 2-3 years, and they still need to be "good enough" after a couple years, before the next generation is released.

  31. Remember by temojen · · Score: 2, Informative

    POWER5 is not the same as PowerPC 970 (G5). POWER5 is a really really expensive high performance mainframe chip. G5 is a server/desktop chip.

    1. Re:Remember by Ohreally_factor · · Score: 2, Informative

      Also the PPC 970 (G5) is based on the POWER4 cpu.

      have you ever seen a picture of the POWER5? It's slightly smaller than a Mac mini.

      --
      It's not offtopic, dumbass. It's orthogonal.
    2. Re:Remember by UranusReallyHertz · · Score: 2, Informative

      Those photos actually show a ceramic multi-chip module containing 4 power5s and 4 cache chips. Up to 8 of em can go into a single chassis. Truly geek porn. Also I've read that the CELL would be about the same size as the Emotion Engine at 25nm. So SONY has already shown that they aren't afraid of using a big chip.

      --
      Smoking is an expensive, slow, and unreliable method of suicide.
  32. To the putz who submitted this news post: by Hannibal_Ars · · Score: 5, Informative

    If you're going to rip the links out of one of my Ars news posts and submit them to slashdot (in the same order in which I linked them, no less), then at least credit your source.

    --
    Senior CPU Editor | Ars Technica | http://arstechnica.com/
  33. think to the future by coult · · Score: 2, Interesting

    Most of you are thinking of today's applications...but what about things like eye/head tracking, voice recognition, face recognition, telepresence, real-time cinema-quality CGI, etc...those are tasks requiring large-scale numerical computation, and they all might appear on your desktop in the not-too-distant future thanks to chips like CELL and its future ancestors.

    --

    All is Number -Pythagoras.

  34. Re:What about AI? by mabinogi · · Score: 2, Interesting

    Well, considering that there's going to be a dedicated graphics chip from nVidia in the PS3 too, I'd imagine that the SPUs are designed specifically with all that stuff in mind...

    --
    Advanced users are users too!