aaronspink said:
Your argument seems to be working a little something like this:
You: SPUs are no good because they aren't real processors.
Us: What do you mean they're not real.
You: It needs other logic to operate. Er.. I invoke Turing! And use some big words I hope you wont understand!
Us: (ignoring the verbal slight of hand) What, you mean like every other chip in existence?
You: Er... no. I have decided on absolutely no evidence at all that this case is different, because otherwise I would have no argument.
Us: But any differences are just design choices, not inherent flaws.
You: This isn't true but I can't tell you why... besides, there are many things it can't do. Like: {list of badly defined examples}
Us: But it can do those things. It *is doing* those things. Right here, right now. Some of them are even in this manual you obviously haven't bothered reading.
You: Ahhhh... but it's doing those things using {mumble mumble} technology not {cough} technology like a real CPU would. So it's not a real CPU.
Us: That's just semantics!
You: {distracting insult}
Rinse, repeat...
You're almost implying that I could take an ordinary CPU out of its packaging, put it on my table and it'd be sitting there processing away on it's own like magic. Cell meanwhile needs all this extra stuff to help it, like electricity, and is therefore crippled beyond repair.
I'm not sure what your point is. All you're really saying is "Cell's architecture is different to other current designs and it does things in different ways". Which is kind of stating the blindingly obvious. You haven't managed to come up with anything an SPU can't do, except by using semantics to attempt to limit the definition of the task or method.
So what if an SPU *instruction* can't directly access memory, but instead has to have that memory copied locally first? The compiler could even hide that if it wanted to. Lots of CPUs have limited instruction sets that make the programmer/compiler jump through hoops to use efficiently. Lots of new architectures required programmers to do things differently in order to work efficiently. Otherwise we'd still all be using 8 bit values and doing floating point calculations in software.
So to summarise, Cell is not flawed, just different.