Ik heb dit eerder al naar Dulle gestuurd, het is enorm versimpeld en bevat niet alle details (en sommige claims zullen ook niet 100% waar zijn, maar wel enigszins in de richting):
Lang verhaal incoming
Laten we beginnen:
Hieronder zien we een schematische weergave van de Cell processor.
Die ovale renbaan in het midden met de pijltjes is de bus. Eigenlijk is dit een soort buis (alleen een stuk complexer) waardoor we de data van plek naar plek versturen.
Dan zijn er de bruine vlakjes. Dit zijn eigenlijk de "poorten" naar de externe gedeeltes van het systeem, dus buiten de CPU. Zo zie je dat de I/O wordt gekoppeld en links het geheugen.
Nu komt het belangrijke deel. Met blauw omcirkeld zien we de PPE in de vorm van een PowerPC cpu. Dit is eigenlijk gewoon de traditionele CPU zoals we deze kennen. Deze doet alle control gerelateerde dingen etc. Daarnaast hebben we met rood omcirkeld 8 SPE's. Dit zijn eigenlijk een soort versimpelde CPU's die puur dingen berekenen en daar enorm veel sneller in zijn dan een normale CPU (dit principe wordt overigens ook ongeveer gebruikt op een videokaart, maar dat terzijde). Veel dingen in games, zoals graphics opbouwen, AI, etc. bestaan voor het grootste deel uit dingen berekenen. Laten die SPE's daar juist in gespecialeerd zijn. Zo kunnen we bijvoorbeeld de SPE linksboven inzetten voor de lighting, een andere voor AI, etc. Het is maar wat je wilt doen.
Computers werken zoals je weet met stroompjes. Er gaat ergens een hoog voltage doorheen of juist niets/laag voltage en dan gebeuren er dingen gebaseerd op hoe je het opbouwt. Binnen het systeem worden deze voltages gerepresenteerd met bits, enen en nullen (je vast wel bekend). Natuurlijk is het voor mensen heel moeilijk om in enen en nullen te praten, dus maken we voor elke processor een specifieke taal die je met die processor kunt spreken om dingen te doen.
Elke processorfamilie heeft een andere taal die hij begrijpt. Als je dus bijvoorbeeld een programma maakt en deze omzet naar de taal voor deze PowerPC, dan kan je het "bestand" met deze taal niet afspelen op bijvoorbeeld een Intel processor. Dit is dus ook gelijk een van de redenen waarom backwards compatibility niet mogelijk is tussen de next-gens en de current-gen. De spelletjes spreken in principe een andere taal dan dat de processor begrijpt.
Het "probleem" bij de Cell is echter dat de met blauw omcirkelde CPU een taal spreekt, bijvoorbeeld Chinees, maar dat de met rood omcirkelde SPE's juist weer een andere taal spreken, bijvoorbeeld Spaans. Dit betekent dat je de game/engine zo op moet bouwen dat hij voor bepaalde delen in het Chinees spreekt en voor de meeste (zware berekeningen) juist Spaans moet spreken. Dit is voor veel third party developers moeilijk.
Waarom?
Hieronder zien we een zelfde soort schema voor de Xenon processor van de 360:
Het hele plaatje moet eigenlijk de processor voorstellen. De bus en de connecties naar buiten die ik eerder heb genoemd zijn hier weggelaten. De cache laten we even buiten beschouwing. Wat dan overblijft is 3 keer dezelfde CPU naast elkaar. Ook dit is een PowerPC CPU zoals in de PS3 en deze spreekt dus Chinees. Deze processor heeft er alleen 3 van, in plaats van 1. Zoals ik eerder zei is deze CPU een stuk langzamer met zware berekeningen voor games dan de SPE's in de Cell. Het voordeel hier is echter dat al deze 3 onderdelen Chinees spreken. Je kunt je programma dus gewoon naar het Chinees vertalen voor alle onderdelen. Dit is dus en stuk makkelijker voor de ontwikkelaar.
Deze laatste architectuur, zoals dit wordt genoemd, wordt over het algemeen gebruikt. Dit is gelijk ook de uitleg van wat een multi-core processor is ten opzichte van een single-core die we vroeger hadden. De single-core van vroeger was in principe gewoon 1 van deze CPU's. Multi-cores zijn dus eigenlijk niets anders dan meerdere single-core processors op een processor geplakt die we met elkaar laten samenwerken.
Concluderend kunnen we dan zeggen dan het voor third-party developers makkelijker is om een game te maken voor de 360 processor of pc processor en deze dan later te porten naar de PS3. Omdat de hele krachtige Spaans sprekende SPE's dan eigenlijk niet (volledig) benut worden (wie gaat er nou extra tijd besteden aan het aanpassen van delen Chinees naar het Spaans, right? Tijd is geld!) betekent dit dat dit nadelig is voor de PS3 versie van de game. Dit in tegenstelling tot de first-party developers die zich puur op de PS3 richten. Die weten dat ze grote delen in het Spaans kunnen vertalen, zodat deze super krachtige SPE's heel veel werk kunnen doen en je dus awesome graphics krijgt zoals bij bijvoorbeeld Uncharted het geval is.
Kort gezegd: Voor gaming moet je veel berekenen. De opbouw van de Cell processor is enorm goed voor berekenen. In een algemene computer zijn er echter nog veel meer dingen belangrijk dan snel berekenen. Dus is een "normaal" type processor handiger. Daarnaast betekent dit dat je al je oude programma's en stuurprogramma's niet meer kunt draaien. Dat kost miljarden (zo niet biljarden) aan euro's over de gehele wereld.
Laatst bewerkt: 11 okt 2013