Sony says: Cell can handle "branching" for AI better than the rest
When Sony introduced the new EDGE toolkit for developers, people began to listen in on the power of the PlayStation 3 and the Cell processor. While still difficult to program for, the toolkit is meant to alleviate some of the more confusing aspects of the new console. Sony also decided to sit down and chat with developers regarding the Cell and this new toolkit.A developer claimed that there was no way to get interaction between the different SPUs of the Cell. This heralded Sony to come in and teach a miniature lesson about what does and doesn't work with the Cell's SPUs. The interesting tidbit spoken about was branching AI on the Cell. We'll use a quote here so we don't mess up the interpretation: "Branching is a common technique...where a program randomly chooses a few samples from a larger set of options, and then tests each to see which is the best...Most developers have claimed that the SPUs would be absolutely terrible for branching. As Sony put it however, branching is absolutely terrible for ALL processors. In their experience, they said, it is less terrible for the SPUs however. In the upcoming game Heavenly Sword, they said that moving the branching AI off of the Power Processor Unit (PPU) increased the performance of that particular process. In other words, the same branching ran better on the SPUs."
Since Sony has had success creating AI superior to that available on other consoles relying on different setups (triple-core PPC, etc), they've included ways for developers to have similar success with the EDGE kit. One more thing, too, was added into EDGE: "Sony said that much of their success with the Cell has come from the development of a tool they call the SPURS Kernel, a small program which sits on each SPU and enables it to better perform the tasks that programmers use it for. This SPURS Kernel was included in the EDGE suite of tools."
So what do you guys think? With this stuff, will more developers give the PS3 a more interested look? We really believe that saying all this stuff is good and all, but developers and consumers alike will need something tangible to prove these claims. Heavenly Sword was cited as an example of success regarding SPU AI branching... so, let's see it! We need something solid instead of words, as much as we'd love to take your word on this, Sony.









