9. 10. 2019

Graphics Synthesizer Cube versus PlayStation 5


Alias GScube - premiéra v roku 2000. Pokus SONY o prienik medzi grafické stanice SGI. Po veľkých investíciách, spolu s Toshibou, chceli z toho HW vyťažiť niečo viac ako len hernú konzolu. Podobne ambiciózny nápad mal Kutaragi aj s CELL CPU. Obe plány zlyhali a Kutaragi odišiel s hanbou do dôchodku. Na Siggraphe 2000 teda s GScube predstavili zopár demátok bežiacich v reálnom čase vo fullHD rozlíšení na 60fps ako tvrdí dobový tisk. Ken ešte stihol prisľúbiť 64 jadrovú verziu, namiesto predstavenej 16 jadrovej ale nič z toho nakoniec nebolo a do roka bol celý projekt zrušený. Už dlho čakám, kedy túto beštiu výkonnostne predbehneme na domácej SONY konzole a na jednom čipe. Základnú 16 jadrovú, alebo presnejšie 16 serverových blades už dokáže aplikačne poraziť PS4 /ehm PRO/, na tú 64 jadrovú ale potrebujeme PS5. Museli sme si teda počkať celých 20 rokov !!


Siggraph v lete roku 2000 - predstavenie GScube /Matrix, Antz, Final Fantasy demá/

"With the feedback from the demonstration at Siggraph, we realized that the present [16-processor] prototype did not have enough performance for 3-D graphics creation and realistic rendering in real-time," said Ken Kutaragi, president of Sony Computer Entertainment. "We are planning to introduce a system with about 64 parallel-processing units next year."

Centrálna procesorová jednotka. Originálna GScube to je 16 × Emotion Engine CPU, 64 bitová RISC MIPS 5900ka na 295 MHz s FPU a inštrukciami podobnými tým MMX na starom pentiu. Klasická SGI pracovná stanica O2 s R5000 na 250Mhz mala celočíselný výkon asi ako Pentium MMX 233Mhz. GScube si teda predstavte ako to 16 jadrové pentium na 250Mhz alebo aritmeticky 8 jadrové na 500 Mhz. GScube64 zas ako 8 jadier na 2Ghz.

PS5 s 8 jadrovým Ryzen AMD CPU s 16 HW vláknami na pravdepodobne 3200Mhz ju pochopiteľne úplne zdemoluje a nebude za to vďačiť len vysokej pracovnej frekvencii ale aj omnoho väčším keškám a lepším prediktorom skokov vetvenia, početnejším registrom a stovkám ďalších vylepšení. Aj na umelo zníženom a rovnakom takte ako GScube bude PS5 CPU per hertz výrazne rýchlejšie.

Floating Point Performance pri GScube sa ráta ako súčet výkonu FPU v hlavnom CPU plus 2 x krát vektor jednotka na 150Mhz sa rovná 6.2 GFLOPs v najideálnejších možných podmienkach. PS2 vývojári udávajú, že v praxi sa dosahovalo 60% tejto cifry. Budem však veľkodušný a vynásobím 16 x 6.2 sa rovná 99.2 GFLOPs. Veľmi pekné čislo. Grafická časť GScube čipsetu už bohužiaľ žiadne flops nepridá, neobsahuje FPU/SIMD logiku.

PS5 so svojim CPU podľa rôznej metodiky hádže niečo okolo 600 až 800 GFLOPs plus ďalších minimálne 10 TFLOPs v GPU !! Enormný rozdiel vo výkonnosti. Dokonca aj plánovaná 64 jadrová GScube s cca 400 GFLOPs lapá po dychu ale na strane druhej by pekne potrápila PS3, ktorá to agregovane CPU+GPU dáva do tých 500 GFLOPs.

Pamäť, kapacita. GScube má v konfigurácií 16 x 128 mega /štandardná PS2 bola "iba" 32 megová/ k dispozícií 2 gigabajty hlavnej pracovnej Rambus DRAM a 16 x 32 mega grafickej eDRAM /PS2 mala "iba" 4 mega/. Dokopy teda 2.5 GB RAM alebo 10 gigabajtov pri Gscube64. Opäť vysoko nad možnosti PS3 ale hlboko pod PS5, kde sa odhaduje minimálna konfigurácia na 16 giga základ plus "niečo" pre OS o veľkosti 4-8 giga ?

