"Ik bén namelijk gamedeveloper, en met name bezig met graphics (ben momenteel onze renderer aan het implementeren voor de Xbox360)."
hehe, niet gezien.. erg cool!!.,
"Voorbeeldje: Tomb Raider: Legend. ruwweg 550.000 regels code (gamelogic scripts niet eens meegeteld!). Render-code: ruwweg 50.000 regels code (alle platforms bij elkaar opgeteld)."
Dat zegt geen bal.
je kan 1 regel code hebben die constant wordt uitgevoerd en je kan miljarden regels code hebben waarvan er soms 1 wordt uitgevoerd.
De hoeveelheid code zegt dus helemaal niets over hoevaak de code wordt uitgevoerd (en dus hoeveel resources het van een systeem opeist).
Sterker nog, code die je vaak herhaaldelijk moet draaien (om wat voor reden dan ook) moet juist efficienter zijn en daardoor dus vaak kleiner!!!
Dat moet jij toch ook weten????
"De daadwerkelijke rendering niet nee, maar dat neemt de GPU voor z'n rekening, dus ook daar heb je geen cell voor nodig. En natuurlijk zijn er wel bepaalde processen te optimaliseren voor een cell architectuur (physics, culling, sound processing, video decoding), maar het overgrote deel van een game is gewoon algemene logic en daar heb je niets aan een cell cpu."
Je zegt het zelf al een beetje, dingen als physics en culling kun je heel goed op een cell doen. Maar ook complexere animatiesystemen en procedurele animatie/object/texture generatie behoort tot de mogelijkheden.
En dat zijn best wel coole dingen die nog maar mondjesmaat in spellen gebruikt worden.
De cell neemt een deel van het 'coole' werk uit handen van de ppc core die zich dan weer meer kan richten op algemene zaken.
Als je dat bv vergelijkt met een pentium architectuur dan krijg je te maken met allerlei zaken als diepe branch prediction en straf cycli voor het omschakelen van alu's etc. Is dus niet echt parallel.
In de cell kun je (dankzij de vette interne bus) een pipeline configureren met de spu's.
De ppc core voorziet een aantal (of alle) spu's van code en hoeft vervolgens alleen de 1e te voorzien van data. De spu's crunchen de data stuk voor stuk, telkens het resultaat doorgevend aan de vogende in de pipe.
De laatste in de rij geeft het uiteindelijke resultaat weer aan de ppc core.
De snelheid van de interne bus is zo gekozen dat alle spu's hun data kwijt kunnen aan andere spu's in dezelfde tijd als dat de ppc de data kan invoeren!. Dit betekent geen bottleneck in deze configuratie. De ppc core kan zich bezig houden met data swappen met het hoofdgeheugen etc, etc, etc.
"Het is niet voor niets dat de PS3 developers niet echt blij zijn met de gekozen weg van Sony."
Nee, natuurlijk zijn er mensen die het niet leuk vinden om nieuwe dingen te leren. Tuurlijk moet het 'game concept' opnieuw worden uitgevonden voor dit platform.
Maar dat is een kwestie van tijd.
Dit soort gemekker hoor je altijd bij nieuwe platforms.
Je moest eens weten hoe mensen zaten te zeiken toen MMX werdt geintroduceerd in de Pentium!
Je haalt btw Cell en SPE door elkaar.
Lees de docu nog eens goed door

En SPE's hebben 256k local store, niet 128
Het klopt ook dat de spe's een andere compiler nodig hebben dan de ppc core. Dat is niet meer dan logisch aangezien het vrij onafhankelijke, specialistiche processors zijn die dus anders werken dan de ppc core.
Omdat we nog in een vroeg stadium zijn zijn de compilers nog losse tools. Later zal dit integreren en hebben de devs niets meer om over te huilen.
"Ook het aansturen is vervelend, dma's programmeren zodat het geheugen bij de cells terecht komt, de cells hun werk laten doen, synchroniseren zodat je weer verder kunt gaan met de verwerkte data, etc."
1 woord: compiler
Op dit moment vereist het proggen voor de cell vrij veel inzich en (handgeschreven) code om de zaak te reguleren. Dit zal veranderen als de compilers en libraries volwassener worden. Dit is normaal.
"Wat dat betreft worden ze blijer van microsoft's keuze: gewoon meerdere generieke cores waar je gewoon alles mee kan. "
Ja, natuurlijk, want dat maakt het developen goedkoper omdat je cheap je expertise kan inkopen.
Ook zijn de devtools van microsoft natuurlijk beter.
Maar je zit dan nog steeds met ongeveer dezelfde verhoudingen aan resources.
De cell is echter veel meer media ge/skewed/ en zal dus een ander pallet aan resources bieden die dus op een andere manier moeten worden ingezet.
Even terugkomen op Legends
Ik kan de nieuwe tomb raider prima draaien op mn p4 2.8 MAAR ik mag niet in next gen mode spelen want mijn videokaart is niet krachtig genoeg. (terwijl die meer data weet te verslinden dan mn cpu)
Moderne spellen hebben dus JUIST een behoefte aan bruute rekenkracht.
De cell architectuur biedt deze.