Vyšel první DirectX12 benchmark. Lépe dopadají Radeony, Nvidie test zpochybňuje
Nvidia rozeslal redakcí oficiální noticku, ve které poukazuje na dva důvody, pro které považuje výsledky za „neplatné“, benchmark nepovažuje za „správnou metriku DirectX 12 [výkonu]“ a závěrem konstatuje, že lepší testy pro DirectX 12 teprve přijdou.
Co jí vlastně vadí? Za prvé tvrdí, že hra obsahuje bug, který v DirectX 12 způsobuje, že bez ohledu na nastavený preset je zapnutý anti-aliasing (MSAA) 2×. Za druhé poukazuje na to, že hra ještě není vydaná, může se do vydání změnit a výsledky testu (alpha verze) tudíž neodrážejí výkon žádné reálné hry.
Nařčení Nvidie naštvalo Dana Barkera, spoluzakladatele Oxide Games (která je za hru zodpovědná). Tvrzení, že Ashes of the Singularity obsahuje MSAA bug, který činí výsledky neplatnými, smetl ze stolu:
„Náš kód byl posuzován Nvidií, Microsoftem, AMD i Intelem. Prošel velmi důkladným D3D12 validačním procesem na systému, který nám poskytl Microsoft a který je navržen speciálně k odhalení chybného použití [vlastností DX12]. Všichni výrobci měli přístup ke zdrojovému kódu po více než rok a můžeme potvrdit, že jak Nvidia tak AMD se denně zabývají změnami, které provádíme a že naše aplikace běží na jejich systémech po měsíce. Je třeba zdůraznit, že způsob implementace MSAA se v DX12 oproti DX11 nezměnil. Jakékoli tvrzení, které říká, že aplikace obsahuje MSAA bug, by mělo být ignorováno.“
Barker dále konstatoval, že není důvod benchmark zpochybňovat na základě toho, že ještě nedošlo k vydání plné verze hry. Tento postup, kdy se test vydá před samotnou hrou je běžnou praxí. Byť je pravda, že se hra může do vydání ještě vyvíjet, je stejně tak pravdou, že se jako každá moderní hra bude vyvíjet i po vydání, což se týká prakticky všech titulů a nikdo to nebylo považováno za důvod k ignorování výkonnostních testů.
Vzhledem k tomu, že se je možné narazit na řadu testů Ashes of the Singularity, není problém dohledat screenshoty a podívat se na detaily s různým nastavením:
Obrázky znázorňují detail ze hry (4× zvětšený, aby byly rozdíly zcela zřetelné). Nahoře vlevo vidíte DirectX 11 verzi (která ani podle Nvidie MSAA bugem nedisponuje) s vypnutým anti-aliasingem. Prohlédněte si zeleně zvýrazněný objekt - jeho černá silueta je oproti šedému pozadí jasně zubatá, jak se při vypnutém anti-aliasingu dá čekat. Vpravo je pak zapnutý anti-aliasing (MSAA) 4× a je zde patrné, vyhlazení (dopočtené středně šedé pixely mezi černými zuby). To jen pro lustraci rozdílu vypnutého a zapnutého anti-aliasingu.
DirectX 12: vlevo vypnutý MSAA, vpravo MSAA 2×
Nyní pojďme na rozdíl čistě v DirectX 12. Vlevo je snímek s vypnutím anti-aliasingem, opět jsou na černé siluetě před šedým pozadím dobře vidět výrazné zuby. Vpravo je snímek se zapnutým anti-aliasingem (MSAA) 2×, přechod je hladší s přechodovými odstíny. Je tedy zjevné, že MSAA i pod DirectX 12 funguje jak má.
Nakonec výkonnostní testy. Výsledky jsou v podstatě očekávatelné. V DirectX 11 verzi s převahou vítězí Nvidia. Je to dáno tím, že AMD neřešila overhead původního API optimalizací ovladačů, ale návrhem vlastního API (Mantle), kterým se snažila přesvědčit i ostatní k přepracování API pro vyšší efektivitu a střídmější nakládání s procesorovým výkonem. V DirectX 12 naopak vede hardware AMD, byť je převaha spíše mírná:
Souhrnný graf webu PCPerspective ukazuje, že GeForce GTX 980 je v DirectX 11 (zeleně) rychlejší než Radeon R9 390X, ale v DirectX 12 (modře) je pomalejší než Radeon.
Vyšší liga dopadá podobně, ComputerBase otestoval Radeon Fury X vůči GeForce GTX 980 Ti a opět jde o tentýž scénář: V DirectX 11 jednoznačně vede GeForce, v DirectX 12 se mírně výš dostává Radeon. Co je patrné například z testu ve 4k rozlišení a čeho si všimlo více redakcí, je tzv. negativní škálování GeForce v některých situacích - výkon je v DirectX 12 nižší než v DirectX 11. Tento fenomén se neprojevuje vždy, v řadě nastavení je výkon v DirectX 12 vyšší (jak by se dalo čekat) nebo alespoň srovnatelný s DirectX 11, takže nelze tvrdit, že by za nižší výkon mohl herní bug v podobě stále zapnutého anti-aliasingu. Ten navíc podle Oxide Games (a též podle zjištění mnohých redakcí) neexistuje.
Výsledky jsou zkrátka takové, jaké jsou. V případě Nvidie nabízí stabilnější výkon DirectX 11, v případě AMD DirectX 12. Do vydání se může ještě mnohé změní, byť asi výraznější změny než hra doznají ovladače Nvidie.
ComputerBase, PCPerspective, ExtremeTech, Oxide, Nvidia