Isn't the PPE dual-threaded?
If he's being particularly clever here he might count 2+7=9, with the first two coming from the PPE.
Yeah sure, but would that stop you if you were trying to market something?Dual-Threaded doesn't mean Dual core... :smile: Personally i'm not even sure which "flavour" the PPE actually is... I seem to remember it's just dual-threaded and not a double core architecture.
Yeah sure, but would that stop you if you were trying to market something?
It's not even a lie, just a slight imprecision
With 1 additional SPE, it may mean that Sony has more room for its OS and supporting concurrent tasks. The end result may be more responsive interaction (in very specific areas only).
It may also mean slightly easier programming later since the developers have 1 more SPE to assign their tasks to. Or for embarrasingly parallel tasks on SPEs, close to 100% better performance.
For general applications and computation throughput, I doubt it would improve much since Cell is likely to be under-utilized (or we have hit other bottlenecks like what London Boy mentioned).
It would be a pretty strange program that gets 100% improvement from the addition of 1/6 more hardware resources.
It would probably mean someone was hobbling the chip on purpose.
If( #of.SPEs =6 wait.half.the.time())
else continue.with.what.you.were.doing.free.of.fake.penalty()
It's a contrived caseSorry for not being clear. 100% w.r.t. sequential execution by 1 SPU core. So assuming the algo scales linearly, 1 more SPU should fetch another 100% speedup.
I lay it out that way because I don't know how many SPUs a dev will use for a partciular task. And yes, the dev may have to code for it (i.e. know that he/she can take advantage of 1 more SPU).
It's a contrived case
If that piece of the program were critical, if the speedup was useful, it wouldn't be limited to a single SPE to begin with.
I'd like to believe that programmers are able to use an SPE for more than one thing.
Flushing and reloading the entire local store of an SPE to/from XDR takes something on the order of 20µs. You can easily do that once or twice per frame. You can use "half" an SPE or a third etc. There's not that hard granularity that could make a light-weight task consume an entire SPE. Thus IMO you should always be able to balance things out properly, according to the requirements of the application.
An extra SPE is just 14% more of the same. It doesn't open up any new possibilites.
It's a contrived case
If that piece of the program were critical, if the speedup was useful, it wouldn't be limited to a single SPE to begin with.
I'd like to believe that programmers are able to use an SPE for more than one thing.
Flushing and reloading the entire local store of an SPE to/from XDR takes something on the order of 20µs. You can easily do that once or twice per frame. You can use "half" an SPE or a third etc. There's not that hard granularity that could make a light-weight task consume an entire SPE. Thus IMO you should always be able to balance things out properly, according to the requirements of the application.
An extra SPE is just 14% more of the same. It doesn't open up any new possibilites.