Inleiding: hoog tijd
Inleiding: hoog tijd
Microsoft bracht zijn eerste Xbox-console in 2001 uit, waarna de Xbox 360 in 2005 volgde. Concurrent Sony draait al langer mee en bracht een generatie eerder ook al een console uit; de eerste PlayStation stamt uit 1994, in 2000 volgde de PS2 en de PS3 kwam uit in 2006. Wie naar het aantal jaren tussen de generaties kijkt, merkt op dat het hoog tijd is voor een nieuwe generatie. Net op tijd voor de feestdagen komt zowel Microsoft als Sony met een nieuwe console, respectievelijk de Xbox One en de PlayStation 4. De PS4 is vanaf 29 november in Nederland te koop; op de Xbox One moeten we nog tot het voorjaar van 2014 wachten.
Zijn de nieuwe consoles de wachttijd van zeven en acht jaar waard?
We zullen beide consoles nog dit jaar uitgebreid reviewen, waarbij we zullen ingaan op de behuizing, de controller, de nieuwe features en natuurlijk de launch-line-up. Voordat het zover is duiken we in de geschiedenis en de ingewanden van de nieuwe consoles en hun voorgangers. We kijken naar de veranderingen in de hardware en wat dat betekent voor de prestaties, de games en de ontwikkelaars.
We moeten echter wel een slag om de arm houden; de hardware is (spoiler alert!) weliswaar bijna vergelijkbaar met die van een pc, maar de prestaties van een console laten zich nooit één-op-één vertalen van pc naar console. Desalniettemin zullen we zien welke fabrikant op papier de snelste console heeft en hoe die zich verhoudt tot een game-pc. Zijn de nieuwe consoles de wachttijd van zeven en acht jaar waard of zijn de hardwareverbeteringen van ondergeschikt belang?
/i/1384966467.jpeg?f=imagenormal)
Geschiedenis: derde en vierde generatie
Sony bracht al in 1994 zijn eerste gameconsole op de markt, in de vorm van de PlayStation. De cpu in die console bestond uit een risc-processor die op 33,87MHz draaide, aangevuld met een geometry transformation engine voor het berekenen van 3d-graphics en een motion decoder voor het afhandelen van fmv-video. De gpu werd primair ingezet voor het tekenen van 2d-graphics en ondersteunde resoluties tot 640x480 pixels. In totaal was er 3MB aan geheugen beschikbaar: 2MB voor de cpu en 1MB vram voor de gpu. Prestatiecijfers in flops zijn niet beschikbaar, alleen de cpu-cijfers in een meer generieke mips-notering zijn bekend en komen uit op ongeveer 176mips.
De PlayStation 3 betekende opnieuw een flinke stap voor de console
De in 2000 geïntroduceerde PS2 betekende een flinke stap voorwaarts, met zijn Emotion Engine, een processor met acht eenheden, waarvan één risc-cpu-core en twee gpu-cores. De processor draaide op 294MHz of 299MHz, was gekoppeld aan 32MB rdram en kon 6,2Gflops aan rekenkracht leveren. De gpu was op 147MHz geklokt en bevatte 4MB embedded dram. De meeste games werden op 480p gespeeld, maar een handvol, waaronder Gran Turismo 4, had een special hd-modus, die 1080i-output opleverde./i/1384966955.jpeg?f=imagenormal)
De PS3, die sinds 2006 wordt verkocht, betekende opnieuw een flinke stap voor de console. Sony ontwikkelde samen met Toshiba en IBM een nieuwe processor, die in verbinding staat met 256MB xdr-geheugen en wordt gecombineerd met een aparte gpu die door Nvidia wordt gemaakt en die over 256MB gddr3 beschikt. Processor en gpu zijn goed voor een gecombineerde rekenkracht van zo'n 400Gflops en er kwam ondersteuning voor 1080p-schermen.
De Xbox was op technisch vlak duidelijk gebaseerd op pc-hardware
Microsoft maakte een wat snellere ontwikkeling door. Het Amerikaanse bedrijf stapte met zijn Xbox gameconsole pas in 2001 in de markt. De Xbox was op technisch vlak duidelijk gebaseerd op pc-hardware. De console had een Intel Pentium III-cpu op 733MHz aan boord, gecombineerd met 64MB geheugen en een gpu van Nvidia, en draaide op een combinatie van Windows NT en XP. De meeste games draaiden in 480p, maar sommige ondersteunden ook 720p en een enkeling ondersteunde 1080i.
De Xbox 360 volgde in 2005 en voor het binnenwerk ging Microsoft ditmaal in zee met IBM, dat een tricore-cpu op PowerPC-basis maakt. De gpu is nog enigszins vergelijkbaar met een desktopcomponent en wordt gemaakt door ATI, inmiddels AMD. De 360 heeft 512MB gedeeld geheugen en ook nog eens 10MB edram op de gpu. Games van de 360 kunnen op 1080p gerenderd worden, dankzij een rekenkracht van ruim 350Gflops.
/i/1384967316.jpeg?f=imagenormal)
Dat brengt ons tot de nieuwste gameconsoles: de achtste generatie, maar voor Microsoft en Sony respectievelijk de derde en vierde generatie. Wat hebben beide fabrikanten veranderd in hun consoles?
Sony's PlayStation 4
Toen de PlayStation 3 in 2006 werd uitgebracht, had de console een voor pc-gamers volledig onbekende processorarchitectuur aan boord met een losse gpu. De cpu is gebaseerd op IBM's Cell-architectuur, die beschikt over Power Architecture-cores, zoals bekend van oudere Apple-systemen. De enkele Power Processing Element-core wordt gecombineerd met zes synergistic processing elements, die vooral vectorberekeningen en multimedia voor hun rekening nemen. Een extra spe-core is gereserveerd voor het besturingssysteem en de beveiliging. De gpu is wat traditioneler gemaakt, met een G70-gpu van Nvidia als basis, samen met 256MB gddr3-geheugen.
De nieuwe console van Sony heeft een iets traditionelere aanpak gekregen, waarbij de hardware een stuk dichter tegen die van pc's aanschuurt. De kern van de PS4 is een accellerated processing unit die, net als de processor in de Xbox One, door AMD wordt gemaakt en gebaseerd is op de x86-architectuur. De apu van de PlayStation 4 bestaat uit een custom system on a chip, die gebaseerd is op de nieuwste generatie hardware.
Specificaties | PlayStation 4 |
Processorarchitectuur |
AMD Jaguar 28nm |
Cores en kloksnelheid |
8x 1,6GHz |
Gpu-cores (streamprocessors) |
1152 |
Gpu-kloksnelheid |
800MHz |
Gcn-geometry engines |
2 |
Gcn-rops |
32 |
Gpu-rekenkracht |
1,84Tflops |
Geheugen |
8GB gddr5 |
Geheugenkloksnelheid |
5500MHz |
Geheugenbus |
256bit |
Geheugenbandbreedte |
176GB/s |
De processorcores van de PS4-soc zijn opgebouwd uit Jaguar-modules. Die modules zijn een doorontwikkeling van de Bobcat-cores, die voor zuinige laptops werden ontwikkeld. De soc heeft twee Jaguar-modules, ieder met vier cores, aan boord voor een totaal van acht cores. De twee modules hebben ieder beschikking over 2MB L2-cache, 4MB in totaal dus.
De apu heeft ook 18 compute units die uit graphics core next-cores bestaan. We kennen die van AMD's videokaarten van de laatste twee jaar. Het aantal streamprocessors zou daarmee op 1152 stuks komen, wat met een kloksnelheid van 800MHz goed zou zijn voor 1,84Tflops. Daarmee zit de gpu op het niveau van een AMD Radeon HD 7850 tot 7870. De gnc-architectuur werd echter wat gewijzigd. Zo spreekt de gpu in het kader van AMD's huma-techniek het werkgeheugen direct, zonder tussenkomst van de L1- en L2-caches, aan over een 256bit brede bus.
/i/1385024712.gif?f=imagenormal)
De apu beschikt, gecombineerd voor zowel de cpu- als gpu-cores, over 8GB gddr5-geheugen, verdeeld over acht chips op de bovenkant van het pcb en evenveel chips aan de onderkant. Dat geheugen kan gelijkwaardig door de cpu en gpu worden aangesproken, waardoor het totale rekenvermogen van de processor beter benut kan worden. De bandbreedte van het geheugen bedraagt 176GB/s en de kloksnelheid is 5500MHz.
Naast de apu bevat het pcb van de PS4 een chip voor netwerkconnectiviteit, die de PS4 in een energiezuinige slaapstand 'always connected' houdt. De ingebouwde bluetooth-ontvanger heeft een losse antenne; de wifi-module maakt gebruik van printspoortjes op het pcb als antenne.
Microsofts Xbox One
Microsoft heeft voor zijn Xbox One grotendeels hetzelfde pad bewandeld als concurrent Sony. De Xbox One heeft net als de PS4 een custom apu van AMD aan boord. Vergeleken met de Xbox 360 is de One veel meer naar de pc opgeschoven. De 360 heeft net als de PS3 een cpu die op de PowerPC-architectuur is gebaseerd. De drie door IBM geproduceerde cores ondersteunen hyperthreading en worden bijgestaan door een Xenos-gpu die door ATI wordt gemaakt. De Xenos wordt op 500MHz geklokt en is vergelijkbaar met de Radeon HD 2000-serie.
Specificaties | Xbox One |
Processorarchitectuur |
AMD Jaguar 28nm |
Cores en kloksnelheid |
8x 1,75GHz |
Gpu-cores (streamprocessors) |
768 |
Gpu-kloksnelheid |
853MHz |
Gcn-geometry engines |
2 |
Gcn-rops |
16 |
Gpu-rekenkracht |
1,31Tflops |
Embedded geheugen |
32MB esram |
Geheugenkloksnelheid |
2133MHz |
Geheugenbus |
256bit |
Geheugenbandbreedte |
68,3GB/s |
Geheugen |
8GB ddr3 |
Geheugenkloksnelheid |
2133MHz |
Geheugenbus |
256bit |
Geheugenbandbreedte |
68,3GB/s |
De Xbox One heeft, net als de PS4, een semi-custom-soc van AMD aan boord, die bestaat uit Jaguar-modules en een gcn-gpu. De Jaguar-modules zijn vergelijkbaar met die in de PS4. Twee quadcore-modules vormen het cpu-deel, maar Microsoft heeft ervoor gekozen de cores net wat sneller te klokken dan die in de PS4. De Xbox One-cores klokken op 1,75GHz, tegenover 1,6GHz voor die in de PS4. Dat levert iets meer cpu-vermogen op, maar in grote lijnen zijn de Xbox One en PS4 wat dit betreft vrijwel gelijk.
Dat geldt niet voor de gpu. Hoewel ook Microsoft van AMD's gcn-cores gebruikmaakt, zitten in de apu van de Xbox One 'slechts' 12 compute-units, goed voor 768 streamprocessors. Dat zijn in de PS4 respectievelijk 18 en 1152 stuks, maar Microsoft klokt de gpu-cores met 853MHz iets hoger. De inzet van de helft van het aantal rops kan de One echter ernstiger benadelen, maar de hogere kloksnelheid vangt dat iets op.
/i/1385025803.png?f=imagenormal)
Microsoft compenseert zijn lagere aantal gpu-cores namelijk niet alleen door snellere cpu-cores, maar ook door een afwijkende geheugenconfiguratie. Waar de PS4 gebruikmaakt van 8GB op 5500MHz geklokt gddr5-geheugen met 176GB/s bandbreedte, wordt de 8GB gedeeld geheugen van de Xbox opgebouwd uit iets trager ddr3-geheugen dat op 2133MHz wordt geklokt. Dat geheugen is wat zuiniger, maar heeft slechts 68,26GB/s aan bandbreedte. Dat wordt echter, net als bij de Xbox 360, gecompenseerd door een stukje heel snel geheugen dat op de processor is geïntegreerd.
Dat embedded sram of esram, bij de One 32MB groot, heeft niet alleen een totale bandbreedte van effectief 204GB/s, maar ook lagere latencies dan het ddr3-geheugen. Het optimaal benutten van de combinatie van esram en ddr3-geheugen legt echter wel wat meer druk op ontwikkelaars, maar die zouden dat gewend moeten zijn van de Xbox 360; die heeft immers ook 10MB edram aan boord.
De grootste verschillen: geheugen en gpu
De specificaties van de PS4 en Xbox One zijn grotendeels gelijk, zoals uit de voorgaande twee pagina's blijkt. Toch zijn er cruciale verschillen tussen de twee consoles. Hoe die precies de prestaties beïnvloeden, zal de toekomst leren, als ontwikkelaars enigszins gewend zijn aan de consoles.
Voor beide consoles geldt dat ze veel meer grafisch detail op de schermen kunnen krijgen dan de vorige generatie, dankzij de vervier- of vervijfvoudigde rekenkracht. Vooral de sterk verbeterde gpu's met enorme geheugenbandbreedte moeten hogere resoluties, high-res-textures en geavanceerde effecten als belichting en deeltjes mogelijk maken.
De sterk verbeterde gpu's moeten hogere resoluties mogelijk maken
Een van de grootste verschillen is het gebruikte systeemgeheugen. In de PS4 is dat gddr5, terwijl in de Xbox One ddr3 gebruikt wordt. Gddr5 heeft een stuk meer bandbreedte dan ddr3, zoals uit de cijfers blijkt; de PS4 beschikt over 176GB/s bandbreedte, terwijl het ddr3 van de Xbox One 68,26GB/s levert. Daarmee is de vergelijking echter niet compleet. Ddr3 heeft namelijk ook een lagere latency dan gddr5, wat deels weer gecompenseerd wordt door een hogere kloksnelheid.

