Nem igazán Vega a Kaby Lake-G pGPU-ja

Mondjuk nem is igazán Polaris, ami elég sok kérdést vet fel a tudását illetően.

Az Intel az év elején mutatta be teljes pompájában a Kaby Lake-G platformot, ami rendhagyó módon társítja a dedikált grafikus vezérlőt a processzorhoz. Utóbbit a Santa Clara-i óriáscég vásárolja meg az AMD-től, és saját fejlesztésének eladva helyezi a CPU mellé, méghozzá közös tokozásra. Ennek elvi szinten több előnye is van: gyors és helytakarékos hardvert tud biztosítani az Intel a partnereinek.

Ezekkel már régóta tisztában lehet lenni, és az Intel magát a pGPU-t Radeon RX Vega M néven illeti, amiből arra lehetett következtetni, hogy a Vega architektúrát használták fel alapnak. A Tom's Hardware friss adatai szerint azonban ez nem teljesen helytálló, ugyanis az elvégzett elemzésük alapján a Kaby Lake-G pGPU-ja nem tud annyit, amennyit az AMD saját Radeon RX Vega termékskálája, többek között nem támogatja a D3D_FEATURE_LEVEL_12_1 szintet a DirectX 12-es API-n belül. Ennek pedig a Vega architektúra például megfelel.

Hirdetés

Azt nehéz eldönteni, hogy szoftveres tényezőről van-e szó, de nyilván az AMD-nek van megfelelő meghajtóra erre, tehát inkább a hardverben lehet hiányosság. Mint ismeretes az AMD a Vega előtti generációban csupán a Volume Tiled Resources képességet nem kezelte, így emiatt bukták el a D3D_FEATURE_LEVEL_12_1 szint elérhetőségét. Egészen pontosan fogalmazva magát az eljárást végre tudta hajtani már a legelső GCN architektúra is, de eltérő méretű formátumot támogatott, mint amit a DirectX 12 végül igényelt. Ebből volt is anno egy kisebb vita, hiszen maga Volume Tiled Resources képesség eleve használhatatlanná vált azután, hogy a Microsoft végül mégsem követelte meg az ehhez illeszkedő ASTC textúraformátumokat. Ezzel a D3D_FEATURE_LEVEL_12_1 szint máig csak úgy van, de egyetlen játékfejlesztő sem nyúl hozzá, mert effektíve számos újítás félbe van hagyva benne. Ezzel a gyártók nem nagyon tudnak mit kezdeni, a Microsoft pedig hiába vállalja magára a felelősséget, ettől még az újítások egy része reálisan szemlélve nem bevethető.

Az Intelnek tehát abból nem lesz túl nagy gondja, hogy a Kaby Lake-G kódnevű rendszer pGPU-ja nem kezeli D3D_FEATURE_LEVEL_12_1 szintet. Mégis felveti azt a kérdést, hogy ha nem Vega architektúra dolgozik benne, akkor mi? Az AMD erre nem válaszol, ugyanis a vállalat alapvető politikája, hogy a Semi-Custom üzletág által tervezett lapkák esetében a megrendelő dönti el, hogy mit árul el a világnak és mit nem.

Az Intel annyit mond csak, hogy az általuk rendelt, egyedileg tervezett pGPU hasonló az asztali Radeon RX Vega sorozathoz a HBCC-vel, a továbbfejlesztett multiprocesszorokkal és kértek belet több ROP blokkot.

Az már látszik, hogy itt egy hibrid dizájnról lesz szó. Se nem Vega, se nem Polaris, valahol a kettő között. Az Intel elmondása alapján a Vega egyik fontos képességét, azaz a HBCC-t megörökölte, ami jó dolog, de úgy néz ki, hogy más újítást nem igazán. A továbbfejlesztett multiprocesszorok valószínűleg arra utalnak, hogy az alap a Polaris architektúra volt, amit azért egy picit átdolgozhattak, de mégsem a Vega multiprocesszorai kerültek bele. Innen adódik az is, hogy felezett pontosság esetén a feldolgozás sebessége nem nő a duplájára a Kaby Lake-G platform méréseinél.

