DirectX 12 vs. DirectX 11

Now that we’ve had the chance to look at DirecX 12 performance, let’s take a look at things with DirectX 11 thrown into the mix. As a reminder, while the two rendering paths are graphically identical, the DirectX 12 path introduces the latter’s multi-core scalability along with asynchronous shading functionality. The game and the underlying Nitrous engine is designed to take advantage of both, but particularly the multi-core functionality as the game pushes some very high batch counts.

Ashes of the Singularity (Beta) - High Quality - DirectX 11 vs. DirectX 12

Given that we had never benchmarked Ashes under DirectX 11 before, what we had been expecting was a significant performance regression when switching to it. Instead what we found was far more surprising.

On the RTG side of matters, there is a large performance gap between DX11 and DX12 at all resolutions, increasing with the overall performance of the video card being tested. Even on the R9 290X and the 7970, using DX12 is a no brainer, as it improves performance by 20% or more.

The big surprise however is with the NVIDIA cards. For the more powerful GTX 980 Ti and GTX 780 Ti, NVIDIA doesn’t gain anything from the DX12 rendering path; in fact they lose a percent or two in performance. This means that they have very good performance under DX11 (particular the GTX 980 Ti), but it’s not doing them any favors under DX12, where as we’ve seen RTG has a rather consistent performance lead. In the past NVIDIA has gone through some pretty extreme lengths to optimize the CPU usage of their DX11 driver, so this may be the payoff from general optimizations, or even a round of Ashes-specific optimizations.

Ashes of the Singularity (Beta) - High Quality 1920x1080 - DirectX 12 Perf. Gain

Breaking down the gains on a percentage basis at 1080p, the most CPU-demanding resolution, we find that the Fury X picks up a full 50% from DX12, followed by 29% and 23% for the R9 290X and 7970 respectively. Meanwhile at the opposite end of the spectrum are the GTX 980 Ti and GTX 780 Ti, who lose 1% and 3% respectively.

Finally, right in the middle of all of this is the GTX 680. Given what happens to the architecturally similar GTX 780 Ti, this may be a case of GPU memory limitations (this is the only 2GB NVIDIA card in this set), as there’s otherwise no reason to expect the weakest NVIDIA GPU to benefit the most from DX12.

Overall then this neatly illustrates why RTG in particular has been so gung-ho about DX12, as Ashes’ DX12 path has netted them a very significant increase in performance. To some degree however what this means is a glass half full/half empty full situation; RTG gains so much from DX12 in large part because of their poorer DX11 performance (especially on the faster cards), but on the other hand a “simple” API change has unlocked a great deal of GPU power that wasn’t otherwise being used and vaulted them well into the lead. As for NVIDIA, is it that their cards don’t benefit from DX12, or is it that their DX11 driver stack is that good to begin with? At the end of the day Ashes is just a single game – and a beta game at that – but it will be interesting to see if this is a one-off situation or if it becomes recurring.

DirectX 12 Multi-GPU Performance The Performance Impact of Asynchronous Shading
Comments Locked

153 Comments

View All Comments

  • CiccioB - Sunday, February 28, 2016 - link

    The so called ASync Compute implementation AMD has in HW IS NOT PART OF DX12 SPECIFICS.
    I hope that is clear written that way.

    DX12 describe the use of multiple threads flying at the same time. nvidia does support them, with some limitations in number and preemption capabilities with respect to what AMD HW can.
    This however does not mean that nvdia HW does not support Async compute or it is out of specs. AMD just made a better implementation of it.
    Think it as it was for tessellation: nvidia implementation is way better than AMD one, but the fact that AMD can't go over certain values does not mean they are not DX11 compliant.

    What you are looking here is a benchmark (more than a game) that stresses the multi-threaded capabilities of AMD HW. You can see that AMD is in a better position here. But the question is: how many other games are going to benefit from using such a technique and how many of them are going to implement such a heavy duty load?

    We just don't know now. We have to wait to see if this technique can really improve performance (and thus image quality) in many other situations or it is just a show off for AMD (that has clearly partnered to make this feature even more heavy on nvidia HW).
    When nvidia will star making developers using their HW accelerated Voxels we will start to see what feature is going to hit worse one another's HW and which is going to give better image quality improvements.

    For now I just think this is a over used feature that like many other engine characteristics in DX11 is going to give advantage to one side rather than the other.
  • anubis44 - Thursday, February 25, 2016 - link

    That's because it never will be. You can't enable missing hardware.
  • xTRICKYxx - Wednesday, February 24, 2016 - link

    I hate to be that guy, but I think it is time to dump the X79 platform for X99 or Z170.
  • Ryan Smith - Wednesday, February 24, 2016 - link

    Yep, Broadwell-E is on our list of things to do once it's out.
  • Will Robinson - Wednesday, February 24, 2016 - link

    NVidia got rekt.
    DX12 lays the smak on Chizow's green dreams.
  • Roboyt0 - Wednesday, February 24, 2016 - link

    Do you have 3840x2160 results for the R9 290X per chance?
  • Ryan Smith - Wednesday, February 24, 2016 - link

    No. We only ran 4K on Fury X and 980 Ti.
  • Stuka87 - Wednesday, February 24, 2016 - link

    Really hating the colors of the graphs here. All grey, legend has one blue item, but no blue on the graph....
  • Ryan Smith - Wednesday, February 24, 2016 - link

    It's something of a limitation of the CMS. The color bar is the average; the grey bars are in the same order as they are in the legend: normal, medium, and heavy batch counts.
  • Mr Perfect - Thursday, February 25, 2016 - link

    I was wondering what was up with that. Maybe someone could do a little MS-Paint bucket fill on the images before publishing? :)

Log in

Don't have an account? Sign up now