Sok lehetőséget kínál a DirectX 12 a több GPU kihasználására

A Microsoft az idei Build konferencián beszélt először a DirectX 12 Multiadapter funkciójáról, amely a több grafikus vezérlővel rendelkező PC-k kihasználását szorgalmazza. Manapság erre az igencsak haldokló NVIDIA SLI és AMD CrossFire technológiák állnak rendelkezésre, amelyekről már tudni, hogy az aktuális formájukban nem fognak működni az új generációs, alacsony szintű hardverelérést biztosító grafikus API-kkal. Éppen ezért mostantól a fejlesztő dolga lesz kihasználni az elérhető hardvereket, de ebben az új Multiadapter funkció segít.

A Multiadapter a működése szempontjából lehet implicit és explicit. Az implicit mód az egyszerűen támogatható opció, amelynek segítségével a fejlesztők egy SLI és CrossFire technológiához hasonló AFR feldolgozást hívhatnak meg. Ez annyiban különbözik a mostani SLI és CrossFire opcióktól, hogy a memóriamásolásokat a fejlesztőnek kell biztosítania, mivel a DirectX 12-es grafikus meghajtó önmagában nem fogja tudni, hogy mi hol van a memóriában. A másolandó memóriaterületeket tehát a programnak kell kijelölni, és megmondani azt, hogy mikor biztonságos a másolás lefolytatása. Erre a gyártók továbbra is képesek majd profilokat készíteni, de tényleg nagyon fontos, hogy a direkt támogatás ebben a módban is kell. Járulékos előny, hogy az implicit mód működik majd ablakban is, ami a korábbi megoldásokra nem volt jellemző.

Az explicit mód már izgalmasabb koncepció, mivel ilyenkor teljes egészében a program felel a több grafikus vezérlő működtetéséért. Igazából a Microsoft is inkább ennek a használatát javasolja a fejlesztőknek, mivel itt teljes kontrollt kapnak az adott konfiguráció felett, vagyis összességében kevésbé költséges a fejlesztése. Ez egy picit ellentmondásosnak tűnhet, de valójában nem az. Kétségtelen, hogy az explicit mód esetében több programkódot ír a fejlesztő, de mivel a teljes rendszert kontrollálja, így jóval nagyobb az esélye, hogy a kidolgozott algoritmus kezdettől fogva működni fog. Az implicit mód esetében valóban jóval kevesebb programkód beírására van szükség, de viszonylag kicsi az esélye, hogy azonnal üzemképes lesz a rendszer, illetve a gyártókkal is szorosan együtt kell dolgozni, ami rengeteg munkaórát visz el, az állandó újratesztelésről nem is beszélve. Az implicit mód leginkább az egyszerű, AFR feldolgozással alapvetően kompatibilis leképzőkhöz lett beépítve, minden más esetben az explicit mód a kedvezőbb irány.

Hirdetés

Az explicit mód legnagyobb előnye, hogy elméletben bármit megenged. Lényegében ugyanaz, mint a Mantle API több GPU-s koncepciója, vagyis minden grafikus vezérlőt teljesen függetlenül vezérelhet a program, a videomemória teljesen különálló menedzsmentjével. Többféle topológiát kidolgozhatnak a fejlesztők, így támogatható több ugyanolyan, vagy eltérő teljesítményű grafikus vezérlő, beleértve az integrált megoldásokat is. A gyártók mixelése is lehetséges, de ez egy képlékeny terület, és a Microsoft is csupán egy lehetőségként tekint rá. Azt semmiképp sem érdemes elvárni, hogy mostantól mindenféle grafikus vezérlővel feltölthető az adott PC, és azok teljesítménye összeadódik. Többek között a mixelés főleg akkor opció, ha eltérő eljárások futnak majd az erőforrásokon, mivel más esetében meg kellene küzdeni azzal, hogy az eltérő grafikus vezérlők eltérő szűrési minőséget biztosítanak, ami nem kedvező.

Az explicit módban is két alapvető koncepcióhoz nyúlhatnak a fejlesztők. Az egyik a Linked, míg a másik az Unlinked opció. A Linked viszonylag egyszerűen leírható mód, mivel ilyenkor a PC-ben detektált több GPU a program felé egyetlen GPU-ként fog látszódni. Erre nagyon hatékonyan skálázódó leképzőket lehet építeni, de meglehetősen nehéz lesz vele bánni, így valószínűleg csak a tehetős stúdiók fogják alternatívának tekinteni.

