Az AMD a normál és a professzionális Vega VGA-kat is bemutatta

Hamarosan elérhetővé válnak az AMD legújabb, Vega 10-es GPU-s videokártyái.

A Vega 10 részletesebben

A Vega 10 kódnevű GPU-n belüli további képességeket is kifejtette az AMD. Ezek már bemutatott újítások, csak éppen részletesebben tárgyalva.

A packed math ismert lehet egy ideje, a GCN3 és a GCN4 architektúra is támogatja, viszont a GCN5-öt használó Vega 10 további fejlesztéseket tartalmaz. Itt tulajdonképpen arról van szó, hogy milyen adatokkal dolgozik a program. Jelenleg jellemzők a 32 bites nem csomagolt adatok, amelyekkel 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, viszont a kihasználtságra vonatkozó limittel rendelkező SIMT architektúráknak (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, amelyek struktúrák tömbje, illetve tömbök struktúrája néven ismertek. A GCN3 és GCN4 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.


[+]

A Vega esetében már 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.

Az AMD arra számít, hogy ez egy vezető irányzat lesz a közeljövőben, köszönhetően annak, hogy az aktuális explicit API-k már támogatják, és elég komoly teljesítményt lehet vele nyerni. A Futuremark már dolgozik is egy példának tekinthető tesztprogramon, amely Serra kódnévre hallgat. Ebben az AMD állítása szerint jelentősen növeli a teljesítményt a packed math a normál precizitáshoz képest, miközben a képminőségre vonatkozóan nincs látható negatív hatása.

A primitive shader is újra előkerült, mivel a háromszögek optimális feldolgozása is szükséges a jó grafikai eredményhez. Az AMD szerint ugyanakkor a geometriai motorok számának növelésével nem lehet sokat nyerni. A probléma pont az, hogy rendszerszinten keletkezik a limitáció, vagyis attól, hogy több a feldolgozó, a limiteket még húzzuk magunkkal. Ez tulajdonképpen egy hasonló hatékonysági probléma, mint a VRAM esetében az allokációk kezelése, persze nyilván más a gond jellege. Jelen esetben az a baj, hogy hiába dolgozik a motor komoly kivágási technikákkal, hiába van sok feldolgozó a hardverben, a geometria komplexitásának növelésével egyre több olyan háromszög lesz kivághatatlan, amelyekről csak a raszterizálás után derül ki, hogy nem látszik. A probléma ráadásul a modellek és a világ részletességének növelésével exponenciálisan válik egyre súlyosabbá.


[+]

Az AMD szerint az lenne az ideális, ha a raszterizálóig már eleve csak egy minimális számú nem látható háromszög jutna el. Emiatt vezeti be a cég a primitive shadert, ami az aktuális futószalagokba több szempontból is becsatlakoztatható. Egyrészt ki tudja váltani a vertex, domain és geometry shadert, de akár ki is egészítheti ezeket, ez teljes mértékben a programfejlesztő döntése. A lényeg az, hogy ezzel az új shader lépcsővel már a futószalag elején meg lehet mondani rengeteg primitívről, hogy nem látszanak, így nem kell teljesen felesleges számításokkal terhelni a hardvert a raszterizálóig. Emellett számos esetben a primitive shader képes jelentősen gyorsítani a feldolgozást, így az árnyéktérképekhez, illetve a részecskeeffektekhez kifejezetten jól jöhet, de a VR szempontjából fontos leképzési technikák hatékonyabb megvalósításában is segíthet.


[+]

A nyers számok tekintetében a Vega 10 a korábbi csúcsnak számító, Fiji kódnevű GPU-hoz viszonyítva nagyjából kétszeresére növeli a primitív-feldolgozó képességet, holott ugyanannyi geometriai motor van benne. Ez főleg annak köszönhető, hogy a Fiji még nem rendelkezett Primitive Discard Accelerator egységgel, ami ugye a Polaris generációban mutatkozott be, és ez a degeneratív háromszögeket kivágja. Utóbbiak olyan háromszögek, amelyeknek mindhárom csúcsuk egy egyenesre esik. Az igazán ütős eredményre az új mód ad lehetőséget, amely majdnem hétszeresére növeli a Fijihez képest az előnyt, és ahogy említettük, a Vega 10-ben fizikailag nincs több geometriai motor. Ez jól mutatja, hogy komplex geometria mellett nem a feldolgozók számával lehet sokat nyerni, hanem a jelenlegi feldolgozási modell megreformálásával, ezen belül is a limitációk és a gondok direkt kezelésével. A primitive shader megjelenéskor nem lesz elérhető, így csak egy későbbi frissítés teheti használhatóvá, de az AMD már teszteli a funkciót, így idővel be fogják építeni.

Az új pixelmotor is kapott némi figyelmet. Ebből a szempontból már régóta ismert, hogy a Vega 10 bevezet egy új raszterizálót (draw stream binning rasterizer), amely a mozaikos optimalizálás mellett a PowerVR GPU IP-k speciális funkciói felé is tesz egy lépést a draw stream miatt. Utóbbi lényegében egy listát generál az adott mozaikhoz tartozó primitívekről és rajzolási parancsokról, amivel a Vega képes párhuzamosítani a raszterizációt, így az egész feldolgozás hatékonyabban hajtható végre. Ezt a módot a meghajtó kapcsolja be, tehát előfordulhat, hogy az egyes játékokban aktív az új raszterizáló, míg más játékokban legacy módban működik a harver, ami lényegében megfelel a Fiji GPU-nak. Amennyiben aktív a friss raszterizálási mód, akkor az lényegében csökkenti a videomemóriába kiírt adatokat, vagyis a lapkán belül tartja a mozaikok feldolgozását. Ez amellett növeli a teljesítményt, hogy közben csökkenti a memóriabusz terhelését, ezáltal pedig csökken a fogyasztás is.


[+]

Az új raszterizálási mód a nyers számok alapján legalább kétszer hatékonyabb a legacy módnál, és az egyes játékokban 3-33% között csökkenti a képkockánkénti, fedélzeti tárba kiírt bájtok számát.

A cikk még nem ért véget, kérlek, lapozz!

  • Kapcsolódó cégek:
  • AMD

Azóta történt

Előzmények

Hirdetés