Wednesday, May 24, 2006

I've created a theme for GDM that pleases me. For anyone interested in it I have posted it here. This theme is not for everyone. But I liked the pic. I based on a stock theme included in GDM. I'm sorry I don't remember which theme I based it on. Should someone recognize it, please post a comment with the details. I will be happy to include credit.

Fell free to tell me how you feel about this theme.

Monday, May 8, 2006

Is IBM's Cell Broadband Engine worth the wait?

The short answer: Yes

The long answer: Cell is a revolutionary idea put together by the folks over at Sony and engineered by IBM, Sony and Toshiba. The idea is simple, the chip is not. One “modified” Power Processor Element (PPE) sits on top of eight (thats not a typo) proprietary Synergistic Processor Elements (SPE). Each PE will run at or around 3.2 ghz with 4.0 ghz possible. Cell doesn't use a cache, instead each SPE has it's own 256k local store. Each SPE can only access it's own local store, preventing cache overwrites.

Ok, so multi core chips aren't revolutionary. That comes in the way they talk to each other. The PPE, mostly, assigns work to each of the eight SPEs. This also allows the PPE to locate other Cells on the network and assign work to them. Thats right, beowolf in a chip. Lets say you have 16 web servers. All 16 servers usually carry a medium traffic load. One of your customers becomes an overnight success and the virtual server they are on suddenly gets more traffic than it can possible handle. The other 15 servers are just sitting there, not really working hard, but doing whats asked of them. Well, if those servers are running your typical dual core x86 chips then the one server is SOL. However, if those servers are running dual Cell chips, the Cell thats in trouble will start sending work over to the other Cells on the network. Automatic, integrated load balancing designed into the chip from the beginning.

The real benefit will be for graphics farms. Setting up a large scale graphics farm will be easier than ever. Each Cell is capable of 256 GFLOPS at 4ghz. For comparison the Nvidia GeForce 6800 Ultra has reached 40 GFLOPS and the typical 3ghz Pentium 4 can do around 6 GFLOPS. Each Cell in the farm will be linked with every other Cell on a level never before seen. To demonstrate it's graphics capabilities, Toshiba showed a single Cell decoding 48 standard definition MPEG 2 streams to a single HDTV screen. One of the SPEs was left idle while this was happening. I'll leave further explanation of the Cell's graphics rendering capabilities to those that know more about that industry, but it sounds to me like this chip might just be a rendering farm on 1 chip.

All this power is not completely wasted on the desktop. Aside from the gaming possibilities, most desktop apps could be easily modified to take advantage of the Cells 8 SPEs. Currently I'm running 3 instances of firefox with about 4 tabs each, OOo Writer and listening to my favorite G'n'R cd. Just the audio stream alone could be broken across several SPEs to deliver extremely high quality audio replay. Firefox could hand large jpegs off to an SPE to decode leaving the PPE to fetch the next element of the page's I'm viewing. Flash web content is becoming more popular everyday. Flash could be passed from one SPE to the next for decoding and processing to provide the smoothest animations ever seen. The possibilities for tweaking desktop apps are endless.

There has been some concern about the Cell not having “out-of-order” hardware on the PPE. OOO is supposed to allow speed bursts of up to 3 Instructions Per Cycle being processed. From what I have been able to determine, OOO realistically results in about 1.6 Instructions Per Cycle being processed. The Cell's PPE has been built with a Dual Channel design allowing it to process 2 Instructions Per Cycle, every cycle. Without the OOO hardware, Cell uses less power allowing it to “run faster”, reaching potential 4 ghz or more. More instructions per cycle and more cycles per second means faster processor.

IBM has already ported the Linux kernel to run on Cell. Sony ported the GNU Tools. The Cell port has been incorporated into the main Linux tree as of v. 2.6.16. The rest of your OS will have to be recompiled to run on and take advantage of Cell. IBM already has AIX and OS/400 up and running. I expect the big Linux Distros to follow shortly after Cell is available to the public.

According to various articles and IBM's website, Cell will be available from more than just IBM, Sony and Toshiba. The 3 developers apparently have some agreement that 3rd party distribution will be allowed. Right now there are no plans for a desktop version, with the exception of Sony's Playstation 3 (which is powered by an 8 core Cell instead of the 9 core used by IBM).

Now, the really good news. Sony is expected to offer some form of Linux kit (similar to the one offered for Playstation 2). The PS3 will accept a laptop hard drive and should accept usb keyboard and mouse, making it the perfect $500 server. “Though sold as a game console, what will in fact enter the home is a Cell-based computer“ - Ken Kutaragi

IBM has Cell Blade Centers available by bid now and expects to ship the the general public around 3rd quarter 2006. Sony plans to ship the Cell powered PS3 in November 2006.

I'll be watching the development of Linux on Cell and will keep you posted as to new developments as I learn of them.