Kiderült a DirectX Raytracing sebessége

Sok jóra nem érdemes számítani, és az sem véletlen, hogy az aktuális demonstrációk nem merészkednek Full HD fölé.

A Microsoft a hét elején mutatta be a DirectX Raytracinget, aminek a teljesítményéről egyelőre nagyon keveset tudni. A GDC-n azonban a linkelt cikkben látható demonstrációt tervező Remedy elárulta, hogy egy Volta architektúrára épülő csúcs-GPU-n (valószínűleg a Titan V-re gondoltak, hiszen az NVIDIA csak ezt szállítja a játékfejlesztőknek), 1920x1080 pixeles felbontáson, pixelenként egy sugarat, virtuálisan maximum 4 méteres távolságig kilőve a számítások nagyjából 5 ms-ig tartanak.

A Remedy szerint a teljesítmény meglehetősen arányosan esik, így pixelenként 16 sugár, már 80 ms-ba kerül, de ez úgyis vállalhatatlan. A virtuális távolsággal sem érdemes nagyon elszállni, az is igen kellemetlenül érinti a teljesítményt, nagyjából 3-4 méter az optimális. Ez azt is jelenti, hogy a DirectX Raytracing egyelőre csak nagyon szűk térben ad igazán jó eredményt, így a pályák elkészítésénél figyelniük kell a fejlesztőknek, hogy a játéktér ne legyen túl nagy.

4K-s felbontás egyébként még a Volta architektúrára épülő csúcs-GPU-n is elérhetetlen, mivel ilyenkor már közel 20 ms-ot emészt fel a számítás, vagyis a 60 fps már semmiképp sem lesz meg, és a 30 fps-re vonatkozóan is rezeg a léc, hiszen minden más raszterizálással kapcsolatos dolgot nagyjából 10 ms alatt kell megoldani. Utóbbi nem egyszerű feladat, hiszen ehhez egy komolyabb programon belül akár 20 ms is kevés lehet, így DirectX Raytracing alkalmazása mellett azt is érdemes megfontolni, hogy a játék általános minősége legyen visszavéve az előző évekhez képest. Viszonylag sok sebességet lehet egyébként azzal nyerni, ha relatíve kevés animált objektum van a játéktérben.

A GDC-n egyébként volt arra utalás, hogy az elérhető legjobb Volta GPU nagyjából 6-7-szer gyorsabb a DirectX Raytracingben a leggyorsabb Pascal architektúrára épülő lapkánál, bár ez nagymértékben függ a terhelés jellegétől is. Ez a különbség viszont azt jelenti, hogy egy Titan Xp nagyjából 30 ms alatt számolja ki a sugárkövetést használó effekteket, méghozzá 1920x1080 pixeles felbontáson, pixelenként egy sugárral, virtuálisan maximum 4 méteres távolságig. És akkor még semmi mást nem csinált, vagyis így elérni a 30 képkocka/másodperces tempót szinte lehetetlen. Az 1280x720 pixeles felbontás viszont célozhatónak tűnik, bár itt is sok kompromisszumot kell kötni, és az NVIDIA felhasználóinál fellelhető hardverek 99%-án ez is kevés lesz. Az AMD megoldásairól nincs adat, elsődlegesen azért, mert a vállalat külön meghajtót ír majd az egyes GCN architektúrára épülő Radeonokra, így ezek nem a fallback layert használják majd, ahogy például a Pascal, Maxwell és Kepler dizájnokra épülő GeForce-ok. A meghajtón keresztül a DirectX Raytracing bizonyos részei gyorsíthatók, de itt nincs egzakt érték, hogy mennyivel. Ez leginkább az adott gyártó hardveres és szoftveres implementációjától függ. Szimplán a fallback layert használva valószínűleg a Radeon RX Vega 64 sem teljesítene nagyon másképp, mint egy Titan Xp.

Általános mentőöv lehet egyébként az aszinkron compute. A Microsoft emiatt kötötte a DirectX Raytracinget a DirectX 12-höz, mivel az új kiegészítés alapvetően compute shadereket futtat. Ezeket rendkívül jól be lehet illeszteni az olyan grafikai munkák mellé, amelyek nem igazán terhelik a multiprocesszorokat, vagyis amíg a raszterizációval kapcsolatos munka a GPU-n aktív, addig a szabad ALU-kon lehet sugárkövetést számolni, ami sokat segít az egész rendszer teljesítményének. Ez a Microsoft szerint azért is egy reális terület, mert a mai videojáték-motorok nem igazán kamatoztatják még az aszinkron compute-ban rejlő lehetőségeket. A DirectX Raytracing azonban a hagyományos raszterizációs futószalagtól eléggé független ahhoz, hogy nagy hatékonysággal kihasználható legyen a mai modernebb hardverek felépítése az aszinkron compute szempontjából.

A fentiek a DirectX Raytracing kapcsán nem hangzanak túl jól, de minden ilyen dolgot el kell kezdeni valahol. A Microsoft is elmondta, hogy erre hosszabb távú projektként tekintenek, ami igazából nem baj. A hardverek úgyis gyorsabbak lesznek, valószínűleg a rendszer is fejlődni fog, tehát idővel ez tényleg reális alternatívává válik. A DirectX 12 terjedését is felgyorsíthatja, ami a Microsoft számára azért is jó, mert így a maradék Windows 7-hez ragaszkodó játékost is át tudják erőszakolni Windows 10-re. Itt arra kell elsődlegesen gondolni, hogy maga a DirectX Raytracing implementálása akkor tekinthető relatíve egyszerűnek, ha az adott videojáték-motor már eléggé a DirectX 12-re épül. Ilyen formában a DirectX 11-es leképező folyamatos karbantartása erősen költségessé válik, így a legtöbb DirectX Raytracing irányába néző fejlesztő szimplán el fogja hagyni, minthogy aránytalanul sok pénzt fektessen egy amúgy halott irányba. Ezzel tehát akkor is nyer a Microsoft, ha az adott játékba bitang egyszerű effektek kerülnek sugárkövetéssel, mert végre meg tudják mozdítani a Windows 7-hez egyelőre makacsul ragaszkodó felhasználótábort.

Azóta történt

Előzmények

Hirdetés