I think this ties in nicely to what im saying. I agree that yes, you can always make use of your extra cores and extra threads in some way, you would of course never rely on one single thread in a multithreaded architecture. However the point im making is that there may be one thread which cannot be further split out which is a bottleneck to the rest of the game. i.e. your only as fast as your slowest thread. Yes you can save time by running other less critical threads in parralell but if they arn;t heavy lifting threads then you may not gain much and you will still be constrained by your primary thread.
Chances are it'll be the vector math heavy processing that will require the most "heavy lifting".. Fortunately this tends to be the easiest area to parallelise..
Im not sure thats true. Yes we have seen Cell excel in some applications but none of them have been applicable to a realworld gaming scenario as far as im aware (again discounting graphics rendering which is not a CPU bottleneck in other systems). Cell seems to be very good at some scientific applications, especially those that require massive vector perofrmance or that fit into the LS but as a CPU for a games system I don't think we have seen much evidence of its superiority yet.
The benefits of Cell are as Shifty put it in the memory and bandwidth area. Even non-vector processing can be pushed through the chip in much greater volumes than was otherwise possible on conventional processors.. The trick is making your algorithms and computations Cell-friendly which is easier to do than many believe considering the scope for optimisation (even the smallest optimisations can give you massive gains over processing the same computational load on (and even optimised for) more conventional architectures)..
Simply put, Cell is a throughput monster and the question isn't "how can one take the computational load of a PS2 game and make it run faster on Cell?" but "how can one take a much greater computational load that was ever previously possible on a console game, using sophisticated processing subsystems (advanced animation) and data heavy computations (iterations of comptation over very large data sets), and set it up in a way that it maximises the throughput of the Cell?"..
This is the big question that will make the difference in showcasing the full capabilities of the system..
Any system or sub-system that is game-trivial (networking, IO, general game logic)
will not be a problem for the Cell any more than it has been for games developed in the past on the EE and its ancestors, and thus could never truely bottleneck the system enough to matter..
Thats not to say I don't expect to see any demonstrations but just that I don't think we have seen any yet. If its going to happen then I guess the areas where we will see it will be in AI and Physics beyond that which any other system is capable of. What else? Perhaps better Animation and more world activity?
We've seen plenty.. The WarHawk demonstration in GDC last year, the Edge demonstration this year.. Even some of the computer vision stuff that some of the guys i'm working with have been doing is pretty darn incredible to say the least..
If you haven't seen much then you haven't really been following all that well..
If Cell reaches peaks in any or all of those areas that is simply not possible on a modern dual core x86 then I would consider that compelling evidence. But then the question moves on to 4 and 8 core systems. How long before anything Cell can do game wise from a none rendering perspective can be done on a multicore x86?
Cell has already superceeded modern x86 dual-core CPUs in so many areas directly and indirectly related to games.. There are many processes even that allow Cell to outmatch 4 and 8 core system purely based on the scale factor of concurrently threads available.. The evidence is here and its compelling.. If your waiting for a game however that showcases dramatic sophisticated processing at the capacity that only the Cell could give then your in for a pretty long wait because we're only at the start of the learning curve.. But then again if you're looking for the same thing for a 4 core x86 CPU also then the same thing applies..
It's funny how some people seem to represent this attitude of impatience.. It's like "yeah we know Cell can be used to process thousands and thousands of rigid bodies in real time... and yes we know that Cell is capable of processing over 700+ independant animation systems in a scene concurrently.. and yes we know that Cell can process sophisticated computer vision algorithms whilst handling a multitude of other tasks on the go but that doesn't mean Cell is better than my AX264 until I see what it can do in a game..!!"
If you really don't have any idea of the potential Cell offers in terms of scope for games development then just sit tight and wait and see much more elaborate showcases of it..
Granted not every game will but when have we ever had a console where the technology is pushed to the limits from when you boot up the game to when the credits roll at the end..?
As they say "the proof is in the pudding" and the pudding is in the oven..