A fentiekből arra következtet a Tom's Hardware, hogy a Rapid Packed Math (RPM) képesség nincs támogatva, de ez a valóságban bonyolultabb, ugyanis ezt már a GCN3 is kezelte. Az RPM nem igazán a felezett pontosságról szól, hanem a csomagolásra vonatkozó optimalizálásról. A legtöbb mai alkalmazás 32 bites nem csomagolt adatokkal dogozik, amivel a vektorregiszterekre vonatkozó terhelés tulajdonképpen teljes lesz, és ez nem igazán jó, mivel sok shader esetében a nagyobb pontosságnak nincs lényegi haszna, és kihasználtságra vonatkozó limittel rendelkező SIMT architektúrának (ilyen a GCN is) az egész szituáció nem kedvez. Az AMD a megoldást kétféle csomagolási stratégiában látja, amelyeket struktúrák tömbje, illetve tömbök struktúrája néven illetnek. A GCN3 és GCN4 (Polaris) hardvereken mindkettő a felére csökkenti a vektorregiszterekre vonatkozó terhelést, így a kihasználtságra vonatkozó limit csökken, vagyis az újabb verziójú GCN dizájnok esetlegesen több wavefrontot futtathatnak a multiprocesszoron. Ez 10-20%-os extra sebességet jelenthet az adott shaderre vonatkozóan. A GCN5 (Vega) az egészet csupán kiegészíti azzal, hogy nem csak a vektorregiszterek terhelése lesz visszafogva, hanem konkrétan nő az operációk végrehajtásának tempója. Elméleti szinten ez a struktúrák tömbje opciónál 50%-kal jobb sebességet eredményez, míg a tömbök struktúrája verzió konkrétan a duplájára gyorsítja a feldolgozást. Látható tehát, hogy maga Rapid Packed Math a Polaris generációval is elérhető, csak éppen nem olyan formában, ahogy azt a Vega tudja, vagyis az ebből származó előny jóval kisebb lesz. Utóbbi nyilván fontos, elvégre számít, hogy a realizálható extra 10-20%, vagy akár 100%, de ettől maga a képesség még megvan a Kaby Lake-G pGPU-jában is, csak nem ad annyi előnyt, amennyit az AMD Vega dizájnja.

Arról nincs adat, hogy az Intel a multiprocesszorokon milyen újításokat kért. Elképzelhető, hogy a Microsoft Xbox One X konzolba tervezett egységeket kapták meg, amik nem sokban különböznek a Polaris architektúrától, de annyiban előnyösebbek, hogy az LDS dinamikusan particionálható, így a compute shaderek nagyobb tárterületet kaphatnak a korábbi 32 kB-os limithez képest. A ROP blokkokra vonatkozóan az Intel álláspontja tiszta sor, több egységet kértek, de ezek valószínűleg ugyanazok, amelyek a Polaris lapkákba dolgoznak.

A Vega többi képességéről, így például az új raszterizálóról (draw stream binning rasterizer) nincs adat, ez valószínűleg nem került bele a rendszerbe.

Az tipikusan nehéz kérdés, hogy az Intel mi alapján sorolja a saját pGPU-ját a Radeon RX Vega sorozatba. Persze nyilván üzleti döntés van a háttérben, elvégre az Intel fizet az AMD márkaneveinek használatáért, vagyis úgy nevezik el a terméküket, ahogy akarják. Az AMD-nek ebbe valószínűleg kevés beleszólása lehet, ők csak a névhasználati jogot értékesítik. A legjobb tehát észben tartani, hogy a Kaby Lake-G Radeon RX Vega pGPU-ja nem igazán az a Radeon RX Vega, amit az AMD árul ilyen névvel. A képességei az igazi Vega architektúrához képest visszafogottabbak, de Polaris dizájnokhoz hasonlítva némileg jobbak.

Azóta történt

Előzmények

Hirdetés