Reader Comments (Page 1 of 1)
Stef Geiger @ Mar 9th 2007 1:07PM
I think this is definitely good news - Sony recognized the bashing their hardware was receiving and decided to do something about it, and not merely just say "nuh-un!". Actually sitting developers down and saying "Look! Here's how you write code for the Cell." is a big step in the right direction. When the PS2 was all new and fresh, developers were saying the exact same things about it, and then later generation games like God of War and MGS were pretty much on par with Xbox quality graphics, which is worth noting as the xbox was significantly more powerful.
Side note: Isn't Heavenly Sword basically a God of War-type title? Seems like a terrible example to use for the purposes of demonstrating AI... behaviours can't really be any more complicated than "rush player now" and "strike player now"...
Bored @ Mar 9th 2007 1:11PM
"demonstrating AI... behaviours can't really be any more complicated than "rush player now" and "strike player now"..."
When you're fighting an entire army of thousands of enemies, as some videos suggest, the parallel processing could be heavy enough.
Virtua Fanboy @ Mar 9th 2007 1:22PM
Huh uh...some guy I don't know said that it couldn't be done better than on 360. /sarcasm
Just thought that I would get that out before the real idiots started saying it for real.
Anybody w/2 brain cells knows that Sony is the king of smoke and mirrors and that they're not trustworthy, but this is definately a step in the right direction. Good for them.
Stef Geiger @ Mar 9th 2007 1:46PM
I think you'd have to get into armies of literally THOUSANDS before being able to actually tax any processor with such simple routines. Say what you will, I really doubt Heavenly Sword will feature enemy numbers even in the hundreds.
wiibouy101uk @ Mar 9th 2007 2:11PM
i dont a inline dsp stripped down processor has the deep branching of a true out of order exacution unit in a real cpu
fact 1 ppe is inferier to ppc cpus by ibm
fact 2 inline processors are weaker and harder to programme than out of order exacution units
fact 3 basic dsp threads are weak and hard to code
fact 4 cell dea
ls with why more work load than broadway as ps3 has to deal with 1080p and cpu based sound engines wii has no true hd and a dedicated sound processor
fact 5 braodway is a true out of order deep branching deep regestors true desk top cpu with gamecentric and media optermizations
fact 6 both 360s and ps3s cpus aret accually trying to be great cpus there weak low end ppe cores by ibm with the clock spedsramped up so hd and sound processing can all be done INEFFICANTLY I MAY ADD on one cpu
no im not saying that braodway magicly is more powerfull than cell what im saying HONESTLY not fanboyingly is that broadway is far more powerfull and a lot closer top cell than your being told
THINK ABOUT IT NO HD NO SOUND PROCESSING BUT LOADS OF REGESTERS AND BRANCH PREDICTION I.E PERFECT FOR A.I PHYSICS AND GAMEING CODE
CEL IS A MIXTURE OF DSPS=CRAP AND A BASIC VERSION OF A PPC CORE WITCH IS INFACT A WEAK PPE CORE
IN TERMS OF GENERAL CPU WORK BRANCH PREDICTION MULTI TASKING AND TRUE CPU OUT OF ORDER EXACUTION BROADWAY CLEARLY KILLS CELL CLOCK FOR CLOCK ADD THE SOUND PROCESSOR AND AMASING EFICANCIE PRESTO LOADS OF GAMING HOUSE POWER
REMEMBER CELL IS INEFFICANT AND HARD TO PROGRAMME IT ALLSO HAS ALL THE CRAP BACKGROUND SHIT IT HAS TO PROCES
SOUND ENGINES PS3 OPERATING SYSTEM HD RENDERING BEFORE WI EVEN START WITH A.I PHYSICS ETC
THE CELL HAS MANY THREADS YES BUT THERE BASIC AND INEFICANT AND YOU LOOSE 3/4 OF THEM ON OP SYSTEM AND SOUND WORK SO THERE USLESS FOR ANYTHING ELSE
NO ONE CAN TRY AND BRAINWASH MII TO BELIEVE A DSP INLINE NUMBER CRUNCHER IN TERMS OF DESIGN AND PER CLOCK PERFORMANCE CAN COME CLOSE TO BROADWAY OR ANY MODDEN DAY TRUE CPU
its just not commonsence to try and say it is
ITS A LIE
P.S UBISOFT ALREADY CONFIRMED THE COMPLEAT OPERSITE CELL IS NOT SUITED TO A.I ETC SO WHOS LYING
Frosty @ Mar 9th 2007 2:16PM
*bewildered*
James @ Mar 9th 2007 2:35PM
wiibouy101uk - I tried to read your comment but realized you're a moron. No way, no how can anyone serious about low level software development argue that a single processor is faster than multiple processors in doing the same amount of work. That's why we don't have the P4 anymore, we have the Core 2 Duo.
As for branching, I can say that AI is never an "easy" operation. Telling a monster to attack someone is easy, but calculating the pathfinding is insanely difficult, particularly with A* or in some cases, memory-bound A*. Branching would definitely be sped up by adding more cores to handle the work, there's no doubt about it. Even if you're playing a simple Connect 4 game with a Min-Max algorithm, the computation for 4 steps into the future is very difficult. I would be able to believe that multiple cores available for AI processing would increase performance of the algorithm, if done properly.
shase @ Mar 9th 2007 2:18PM
@5
Fact 1 : we are seeing amazing games coming out and upcoming for PS3.
Fact 2: Gamers dont care how "it gets done" as long as "it gets done".
Fact 3: You may be a "genius" for pointing out all these things BUT i think the hundreds of people who made the damn thing are probably smarter than you (thats what they get paid for figuring this out).
Fact 4: Individual developers comments dont count... and just because they cant do it doesnt mean others cant -its just that they need better programmers.
mike @ Mar 9th 2007 2:58PM
mass effect/bioshock look amazing on the xbox360... heavenly sword and motorstorm look amazing on the ps3...get what im saying nobody cares graphics are great anyway on either system
The main waste of processing power is inefficient coding or difficult to code programs this is much more important than any chip being 5% better at logic branching or some other feature
Stef Geiger @ Mar 9th 2007 3:04PM
I'm sorry, but wiibouy101uk could tell me that the sky is blue and I'd still call him a moron. It boggles my mind that people (fanboys, really) can get SO passionate about an issue they don't ACTUALLY know that much about, and type up an essay on it that's so full of typos and grammatical errors that it's a wonder anyone can decode the meaning, let alone feel the author deserves any credit. If you give a sh*t, proofread. If you are proofreading, and you still generate garbage that would be shameful for a second grader to write, then please go post your dribble elsewhere, lest you sap our intelligence.
wiiboy101uk @ Mar 9th 2007 3:07PM
a facts a fact im not here to argue i deal in fact only aruing invovles opinions im above such weak thinking i deal in fact iv posted a list of said facts lets leave it at that..............
all 3 wil have great graphics
but only wii offers the true next level gaming experiance and gameplay THATS A FACT
and only wii can load data sop fast and stream textures so fast it can accually remove the treded loading screen
thats more than i can say of slow loading ps3
nintendo have set the balace of the system wii perfectly
ps3s more about hype and image and marketing its not about great games
out dated poor controls is infact against gaming not for it
and so are long loadtimes loadtimes and dated gameplay is a thing of the past not the future sony got it all wrong with ps3 THATS A FACT
who in there right mind wants to bash a dualshock and wait for games to load
i dont i want to play them in new and exciting ways
like i said a fact is a fact
sony fanboys mear opinion meens nothing to mii
Stef Geiger @ Mar 9th 2007 3:48PM
Ugh, wiibouy101uk, it's people like you that give videogamers and fanboys a bad name. Most of us are actually capable of spelling and organizing our thoughts into coherent arguments. You aren't. That's sad.
Burnt Meatloaf @ Mar 9th 2007 3:57PM
I want to see some real-world results, first. We've all seen lots of graphics, but not [practical] computational results.
Still, it's worth nothing that people are always wary of new technology. It doesn't work the traditional way, early results don't live up to expectations, and people jump to conclusions. If Sony can satifactorily show that a lack of performance is caused by bad technique, and updated toolkits will help the problem, that's great news.
Release a random AI demo, or even better, an old-school 64K demo. Show us how much power you can pack into a small amount of code and how well the architecture scales. That's what counts when making the dynamic content promised for next-gen systems.
stockstar1138 @ Mar 9th 2007 4:07PM
Wiiboi101uk or whatever it is. Have you ever played a PS3? If you had you would know the load times are not long at all. My guess is you live in the UK and have never even seen a PS3 in real life
Tyler @ Mar 9th 2007 4:11PM
Please, someone unplug wiiboy101uk from the interwebs.. He's lost his privledges
Mr Khan @ Mar 9th 2007 5:12PM
Wiiboy101uk is an embarrassment to my kind, that's for damn sure
And i suppose this statement is true, PS3's CPU is an absolute beast compared to the other guys', the only reason 360 is percieved to be better is the fact that its architecture is more nimble(due to the fact that CELL was meant to work with other CELL processors, the GPU holds it back, CELL must do the GPU's work for it, pretty much), and Wii's architecture more nimble than that (out-of-order processing, independent commands)
The three actually all have thier own advantages when it comes to AI programming
ck @ Mar 9th 2007 5:47PM
Wiiboy101uk : "and so are long loadtimes loadtimes and dated gameplay is a thing of the past not the future sony got it all wrong with ps3 THATS A FACT"
There's so much wrong with that statement and the rest of your post that I'm not going to address, but let me just say: that's not a FACT, it's an OPINION.
Now shut up and go elsewhere please.
ck @ Mar 9th 2007 5:51PM
Mr Khan: "...due to the fact that CELL was meant to work with other CELL processors..."
Yeah, what's the story there? Back when the PS3 was originally slated to have 3 GigE interfaces and Sony claimed GigE was fast enough to chain cell processors I could see a whole lot of potential there. Perhaps they'll go back down that road when they've got the PS3 unit price down?
ConteZero @ Mar 9th 2007 7:55PM
OoOE: Out of Order Execution.
An early prefetch unit try to change the execution order of every instruction to better fit in a multiple pipeline environment (this lead up to 2X the speed when dealing with poorly optimized code).
Neither CELL or Xenon have an OoOE unit, this is because that unit have a cost (in die size) and because the advantages are questionable (you can get the same speed improvements with a compile time instruction reorder and you'll get smaller pipelines for free).
Without OoOE instructions are exectued as they are fetched, so if the compiler was smart enough there's no penality in taking the OoOE unit away.
As for SPE units, they are designed by IBM, so IBM probably knows better than us if they are better than PPC or not, in fact a CELL is a PPC with multiple SPE's.
As for me PPC units are processor expecially designed for general purpose, multitasking environments (for this reason they are equipped with large caches, task switching facilities and so on) like x86 from the 80286 onward; on the other side SPE are batch processors, they are programmed once for a task, like 8086 (and others, when you use them in real mode under DOS), they lack multitasking but are quite fast in performing repetitive tasks (...and not only number crunching).
About sound I can tell that Xenon or CELL can use one unit for audio, this means a lot more raw power than any DSP audio chip out there (excepitons are Live!/Audigy/X-Fi, that are audio-bound CPUs) and this also means that they can add effects, environments and audio infrastructures on the fly.
At last: When dealing with really unoptimized code an OoOE CPU can get double the performance of a non-OoOE CPU (you call it "linear"), since both "Broadway" and CELL (and Xenon) use the same ISA and internals (both come from IBM) you can say that at best "Broadway" perform "up to" a 1,6GHz CELL without SPE's, that's half the actual CELL speed.
(for common knowledge, it's safe to use a x2 multiplier because what really change between executing "linear" instead of "rearranged" is that you, in the wrost case scenario, use only one pipeline instead of two, so "Broadway" at best can do x2 operations per second)
ConteZero @ Mar 9th 2007 8:13PM
About the last comment I can say that being bound to 480p doesn't necessary make any console "Next gen".
Wii has probably better performance when reading/writing from a disc, BD is know as slow (right now, that is, it's a young format) but the whole comment is crap.
Wii has less than half (less than a quarter ?) the RAM a PS3/XBox360 have, so filling memory (with textures, environment data, code snippets and such) of course require less time, it requires less data to begin with!
This isn't really a point; if the reader is slow PS3/XBox360 can buffer data in memory, avoid butterfly reads packing files in a smarter way or, more easily, using a "swap" on a hard drive (you know, the thing Wii is lacking by default).
Come on, this means nothing, everything depends on programmers, SDK and money spent in research.
The only think you're missing is that Wii is a dead end, it will be discontinued in three years, when building an expensive "next gen" console will be cheaper, right now Wii is just a vessel to carry Nintendo into NG without losing money.
matjet @ Mar 9th 2007 9:14PM
Hasn't everyone figured out that wiiboy101uk is just messing with you? Your all taking him too seriously. It is a mere prank.
I would expect the deliberate lack of spelling would give it away.
Laurens Holst @ Mar 10th 2007 3:42AM
Quote Stef Geiger: "Side note: Isn't Heavenly Sword basically a God of War-type title? Seems like a terrible example to use for the purposes of demonstrating AI... behaviours can't really be any more complicated than "rush player now" and "strike player now"..."
If you take a look at the This is Living clip about Heavenly Sword cinematics stuff ( http://www.ps3.eu/flash/mediapool/ps3stories_cinematic_production/ps3stories_cinematic_production_en.mov ), there is some ingame footage in the beginning where you can see that e.g. the guy crawls away when the girl hits him... also how all the other enemies keep a tight circle formation around her... later on, too, at about two-thirds... stuff like that looks pretty impressive, and I think is a good show of advanced AI.
~Grauw
John @ Mar 10th 2007 10:10AM
I remember when certain developers were saying that the ps3 couldn't do this or that thing... it was obvious that the developers meant it couldn't with the tools that they had. And as someone already pointed out, this happened with the original ps2. Even developers don't always know the intricacies of a system, and as someone else pointed out there is often a lot of resistance to coding in new ways. Original ps2 games were programmed like a computer, didn't use the extra chips, and didn't take advantage of the 128-bit-wide data path. As also pointed out, now GOW and others (Final Fantasy XII, Midnight Club DUB, GT4) take advantage of these on a processor running at less than half the speed of the xbox. Sony future-proofed ps3 just like they did ps2 (as ps2 sales obviously show).
This is just one more in a bunch of information coming out now despite all the misinformation originally broadcast regarding the ps3 and cell.
So we're seeing all these refutations now that fly in the face of ignorant assumptions that were broadcast as 'fact' way before the ps3's release and after, by various outlets. And this is not just basic programming stuff like above, this includes Sony addressing the Home situation, and so on.
Haters must be having a hard time these days, with fridges stocked full of humble pie that they can't gulp down fast enough.
stirlo @ Mar 10th 2007 11:43PM
dear Wiibouy101uk...
I truly hope that english is your Second language, as it would be extremely depressing to see the United Kingdom's education system fail so badly.
-if- english is your second language, not a bad effort, but you need to brush up your spelling and grammar. Or even just use Google translator, even at its worst we could probably understand what you are trying to convey.
Burnt Meatloaf @ Mar 11th 2007 3:28AM
*ConteZero: "Without OoOE instructions are exectued as they are fetched, so if the compiler was smart enough there's no penality in taking the OoOE unit away."
Pretty much. OoOE was designed primarily for PCs, where code is very unpredictable (and generally sloppy), and you may run on multiple generations of processors from different manufacturers. Embedded hardware doesn't use this technique, because the code is properly optimized for one specific architecture.
Also, OoOE works well with general processing. With vector processing (the Cell's SPEs), the benefits are virtually non-existant. That's why the SPEs don't do branch prediction, but the PPE does.