Potřebujeme Mantle? Ulehčit práci procesoru lze i s OpenGL, tvrdí Nvidia

0

Většina her pro PC je dnes vyvíjena s využitím knihoven DirectX od Microsoftu. Jakožto vysokoúrovňové API se pro něj dobře programuje, vysoká režie ale způsobuje, že výkonné grafické akcelerátory v náročných hrách brzdí procesor. AMD prezentuje nově vytvořené API Mantle jako protiváhu k Direct3D a o špetku lehčímu, leč stále těžkopádnému OpenGL: rozhraní nízkoúrovňové, inspirované konzolemi (jejichž procesorová jádra architektury Jaguar nemají výkonu na rozdávání), které umožňuje se stejným procesorem vykonat až devítinásobek draw calls.

Nvidia se k Mantle nijak nevyjadřuje a mohlo by se zdát, že se jí problematika netýká. Schopnost Radeonů dosahovat díky Mantle vysokého výkonu i se slabým procesorem, byť v omezeném počtu her, by ale pro Nvidii představovalo nepříjemnou konkurenční nevýhodu. Nyní Nvidia konečně zaujala k problému své stanovisko. Shrnout by se dalo asi tak, že Mantle není potřeba, když se vývojáři naučí využívat plný potenciál existujících rozhraní.

Na konferenci Steam Dev Days, kterou pořádalo Valve, přednesli Cass Everitt a John McDonald z Nvidie příspěvek pojmenovaný Beyond Porting: How Modern OpenGL can Radically Reduce Driver Overhead. V něm představili přítomným vývojářům několik funkcí z rozhraní OpenGL (jmenovitě ARB_buffer_storage a ARB_multi_draw_indirect), jejichž správným použitím lze omezit počet „nákladných“ operací, snížit objem komunikace mezi grafickým ovladačem a OpenGL na čtvrtinu (!) a vykreslit 5–30× více odlišných objektů za sekundu.

Má to bohužel i své stinné stránky. Za prvé je použití těchto příkazů v současné době trochu komplikované (což prý snad bude brzy napraveno) a za druhé sice odlehčí procesoru, autoři prezentace ale přiznávají, že na výkon grafické karty mohou mít mírně negativní dopad. No a nakonec nesmíme zapomínat na to, že většina herních studií dává přednost DirectX. OpenGL se netěší příliš velké oblibě: z významných studií jej používají pouze Valve a id Software (jehož šéf John Carmack před třemi lety utrousil, že Direct3D je lepší rozhraní a u OpenGL studio zůstává jen ze setrvačnosti).

V oblasti méně známých béčkových titulů a nezávisle vyvíjených her se ale OpenGL stále jakž takž drží. Zastání Valve, které se snaží přimět vývojáře a vydavatele k podpoře Linuxu, má dost velkou váhu samo o sobě. A zatímco Mantle reálně nikdo kromě AMD nepodporuje, OpenGL běhá na grafických akcelerátorech všech výrobců, takže jeho efektivní používání je win-win situace pro všechny. Hlavně pro výrobce pomalých procesorů (k nimž se může počítat i Nvidia s Tegrou). Jenže stejně jako se id Software nevyplatí zahodit všechno již hotové na OpenGL, ostatní studia jen velmi těžko někdo přesvědčí opustit Direct3D. Přesto chválíme Nvidii za přátelské šťouchnutí do konkurence, která sama oblibou tvrdí, že přínosů proprietárního řešení lze dosáhnout i s využitím otevřených průmyslových standardů.

 

Zdroj: Dark Side of Gaming, SlideShare

Ohodnoťte tento článek!