Élesben teszteltük végre a Mantle API-t

Az első nekifutás

Az AMD az elmúlt év szeptemberében mutatta be a PC-s játékpiacot azóta is lázban tartó Mantle API-t. A rendszer képességeiről már írtunk egy cikket, így a részleteket nem ismételnénk meg. Az AMD első ígérete szerint tavaly decemberben kellett volna megjelennie a Battlefield 4 című játékhoz készült, a Mantle API használatát engedélyező patchnek, illetve Catalyst meghajtóprogramnak, de erre végül csak idén január végén került sor.

A Battlefield 4 mellett a StarSwarm technikai demonstrációjának személyében még egy, az API-t támogató program is napvilágot látott, ami az elsődlegesen stratégiai játékokhoz fejlesztett Nitrous motor képességeit hivatott demonstrálni. Lényeges megjegyezni, hogy az AMD, a DICE/Frostbite Team és a Oxide Games sem beszél általános teljesítménynövekedésről, mivel ez a beállításoktól és az alkalmazott konfigurációktól függ. Annyi azért elmondható, hogy a Mantle a gyenge CPU és erős GPU párosításánál segít messze a legtöbbet, de ha erős CPU-hoz társít a játékos gyenge GPU-t, ott az új API nem hoz lényeges előrelépést.

Azt persze mindegyik fél megjegyezte, hogy a Mantle még csak most lépett béta fázisba, így magában az API-ban is van kiaknázható teljesítmény, illetve a Battlefield 4 és a StarSwarm implementációi elsősorban a stabilitásra helyezték a hangsúlyt, így egyik cég sem próbálkozott olyan algoritmusok bevetésével, amelyek többek között DirectX alatt nem kivitelezhetőek. A jövőben azonban a Frostbite Team főleg a Mantle lehetőségeit fogja kutatni, így zömében olyan effekteket fejlesztenek, amelyek csak a konzolokon és a Mantle API-n lesznek üzemképesek. Ez persze nem zárja ki a később érkező és kellően fejlett szabványos API-kat sem (pl. DirectX 12), de a mostaniakat igen.

A Battlefield 4 esetében a Mantle egyelőre az újabb, GCN C.I. architektúrára épülő grafikus vezérlőkön működik úgy, ahogy a fejlesztők megálmodták. A régebbi GCN S.I. hardvereken ugyan használható az implementáció, de ezek hamarosan egy új frissítést kapnak, ami eltérő memóriamenedzsmentet épít a Frostbite 3 motorba. Ezzel a régebbi termékek extra sebességre tesznek szert.

A Mantle egyértelmű előnye, hogy megszünteti a rejtett driverszálakat, illetve gyakorlatilag maga a Mantle driver csak egy minimális réteget képez a program és az API, illetve a hardver között. Ennek megfelelően az új API-val elért teljesítmény agresszív kötegelés és pufferelés nélkül valósul meg, ami nagyságrendekkel csökkenti a szoftveres oldalon keletkező késleltetést. Mindemellett jóval következetesebb teljesítményre lehet számítani még komplex jelenetek mellett is, továbbá Mantle alatt megszűnnek azok az akadást vagy komolyabb sebességvesztést eredményező problémák, amelyek a DirectX-hez köthetők. Példaként említhető a shaderek folyamatos újrafordítása, amit nagyon nehéz kezelni a szabványos API-kban.

A Hyper-Threading technológiával felszerelt processzort birtokló felhasználók számára jó hír, hogy Mantle API segít a Frostbite motorok egyik régi problémáján. Nevezetesen arról van szó, hogy Hyper-Threading mellett a rendszer apró akadásokat generál, amit a Battlefield 3 óta próbál kezelni a DICE. A különböző javításokkal és a Frostbite 3 motor bevetésével a gond több processzor esetében is minimalizálódott, de nem tűnt el teljesen, így számos szituációban (főleg komplex jeleneteknél) előjöhetnek az aktív Hyper-Threadingre visszavezethető kisebb akadások.

A probléma alapja a driver aktív rejtett szálaira vezethető vissza, amelyek pont úgy harcolnak az erőforrásért, ahogy a programszálak. Ez Hyper-Threading mellett elképzelhető, hogy a megszokottnál károsabb hatást fejt ki, mivel ennél a technikánál két processzorszál osztozik egy processzormagon, tehát konkrétan ugyanazt az erőforrást szeretnék használni. Ez elvben jó, hiszen biztos van mit futtatni az adott magon, de bizonyos szituációkban hátrányt is jelenthet, és erre a Frostbite működése az egyik példa. Ez a motor rendkívül jól kihasználja a többszálú processzorokat, de ugyanakkor az alkalmazásnak semmilyen kontrollja nincs a driver aktív szálai felett, tehát az olyan szituációra nem lehet igazán jól felkészülni, amikor a grafikus driver bombázza feladatokkal azt a két szálat is futtató processzormagot, ahol a leképzésért felelős számítások történnek. Mantle mellett csupán annyi változott, hogy nem futnak a háttérben rejtett szálak, így a fejlesztők számára a látható erőforrások mindig rendelkezésre állnak.

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