Interesting read on Cell architecture
Hey all,
I just read this one: http://www.blachford.info/computer/Cells/Cell0.html
A pretty interesting read, explaining the Cell technology (as far as it is known to the public) and why it's going to be *H* *U* *G* *E*, once it's out there.
However, the most interesting tidbit IMHO is found in part 4:
So, Apple MacinCell, anyone?
I just read this one: http://www.blachford.info/computer/Cells/Cell0.html
A pretty interesting read, explaining the Cell technology (as far as it is known to the public) and why it's going to be *H* *U* *G* *E*, once it's out there.
However, the most interesting tidbit IMHO is found in part 4:
Quote:
The Core Image technology due to appear in OS X "Tiger" already uses GPUs (Graphics Processor Units) for things other than 3D computations and this same technology could be retargeted at the Cell's APUs. Perhaps that's why it was there in the first place...
The Core Image technology due to appear in OS X "Tiger" already uses GPUs (Graphics Processor Units) for things other than 3D computations and this same technology could be retargeted at the Cell's APUs. Perhaps that's why it was there in the first place...
So, Apple MacinCell, anyone?
Comments
more interest is the APUs, if they are altivec (or exended) with the auto-vectorization of gcc4 (the tiger compiler) we can expected an huge impact in performance.
we' ll see
Cell = 1/3 sony
= 1/3 IBM
Apple can provide much software and also isn't the new xbox PPC and beta tested on optimized Powermacs
Very interesting indeed!
I still predict an itms Movie store with sony and sony on board for fairplay once itms reaches a critical mass!
Folks, speaking as a programmer, the author is a bit... optimistic. Let's look at our own history as Apple users and evaluate the facts of system design and programming.
First of all, vector processors have a nasty habit of consuming memory bandwidth. Who cares if you have a peak performance of gigaflops if you can't feed the stupid vector processor? This is why G4's were slow on that great Motorola MaxBus- they were data constrained. Given that Cell has a whopping 6.4 GB/s data transfer rate, they will be bus constrained.
Secondly, all thus nonsense about a cell networked living room where your TV (cell enabled) speeds up your PS3 (cell enabled) is just garbage. I don't know why people keep bringing this up. There are two problems with this: first of all there is considerable latency between one's PS3 and TV (I assume you would use wifi to connect them) as well as the afore mentioned memory bandwidth limitations. Secondly, speaking as a programmer, there is no way that programmers are going to write games assuming that joe user also has some extra computational power sitting in his television. That's nonsense! You can't assume that the average PS3 gamer has a Sony TV, Sony stereo and Sony refrigerator to add some extra computational cycles. Madness & nonsense.
Thridly, speaking of programmers and programming, the work to parallelize an application falls into two categories: extremely difficult or impossible. Not all apps can be parallelized and not all applications can take advantage of a vector processor. Logic with many conditional checks doesn't fit into the meat grinder of vector processing. Some algorithms have no known parallelized solution. Even when you can make a piece of logic multithreaded and or vectorized, the work involved is frequently nontrivial. The author blithely assumes that this is easy due to Linux, demonstrating his ignorance. As Apple users, we only need to remember that only some aspects of OS X and our apps use Altivec. The parts that do not (and they are considerable) either can't be vectorized, can't be parallelized, or aren't worth the effort.
Please keep reality in mind!
Originally posted by costique
I must have missed something. Can a set of the Processor Units be used instead of a general purpose CPU like PPC970? How does it fit in the whole arch? If Cell is based on POWER, can it run arbitrary PowerPC binary code? What the hell is it anyway besides a number of interconnected processing units? What exactly can these units process?
Not very well for general purpose computing.
Cell makes a great DSP.
I HIGHLY doubt that cell can run PPC binary code.
It is just a number of interconnected processing units.
These units are very good at processing blocks of data in a batch.
Originally posted by PB
Whoa, what a bumpy landing Yevgeny. Go away I tell you .
A voice of reason and sanity is a good counter-point to the article quoted at the top. Please remember that that article is written with a minimum of real information, and it contains numerous inaccuracies. The author also doesn't seem particularly conversant in what is involved in programming vector processors -- yes they are powerful, but they are hard to make work at peak levels.
(edit) Ah, Programmer, this time you beat me!
Originally posted by Programmer
A voice of reason and sanity is a good counter-point to the article quoted at the top.
Yes, I know. My little knowledge on what is involved in vector programming lets me understand what kind of programs can be translated into vector language. But I could not leave Yevgeny's comments, in the context of this thread, without making some fun .
Originally posted by PB
Yes, I know. My little knowledge on what is involved in vector programming lets me understand what kind of programs can be translated into vector language. But I could not leave Yevgeny's comments, in the context of this thread, without making some fun .
No worries. My software product goes final in five weeks so my tolerance for technology BS is currently very low.
But there might have been a grain of truth buried in the BS, namely that Java apps are commonly implemented as small, discrete fragments of code that talk to each other over relatively high-latency channels (http connections, for instance). Now, if you had a whole plateful of Java beans you wanted to run, this sort of ad-hoc loose clustering could work to some extent, just because the solutions are already factored properly. But this is much, much more likely to happen among servers in a back room than it is between your PSP and your TV.
I've speculated that it might be possible to spread a MMORPG or some similar system over consoles, but I remain skeptical. Objective-C is capable of Java-bean-like architectures, but it doesn't seem to be implemented that way very often.
And if the writer really thinks it's so easy to set up a Linux cluster, well, he's welcome to try.
Originally posted by Amorph
There was an equally bad Register article a while back that pegged Cell as a Java VM, which is even sillier...
The Register article was so much bull crap it shouldn't even be mentioned. Taking the word "virtualization" and being delluded to think that must therefore be related to "virtual machines", and therefore the JVM, is clearly the product of someone of diminished capacity. The hardware virtualization isn't even a Cell thing -- IBM is building it into all the POWER chips as was announced last month.
At least the article linked at the top of this thread is aimed in the right direction, even if he doesn't actually have the facts. He is working from an old conceptual patent, rumours, and inuendo, not from a manual with IBM or Sony Confidential stamped all over it.
Originally posted by Yevgeny
Please keep reality in mind!
Screw reality! If we wanted reality we would go here
Originally posted by Aphelion
How about the Cell as a MPEG 4 encoder? Could "Asteroid" be Cell powered?
The Cell could do those things in its sleep, but no Apple product shipping any time soon (if ever) is going to use one.
Originally posted by Programmer
... no Apple product shipping any time soon (if ever) is going to use one.
So what would make for a contemporary minimum architecture to decode a HD stream and deliver it to Mac mini class Macintosh for viewing?
I'm somehow convinced that the mini is just the first "shoe" in the "year of HD" from Apple and other players (Sony?). With NAB just around the corner, I think Apple may have another rabbit to pull out of it's hat.
Originally posted by Aphelion
So what would make for a contemporary minimum architecture to decode a HD stream and deliver it to Mac mini class Macintosh for viewing?
I'm somehow convinced that the mini is just the first "shoe" in the "year of HD" from Apple and other players (Sony?). With NAB just around the corner, I think Apple may have another rabbit to pull out of it's hat.
There are numerous MPEG decode chipsets available. I think the mini's G4+9200 might be up to a 720p stream if carefully optimized, but don't have any hard data to back that up.
FWIW, I think you're right that Apple has something else coming. I noticed today that Roku says that Apple licensed them the iTunes DAAP stuff for their SoundBridge, but not their PhotoBridge. I dunno about you, but that makes the conspirancy-theorist / rumor-monger in me go "Hmmm....".