Vélemény: akkor most vége a több GPU-s lehetőségnek?

Az AMD már egy ideje lelőtte a CrossFire-t, míg az NVIDIA most jelentette be az SLI végét.

A több GPU-s vonal az új, explicit API-k befutásával meglehetősen átalakult, hiszen a DirectX 12 és a Vulkan esetében már az alkalmazás gondoskodik az erőforrások megfelelő kihasználásától. Ezzel a régi megoldások, vagyis az AMD CrossFire és az NVIDIA SLI opciók komoly gyomrost kaptak.

Az AMD az előző év nyarán jelentette be, hogy az új Radeon RX 5000 sorozat már nem támogatja tovább a hagyományos CrossFire-t, míg az NVIDIA a tegnap kiadott új meghajtó mellett jelentette be, hogy vége az SLI-nek az Ampere architektúrára épülő GeForce-okon, és a következő év elejétől már a régebbi kártyákhoz sem adnak majd ki új SLI profilt, függetlenül attól, hogy az adott játék tudná-e támogatni a technológiát vagy sem.

A döntések ugyan kegyetlennek tűnhetnek, de valójában jó okkal hozták meg ezeket az érintett cégnek. A hagyományos, elavult API-khoz tervezett több GPU-s technológiák egyre ritkábban működtek jól, így pedig teljesen felesleges volt fenntartani őket. Mindemellett az új generációs konzolok gyakorlatilag kivégzik a DirectX 11-et, tehát effektíve a komolyabb játékok amúgy is valamelyik explicit API-n keresztül működnek majd PC-n, ezeken belül pedig eleve nincs CrossFire vagy SLI.

A fentiek azonban egyáltalán nem jelentik a több GPU-s lehetőségek végét. Az AMD és az NVIDIA eleve nem működő technológiákat kapcsolt le, ha mesterségesen életben tartják őket, akkor sem származik belőlük semmi előny. Ellenben a DirectX 12 és a Vulkan API is rendelkezik explicit több GPU-s szolgáltatásokkal, illetve az ezekhez kapcsolódik egy szabványos, WDDM 2-es AFR opció. Ha tehát egy játék DirectX 12 vagy Vulkan API-n fut, és támogatja valamelyik explicit API-hoz tartozó több GPU-s módot, akkor természetesen skálázódni fog két vagy több VGA-ra is függően attól, hogy az adott program hogyan kezeli ezeket. A koncepció tehát marad, és a működés jellege miatt a gyártóknak ezzel már nem is kell foglalkozniuk, pusztán a WDDM 2 AFR-jét kell a meghajtó oldaláról támogatni, ehhez pedig minimum két DMA kell a hardveren belül, amit amúgy is megkövetel a DirectX 12 API aszinkron DMA képessége.

A fentieknek hála az új meghajtók rendkívül egyszerűek a több GPU szempontjából, hiszen a WDDM 2-es AFR-t tényleg nem nagy kunszt kezelni, a működéshez szükséges kódot jelentős részét maga a Windows 10 operációs rendszer biztosítja. Gyakorlatilag erre kell írni egy kisebb implementációt, ami hozzáférést ad a DMA motorokhoz, illetve a Microsoft lehetőséget ad a gyártóknak arra, hogy frame pacinget alkalmazzanak, ami egyenletesen jeleníti meg a kiszámolt képkockákat. Erről egyébként maga az alkalmazás is gondoskodhat, tehát nem kötelező a meghajtó oldalán kezelni a problémát. Viszont mivel maga a rendszer szabványos, így nem kellenek többé meghajtóprofilok a több GPU-hoz, ha az adott játék támogatja a WDDM 2-es AFR-t, akkor egyszerűen működni fog akár több hónappal korábban kiadott eszközillesztővel is.

Járulékos előny, hogy mostantól nem kell majd nézni az alaplapokon a licenceket. Egyszerűen, ha az adott deszkán van két teljes szélességű PCI Express port, akkor biztosan támogatja az explicit API-k több GPU-s módjait. Pusztán arra kell figyelni, hogy a két VGA hasonló legyen. Az az optimális, ha ugyanolyan, de ha az eszközazonosító megegyezik, akkor az már elég a rendszer működéséhez.

A WDDM 2-es AFR-en kívül egyébként alternatív megoldásokat is kínál a DirectX 12 és a Vulkan API. Előbbi pusztán a legegyszerűbb út, hiszen a kód egy része meg van írva az operációs rendszeren belül. Linkelt módban a kódot egyébként biztosíthatja az alkalmazás is, tehát ebből a szempontból is van egy elég nagy szabadság, ilyenkor viszont kötelező magát a frame pacinget a programkódon belül megoldani.

Bárhogy is legyen a linkelt mód alkalmazva, számos játék támogatja többek között a Halo Wars 2 (DirectX 12), a Battlefield 1 (DirectX 12), a Gears of War 4 (DirectX 12), a Rise of the Tomb Raider (DirectX 12), a Shadow of the Tomb Raider (DirectX 12), a Hitman (DirectX 12), a Deus Ex: Mankind Divided (DirectX 12), a Sniper Elite 4 (DirectX 12), a Strange Brigade (DirectX 12 és Vulkan), a Zombie Army 4: Dead War (DirectX 12 és Vulkan), a Red Dead Redemption 2 (Vulkan) és a Quake RTX (Vulkan).

A fenti modellnél komplexebb az unlinkelt mód, ami explicit multiadapter néven is ismert. A lényege annyi, hogy igen szabadon lehet bánni a rendelkezésre álló erőforrással. Ebben a rendszerben az alkalmazás akárhogy eloszthatja a feladatokat a GPU-k között, ráadásul ezek kapcsán nincs is feltétlenül megkövetelve, hogy hasonló teljesítményűek legyenek, vagy esetleg egy gyártótól származzanak, ezek is a program oldalán meghozott döntésektől függnek. Ez a több GPU-s mód persze nem annyira elterjedt, lényegében az Ashes of the Singularity: Escalation (DirectX 12 és Vulkan) és a Civilization VI (DirectX 12) használja, mindkét program más formában.

Ami elmondható, hogy a fenti játékok elképesztően jól működnek több GPU-s konfiguráción. Olyan jól, amiről csak álmodni lehetett a régi CrossFire és SLI opciókkal, tehát az új, explicit API-k által biztosított rendszerben masszív potenciál van. Az lehet, hogy a régi megoldások kivégzésével egy korszak lezárult, viszont a friss lehetőségekkel kezdődik egy új. A több GPU-s irány kétségtelenül úgy tűnhet, hogy a haláltusáját vívja, de az sem kizárható, hogy most születik csak igazán meg. Az elavult API-k kilövésével például lényeges erőforrás szabadul fel a fejlesztőknél, amelynek egy részét ezen új lehetőségek kutatására is fordíthatják, ráadásul ebben segíthetnek a GPU-kat tervező cégek is.

Azóta történt

Előzmények

Hirdetés