Vélemény: furcsa erősorrendeket fog okozni a jövőben az Infinity Cache

A méretes gyorsítótár jó kihasználása kulcsfontosságú a nagy teljesítményhez, de kérdés, hogy ehhez mire van szükség.

Az új generációs Radeonon legérdekesebb újítása az Infinity Cache, amelyről részletesen beszámoltunk a Radeon RX 6800-ról készült cikkünkben, de akkor viszonylag általánosítva, az AMD-től származó adatok alapján mutattuk be a rendszert. Ezzel nincs is gond, hiszen a vállalat által biztosított, találati arányra vonatkozó információk a nagy átlagot képviselték, viszont már akkor is felmerült bennünk a kérdés, hogy hol van a határok. Nyilván az átlagos értéket tekintve vannak olyan leképezők, amelyekkel kevésbé hatékony Infinity Cache, illetve olyanok is, amelyeken kifejezetten jól érzi magát.

A fentiek miatt az elmúlt időszakban arra próbáltunk választ kapni, hogy mik a reális felső és alsó limitek. Nyilván itt a kiugróan jó és a kiugróan rossz értékeket érdemes kivenni a képből, mivel ezeknek a gyakorlatban nincs jelentőségük. Többek között biztos, hogy az Infinity Cache elképesztően jól működik egyszerűbb grafikai terhelés mellett, méghozzá pusztán azért, mert a memóriaigény olyan jelentéktelen, hogy akár beférhet az össze szükséges adat a gyorsítótárba. Erre még lehet is példát találni a sok-sok éve megjelent játékok tekintetében, viszont a jelen kor igényeit figyelembe véve ennek aligha van jelentősége. A mérleg másik végét képviselik azok a leképezők, amelyek terhelése a memóriára vonatkozóan magas. Ilyen például a teljes deferred leképező, amely főleg 10-15 éve volt népszerű, de ma már sokkal jobb alternatívák léteznek nála. Emiatt ez se igazán lényeges a mai játékok figyelembe véve, mert régebben egyáltalán nem a várt módon nőtt a VGA-k memória-sávszélessége, így ez az irány jó tíz éve teljesen kikopott.

A kérdés tehát az, hogy a manapság gyakorlatban alkalmazott modern leképezőkben mi a helyzet. Információink szerint a legtöbb alkalmazás a megadott átlagos értékekhez közeli találati arányt hoz, nagyjából plusz-mínusz 10%-os tartományon belül. Nagyon alacsony találati arány nem várható, mert a programozóknak figyelembe kellett venniük az elmúlt években, hogy a számítási kapacitás gyorsabban növekszik, mint a memória-sávszélesség, illetve a VRAM kapacitása, így a leképezők tekintetében is ennek megfelelően optimalizáltak. Ez igen komplex mozaikos, esetleg klaszteres megoldásokat szült, amelyek megpróbálnak bizonyos problémákat direkten kezelni, és a modern GPU-k működéséhez igazodni.

Ami fejfájást okozhat az Infinity Cache esetében azok olyan eljárások, amelyek a gyorsítótárak hatékony kihasználására vannak felkészítve. Ez persze leginkább a tesztek tekintetében lesz nehézség, mert egészen döbbenetes különbség is lehet két játéknál a VGA-k erősorrendjében. Ezt két irány határozza majd meg, az alkalmazott leképező, illetve a felbontás. Utóbbi esetben elég könnyű a helyzet, mivel a felbontás növelésével romlik a találati arány, így pedig a rendszer hatékonysága is. Ez látszik az első bekezdésben linkelt tesztünkben, 4K-ban érzi magát a legrosszabbul a hardver, míg a felbontás csökkenésével egyre inkább kivirágzik. Ami itt igazán bekavarhat azok az AI felskálázási technológiák, ugyanis ezeknél az eljárásoknál az alkalmazás konkrétan a natívan beállítottnál kisebb felbontáson számol, amivel pedig nő a találati arány az Infinity Cache-ben. Nem véletlenül hallani a partnerek felől, hogy a FidelityFX Super Resolution egy kritikus projekt az AMD-nél, és 128 MB-os gyorsítótárral rendelkező GPU-n az AI felskálázás erősen hazai pályának számít, azt meg sem említve, hogy egy neuronháló dedukciójánál az 1,6-1,9 TB/s-os sávszélességgel elérhető Infinity Cache megint csak rendkívül hasznos tud lenni.

A leképező már sokkal bonyolultabb ügy, már csak azért is, mert elég sok fejlesztés történik ezen a területen, köszönhetően annak, hogy a DirectX 12 és Vulkan API-k bevezettek pár érdekes újítást, amelyekkel bizonyos új eljárások alkalmazása optimálissá válik. Ezek régóta ismertek, de a DirectX 11 miatt nem igazán voltak bevethetők, mivel nagyon építettek olyan dolgokra, amelyek megvalósítására nem volt szabványos lehetőség a régi API-kban. Ilyen például az MDI, vagyis a Multi Draw Indirect. Persze egy ideje már ez sem gond DirectX 11 mellett, mert az AMD és az NVIDIA is biztosít megfelelő kiterjesztéseket az AGS és az NVAPI szervizkönyvtárakon keresztül, továbbá az Intelnek is van erre saját kerülőútja. Az ilyen megoldások használata viszont véleményes, mert lehet, hogy ma már mindegyik gyártóval megoldható a helyzet szabványon kívül, de ha jön egy új versenyző, akkor egy nem szabványos funkción keresztül működő játék még a DirectX 11-et tökéletesen támogató GPU-n is képtelen lesz normálisan futni. Persze az egész eléggé elméleti kérdés, hiszen túl nagy esély nincs arra, hogy ebből a háromszereplős piacból négyszereplős legyen, de a probléma azért látszik.

