Oxide publiceerde een tijdje geleden een DirectX 12-benchmark van zijn game Ashes of the Singularity. Daarin viel op dat AMD-videokaarten veel meer profiteerden van de nieuwe API, waardoor de Radeon R9 390X in de test bijna gelijk presteerde aan Nvidia's GeForce GTX 980. Nvidia verspreidde bij de release dan ook een persbericht waarin werd uitgelegd dat de benchmark geen goede weergave biedt van de prestaties die we later in games kunnen verwachten, maar nu blijkt dat Nvidia juist heeft geprobeerd om bepaalde functies uit de benchmark te laten slopen omdat Nvidia's architectuur er niet goed mee overweg kan.
Zelfs de nieuwste Maxwell-videokaarten zijn namelijk niet volledig uitgerust met alle DirectX 12-features, net zoals elke architectuur tot nu toe. Onder andere asynchrone bewerkingen kunnen niet worden uitgevoerd, terwijl AMD daar bij het ontwerpen van Graphics Core Next al rekening mee heeft gehouden en dat nu dus zonder problemen kan implementeren. Deze feature zou AMD's hardware zo veel beter later presteren in DirectX 12, volgens Oxide.
Asynchrone shaders houden in dat berekeningen van verschillende opdrachten tegelijkertijd kunnen worden uitgevoerd, in plaats van één voor één. Zo wordt de GPU altijd volledig bezig gehouden, ook tijdens korte idle-tijden in een berekening. Onder de streep is het totaal van berekeningen daardoor eerder klaar en zijn de prestaties dus hoger.
Met asynchrone shaders kunnen er meerdere 'streams' tegelijkertijd worden verwerkt.
Nvidia ondersteunt die feature dus niet, maar de driver neemt wel dergelijke instructies aan. Die lopen veel trager op Nvidia-hardware, omdat er een omweg moet worden gezocht. Toen Oxide dit probleem rapporteerde aan Nvidia, kwamen ze erachter dat de feature hardwarematig helemaal niet zit ingebakken. Nvidia oefende druk uit om de functie uit de benchmark verwijderd te krijgen, maar daar wilde Oxide niet aan. "I think they took it a little too personally", schreef een medewerker van Oxide op een forum, verwijzend naar de PR-afdeling van het groene kamp.
Terwijl de twijfels oprijzen over de échte ondersteuning van Nvidia voor DirectX 12 - is 'feature level 12_1' wel echt hardwarematig geïmplementeerd, of zijn er softwaretrucjes gebruikt om het vinkje op de doos te krijgen - draait AMD's PR op volle toeren. Het belang van asynchrone shaders kan voor AMD natuurlijk niet genoeg worden benadrukt, al blijft het wachten op echte games om te kijken hoe groot die invloed daadwerkelijk is.
Oxide meent in ieder geval niet te zijn beïnvloed door AMD. "Personally, I think one could just as easily make the claim that we were biased toward Nvidia as the only ‘vendor’ specific code is for Nvidia where we had to shutdown async compute. By vendor specific, I mean a case where we look at the Vendor ID and make changes to our rendering path. Curiously, their driver reported this feature was functional but attempting to use it was an unmitigated disaster in terms of performance and conformance so we shut it down on their hardware."
Ashes of the Singularity is een nieuwe oorlogssimulator van Oxide.
Bron: Overclock.net