AMD: No GPU with full support for DX12, yet
After some stunning news some time back where the R9 290X was capable of matching the GTX 980 Ti in Ashes of the Singularity‘s DirectX 12 benchmarks, it has come to our attention that NVIDIA’s Maxwell architecture lacks support for Async Compute, a standardized API-level feature added to Direct3D by Microsoft, which allows an app to better exploit the number-crunching resources of a GPU, by breaking down its graphics rendering tasks. The problem here is not that it doesn’t support it, but the GeForce drivers tell the system that async compute is supported, leading to an unmitigated disaster when the feature is called for by an application, e.g. Ashes of the Singularity.
Oxide was building the AotS benchmark, taking advantage of async compute, before it encountered the unmitigated disaster when they tried to use it. During to course of its developer correspondence with NVIDIA to try and fix this issue, it learned that “Maxwell” doesn’t really support async compute at the bare-metal level, and that NVIDIA driver bluffs its support to apps. NVIDIA instead started pressuring Oxide to remove parts of its code that use async compute altogether.
AMD’s Robert Hallock responded with a Facebook post as follows.
However he then followed up with a reply in a Reddit thread on the DX12 async shader/compute feature that is missing from NVIDIA’s graphics cards, and then claimed that there is no such thing as “full support” for DX12 on the market today. Which obviously was already known as AMD never claimed full DX12 support on all feature levels with their GCN architecture.
“I think gamers are learning an important lesson: there’s no such thing as “full support” for DX12 on the market today.
There have been many attempts to distract people from this truth through campaigns that deliberately conflate feature levels, individual untiered features and the definition of “support.” This has been confusing, and caused so much unnecessary heartache and rumor-mongering.
Here is the unvarnished truth: Every graphics architecture has unique features, and no one architecture has them all. Some of those unique features are more powerful than others.
Yes, we’re extremely pleased that people are finally beginning to see the game of chess we’ve been playing with the interrelationship of GCN, Mantle, DX12, Vulkan and LiquidVR.”
When somebody asked what are the aspects of DX12 that the FuryX is missing, Hallock replied and listed them.
“Raster Ordered Views and Conservative Raster. Thankfully, the techniques that these enable (like global illumination) can already be done in other ways at high framerates (see: DiRT Showdown).”
Pokdepinion: AMD is playing the good guy here with not taking advantage of the situation but actually explaining DX12 support to consumers. That, however, doesn’t change the fact that NVIDIA has lied regarding its DX12 features. We will see how NVIDIA gets out of this mess.