Iets waarmee de Xbox One wel een groot voordeel heeft, is het embedded sram. Dat geheugen is samen met de apu op de chip geplaatst, waardoor het bijzonder snel met de apu kan communiceren. De opgegeven bandbreedte van het esram bedraagt 204GB/s, veel sneller dan het ddr3 en ook sneller dan het gddr5 dus. Dat geheugen combineert hoge bandbreedte met lage latencies, waardoor het enorm snel data met de gpu kan uitwisselen. Het esram kan gebruikt worden voor bufferdata als diepte-informatie, informatie over objecten en belichting. Ontwikkelaars zijn echter vrij om elke gewenste data, zoals textures, in het esram te bufferen. Daarmee hebben ze meer mogelijkheden dan bij de Xbox 360, waarin het dram alleen gebruikt kon worden voor z-buffers of render targets.
De 16rops van de Xbox lijken wat mager om een 1080p-beeld te genereren
De integratie van dat snelle esram op de die heeft tot gevolg dat de gpu in vergelijking met die van de PS4 over een derde minder compute units en over slechts de helft van de rops beschikt. Die laatste zijn verantwoordelijk voor het uitsturen van de gerenderde pixels en de cu's bevatten de streamprocessors. Het lagere aantal cu's en daardoor ook lagere aantal streamprocessors zal wellicht niet snel een beperkende factor vormen, maar de 16rops van de Xbox lijken wel wat mager om een 1080p-beeld te genereren. De hogere kloksnelheid van de Xbox-gpu kan dat niet helemaal opvangen.
Programmeren: kwestie van optimalisaties
De hardware is maar een deel van de vergelijking. Ontwikkelaars en programmeurs moeten de beschikbare rekenkracht ook weten te benutten. Hoewel de hardware van Xbox en PlayStation grotendeels gelijk is, wacht programmeurs een flinke uitdaging.
Ten eerste moeten ze wennen aan het programmeren voor x86. De vorige generatie was gebaseerd op de PowerPC-architectuur, die een andere isa heeft dan x86. Wat deze overgang makkelijker kan maken is het feit dat gameontwikkelaars die voor pc's programmeren de x86-architectuur al gewend zijn, waardoor code schrijven voor de nieuwe consoles wat eenvoudiger is.
/i/1385024621.jpeg?f=imagenormal)
Het optimaliseren van code voor de acht cores van de twee Jaguar-modules is wellicht wat moeilijker te realiseren. Het multithreaden van code is notoir lastig en was reden waarom veel pc-software niet optimaal gebruik kon maken van de overstap van singlecore- naar multicore-processors. Inmiddels is die expertise toegenomen, maar vooral Xbox-ontwikkelaars maken een flinke overstap van drie PPC-cores naar acht x86-cores. Bovendien moeten zij leren het esram optimaal te benutten.
Pas na maanden of jaren wordt het maximale uit consoles geperst
PlayStation-developers waren met de Cell-processor al gewend aan acht cores, hoewel dat natuurlijk ook PPC-cores in plaats van x86-cores waren en de spe's weer niet vergelijkbaar waren met een normale cpu-core. Een deel van de cores kan echter niet alleen voor de games gebruikt worden, maar ook om zaken als sensordata van Kinect of Camera te verwerken.
Een laatste horde in het optimaliseren voor Xbox of PlayStation is tijd. In eerste instantie moeten games nog op zowel de oude als de nieuwe generatie uitgebracht worden, wat voor veel games betekent dat echte nextgen-functies nog niet optimaal benut worden. Bovendien hebben consoles altijd een leercurve; pas na maanden of jaren wordt het maximale eruit geperst.
Tot slot
Enigszins opmerkelijk is dat de acht cpu-cores gezamenlijk minder ruwe rekenkracht lijken te hebben dan de cores van de vorige generatie. De Cell-processor van de PS3 en in iets mindere mate de Xenon/Xenos van de Xbox waren technische hoogstandjes, terwijl voor deze generatie een bescheidener opzet is gekozen. Desalniettemin moeten ze de rekencapaciteit leveren om zaken als physics en artificial intelligence te berekenen, en andere elementen als bewegingsdetectie voor hun rekening te nemen. Dat moet leiden tot realistische bewegingen en werelden.
Model | PS3 | PS4 | Xbox One | Xbox 360 |
Processor |
Cpu + gpu (90nm- 45nm) |
AMD apu (28nm) |
AMD apu (28nm) |
Xenon-cpu + Xenos-gpu (90-45nm) |
Cpu |
1 ppe @ 3,2GHz 7 spe-cores (PPC) |
8x 1,6GHz (x86, Jaguar) |
8x 1,75GHz (x86-Jaguar) |
3x @ 3,2GHz (PPC) |
Gpu |
Nvidia G70 @ 550MHz |
1152 sp's @ 800MHz (18 cu's)
|
768 sp's @ 853MHz (12 cu's) |
240 shaders @ 500MHz |
Geheugen |
256MB xdr dram @ 3,2GHz 256MB gddr3 @ 700MHz |
8GB gddr5 @ 5500MHz |
8GB ddr3 @ 2133MHz 32MB esram |
512MB gddr3 @ 700MHz 10MB edram @ 500MHz |
Geheugenbandbreedte |
22,4GB/s |
176GB/s |
68,26GB/s (ddr3) 204GB/s (esram) |
22,4GB/s (gdd3) 32GB/s (edram) |
Rekenkracht |
176Gflops (gpu) 230Gflops (cpu,sp) |
1,84Tflops (gpu) 102,4Gflops (cpu, sp) |
1,31Tflops (gpu) 112Gflops (cpu, sp) |
240Gflops (gpu) 115,2Gflops (cpu) |
Vergeleken met een desktop-pc hebben de consoles in theorie niet de beste papieren. De gpu is vergelijkbaar met een midrange-videokaart en de cpu is, hoewel van veel cores voorzien, eigenlijk bedoeld voor laptops en vrij laag geklokt. De samenwerking tussen cpu en gpu in AMD's apu is echter wel vooralsnog ongekend. Pas bij introductie van de Kaveri-apu's, in januari 2014, zal die techniek ook voor andere producten beschikbaar zijn. Bovendien is er bij consoles nauwelijks 'overhead' en kan veel dichter op de hardware geprogrammeerd worden. AMD zou deze techniek met zijn Mantle-project overigens ook naar de desktop brengen.
Wat uiteindelijk de 'betere' console is, zal niet aan de hardware liggen
Sony lijkt vooralsnog met zijn PS4 de iets krachtigere console te hebben of in ieder geval de console waarvan de hardware op dit moment het makkelijkst benut kan worden. Zo kan de PS4 dankzij zijn krachtigere gpu Battlefield 4 met 1600x900 pixels renderen, terwijl de Xbox One-versie blijft steken op een resolutie van 1280x720 pixels. Ook bij Call of Duty Ghosts weet de PS4 een hogere resolutie te realiseren. Dat zijn echter multiplatformgames, die niet specifiek voor de nieuwe consoles gemaakt zijn.
Wat uiteindelijk de 'betere' console is, die van Microsoft of die van Sony, zal niet zozeer aan de hardware liggen; die is daarvoor te zeer vergelijkbaar. De games en diensten die eromheen worden opgetuigd, moeten het verschil maken, waarbij vooral de gameontwikkelaars een belangrijke taak hebben. Uit welke console kunnen zij de beste beelden en belangrijker, uit welke console kunnen ze de beste gameplay persen?