A gyártóktól kapott adatok szerint van pár fecske a piacon, amelyek leképezőjét már úgy tervezték, hogy a működés tekintetében a lehető legnagyobb találati arányra törekedjen. Erre számos lehetőség van, példának okáért érdemes a deferred leképezőkre koncentrálni, amely a számos bevethető trükktől függetlenül egy eléggé elterjedt megközelítés még ma is, a legtöbb modern videojáték-motor erre épít. Ezzel a koncepcióval viszont mindig is az volt a legnagyobb probléma, hogy maga a leképezés két fázisban történt meg. Az első fázis lényegében csak a második, valós árnyalási fázishoz gyűjtötte be a szükséges adatokat, amelyeket a geometria pufferbe el is mentett. Utóbbi ugyanakkor meglehetősen méretes lehetett, alaposan terhelve a memóriát és a memória-sávszélességet. Az új generációs API-kba épített lehetőségeknek hála már nem csak a geometria puffer az egyetlen út a deferred árnyalás hatékony megvalósításához, vannak már olyan alternatív megoldások, amelyek nem a geometriai felület tulajdonságait tárolják, hanem csak a háromszögek rajzolási és primitív azonosítóját. Bár némi extra számítás kell hozzá, de a geometria puffer ezzel a megoldással kiváltható, és jóval kevesebb adat terheli mintánként a memóriát. Mégsem ez a legnagyobb előnye ennek a módszernek, hanem a GPU-k gyorsítótárainak hatékony kihasználása. Az így tárolt adatok jó része ugyanis redundáns, ami elég nagy találati arányt szül.

Az ilyen optimalizálási irányok fekszenek leginkább az Infinity Cache-nek, és a mostani játékfelhozatalból például némileg erre gyúr a Battlefield V, de a Frostbite videojáték-motornak van egy még újabb verziója, amelyet a Star Wars: Squadrons használ, és az abba épített leképezőt már teljesen a gyorsítótárak hatékony kihasználására optimalizálta a Frostbite Team. Hasonló irányba mozdult a Codemasters és az Ubisoft is. Előbbi esetben a DiRT 5, míg utóbbiban az Assassin's Creed Valhalla lett a kísérleti nyúl. Ezekkel a módosításokkal az a cél, hogy a modernebb hardverek hatékonyabban működjenek, és itt nem az Infinity Cache-re kell gondolni, mert ez független attól, hogy egy GPU-ban 4 vagy 128 MB-nyi gyorsítótár van. Az új generációs API-k, illetve a gyártók DirectX 11-hez írt szervizkönyvtárai által megteremtett lehetőségekkel minden hardverből kihozható az előnyösebb működés, ezen belül pedig természetes, hogy a több cache többet ér.

Információink szerint az Assassin's Creed Valhalla új leképezője a 4-6 MB-os L2 gyorsítótárral rendelkező GPU-kon, vagyis a hardverek többségén olyan 4-7% közötti előnyt jelent a korábbi leképezőhöz viszonyítva, a 128 MB-os Infinity Cache pedig 25-29% közötti gyorsulást hoz. Effektíve ennyivel lennének lassabbak a VGA-k, ha az Ubisoft nem vezette volna be az optimalizálásokat.

A fentiek alapján a kérdés az, hogy az Ubisoft, az Electronic Arts és a Codemasters mellett még melyik stúdió fog olyan leképezőket írni, amelyek meghálálják a nagy gyorsítótárat. Ez ugyanis döntően meg tudja határozni a VGA-k erősorrendjét egy játékban. A tesztek tekintetében az összesítésnél is jelentős hatása lehet annak, ha sok mérés történik az újabb Frostbite videojáték-motort használó alkotásokkal, vagy például az Ubisoft friss játékaival. Talán emiatt az átlag kiszámítása is kisebb hangsúlyt kaphat, hiszen alkalmazástól függően nagyon messzire tudnak kerülni egymástól a tempó tekintetében az egyes, listaár szintjén amúgy egymáshoz közel helyezett VGA-k. És ezen a ponton már fontos a preferencia, vagyis érdemes lehet a jövőben a kedvenc játékokban mutatott teljesítmény alapján meghozni bizonyos döntéseket. Valószínűleg ez a helyzet normalizálódni fog, ha mindenki elkezd nagy gyorsítótárat építeni a GPU-iba, de arra még sokat kell várni.

  • Kapcsolódó cégek:
  • AMD

Előzmények

Hirdetés