Az Unlinked opció a kedveltebb explicit mód lesz, legalábbis az eddigi visszajelzésekre építve mindenképpen. Ebben a koncepcióban a grafikus vezérlők egyénileg lesznek detektálva, de a fejlesztő a működésük feletti teljes kontrollt megkapja. Ráadásul nem csak memóriamásolásokkal lehet dolgozni, hanem például címezhető az egyik grafikus vezérlő egy bizonyos memóriaterülete a másik grafikus vezérlő által.

A Microsoft szerint az egyik legkedveltebb több GPU-s üzemmód lesz a heterogén multiadapter, amely tulajdonképpen nem más, mint egy Unlinked explicit mód a dedikált és az integrált grafikus vezérlő között. Többek között az Unreal Engine 4 is ezt használja, így például az utófeldolgozásra vonatkozó futószalag teljesen ki van helyezve az integrált grafikus vezérlőre. A koncepció igazából nagyon egyszerű. A fő feldolgozást szimplán megoldja a dedikált grafikus vezérlő, míg viszonylag sok számítást igénylő, de a memória-sávszélességre nem annyira érzékeny utófeldolgozás a dedikált grafikus vezérlő elvégzett munkájára építve az integrált grafikus vezérlő feladata lesz, és ezzel a képkocka el is készül. Két nagy előnye van a koncepciónak. Egyrészt végtelenül egyszerű kihasználni, másrészt a dedikált grafikus vezérlő már dolgozhat a következő képkockán, miközben az integrált grafikus vezérlő még az aktuálisat számolja.

Ezzel az átlapolással a bemutatott demóban nagyjából 10%-os teljesítményt lehetett nyerni. Utóbbi egyébként nem tekinthető általános tempóelőnynek, hiszen nagyon sok eltérő teljesítményű grafikus vezérlő létezik. Nyilván minél gyorsabb az IGP, annál több sebesség nyerhető egy ilyen koncepcióval. A Microsofttól megtudtuk, hogy ezt a modellt nagyon sok fejlesztő használni fogja, mivel rendkívül sok olyan PC van már a felhasználóknál, amelyek rendelkeznek IGP-vel és dedikált GPU-val is.

A hagyományos processzorok egyébként ettől a lehetőségtől a játékosok szemében rosszabb választásnak tűnhetnek majd mostantól. Többek között megtudtuk, hogy egy olyan programban, amely heterogén multiadapter koncepciót használ, egy hagyományos processzor jó eséllyel képtelen lesz olyan sebességet kínálni, mint amit az IGP-vel rendelkező processzorok adhatnak a játékosoknak. Ugyanakkor ezt egyetlen stúdió sem tartja problémának, mivel a felhasználónak csak jó, ha elég egy olcsóbb, IGP-vel rendelkező processzort vásárolnia ahhoz, hogy nagyobb sebességet kapjon, mint a legdrágább elérhető processzorral a piacon. Az már egy másik kérdés, hogy erről az Intel és az AMD mit gondol, hiszen ez a funkció elég komolyan átrendezheti az elérhető processzorok erősorrendjét az egyes játékokban, és a drága, IGP nélküli modellek jellemzően alulmaradnak majd, az olcsóbb, IGP-vel felturbózott verziókkal szemben.

A Microsoftnál azt is elmondták, hogy idén már több DirectX 12 API-t használó játékon is játszhatunk. A korábban bejelentett Fable Legends mellé érkezik a King of Wushu is. Utóbbi esetben két programozó hat hét alatt portolta DirectX 12-re a DirectX 11-es kódot, és az új API-val jelenleg 10%-kal gyorsabban fut a játék, de ez a kód még optimalizálatlan, így további sebességet várnak.

Hirdetés

Fotóznál vagy videóznál? Mutatjuk, melyik okostelefon mire való igazán!

PR Vásárlás előtt érdemes megnézni, mit kínálnak az aktuális telefonok, ha igazán ütős képeket vagy profi mozgóképeket szeretnénk készíteni.

Azóta történt

Előzmények