Pamäť, rýchlosť. GScube - 16 x 3.2 giga/s do hlavnej RAM, teda cca 51.2 giga/s čo je na chlp presne ako moderná viackanalová PC RAM DDR4 na 3200Mhz /latencie a spol. teraz neriešime/ a praktickú rovnakú hodnotu má aj PS3 keď sčíta pamäťové zbernice pre CPU a GPU. GScube64 do hlavnej RAM ide cez 200 ciga/sec.

Smiech nás definitívne prejde, keď GScube vynásobí svoju eDRAM s jej 48GB/s krát 16 sa rovná 768 GB/s čo je číslo, na ktoré dnes potrebujete buď sakra rýchlu GDDR6 na širokej 384 bit zbernici alebo hypermodernú HBM. A nech neklamem - HBM2 sediaca na 4096-bit zbernici s 1.4 Gbps na linku dá 720 GB/s. Ak chcete viac, tak 1.7Gbit na kanál a 901 GB/s. Hypotetická GScube64 ide do terabajtov a na to nám už treba google datacentrum, eh.

Pri PS5 je situácia v tomto bode zložitejšia v tom, že síce sme už brali ako definitívne, že použije ako hlavnú ram GDDR6 od 450giga/sec vyššie a pre OS za sekundárnu RAM s nižšom rýchlosťou ale posledné šumy opäť kvákajú o použití HBM s rýchlosťou cez 650 giga/s. Nejde len o jej rýchlosť, oproti GDDR6 má nižšiu spotrebu a pri zmenšovaní výrobného procesu /zlacňovanie konzoly/ sa s ňou pracuje efektívnejšie. Poznámka - moderné GPU ako to v PS5 používa úžasne efektívne "kompresie" všetkého /farba - cez delta kompresiu, vertex stream, Z/G/W buffer, kompresia textúr/ čo ohromne šetrí priepustnosť. PS5 pamäť je navyše UMA, dáta pre CPU a GPU teda sedia na jednom mieste a nebehajú po zberniciach ako pri PS2/GScube s oddelenými Rambus a eDRAM bankami.

GPU hrubý výkon. GScube pixel fillrate je teoretických 38.4 až 153.9 gigapixelov za sekundu /16 krát 2.4 eventuálne 64 x 2.4/. Ide však o tie najjednoduchšie možné "netextúrované" pixely triedy Virtua Fighter 1. Ich počet lineárne klesá ako ich skladáte za účelom dosiahnutia pokročilejších efektov, už na polovicu pri mapovaní jednej texúry. PS2 čipset nepozná pixel shader a ide sa tam na všetko hrubou silou. Polygon rate činí 1.2 až 4.8 gigapoly/sec /teda 16 x 75, ev. 64 x 75/, ide opäť o super-ideálnu performance, ktorá priamo úmerne s počtom svetiel na scéne a efektami klesá. V praktických aplikačných podmienkách sa rátalo s cca 320M+ poly/s pri originálnej GScube alebo 1.2 gigapoly/s pri GScube64.

PS5 GPU, ktorej výkon a custom úpravy sú stále stredne veľká neznáma a preto to obídem tým, že budem vychádzať zo zdravého RDNA základu - AMD Radeon RX 5700. Pri XT verzii sa uvádza pixel fillrate až na úrovni 122Gpix/s a polyrate, ak dobre rátam pri jeho novo prerobenom geometry engine a 4 polys na megahertz mi vychádza na 7.2giga poly/sec pri rýchlosti GPU 1800Mhz. Aj masívne obrovská 64 jadrová Gsube teda bude PS5kou pokorená

Bonus - ranná, proto-verzia, iba 4 jadrová GScube vyhrabaná zo smetí. Ak by ste herný softvér prinútili s touto mašinaou spolupracovať, tak môžte PS2 hry zahrať v rozlíšení 1280x960 pixel ako štyri krát 640x480 pixel frame via softvér/hardvér merger, ktorý vám tie snímky zlepí dokopy. Úplne rovnako to SONY už opakovane predviedlo na Gran Turismo ukážkach, kde niekoľko PS3 alebo niekoľko PS4 vygenerovalo hru do oveľa vyššieho rozlíšenia. Pri PS5 bude cieľovou hodnotou bombastický 8K výstup ako GT "teaser" možno už pred vianocami tohto roku.