Home Gaming Why does DirectX 12 favour AMD right now?

Why does DirectX 12 favour AMD right now?

3 min read
23

AMD

The initial DirectX 12 tests, based on Ashes of the Singularity, are very heavily skewed in AMD’s favour. Some have blamed poor drivers on Nvidia’s part, others have said it’s an issue of the game not being optimised yet – but initial consensus seems to be that DirectX 12 gives more of a boost to AMD’s hardware than it does to Nvidia’s. It’s the complete opposite of the picture you get with DirectX 11; which considerably favours team green.

One GPU enthusiast thinks he has the answer. Overclock.net member ‘Mahigan’ believes that AMD’s hardware is far better at parallel processing than Nvidia’s, which is more attuned to serialised instructions. DirectX 12, which offers a console-like, to-the-metal approach relies on parallel instructions.

“nVIDIA, on the other hand, does much better at Serial scheduling of work loads (when you consider that anything prior to Maxwell 2 is limited to Serial Scheduling rather than Parallel Scheduling). DirectX 11 is suited for Serial Scheduling therefore naturally nVIDIA has an advantage under DirectX 11, “ he says.

“People wondering why Nvidia is doing a bit better in DX11 than DX12. That’s because Nvidia optimized their DX11 path in their drivers for Ashes of the Singularity. With DX12 there are no tangible driver optimizations because the Game Engine speaks almost directly to the Graphics Hardware. So none were made. Nvidia is at the mercy of the programmers talents as well as their own Maxwell architectures thread parallelism performance under DX12.

The Developers programmed for thread parallelism in Ashes of the Singularity in order to be able to better draw all those objects on the screen. Therefore what we’re seeing with the Nvidia numbers is the Nvidia draw call bottleneck showing up under DX12. Nvidia works around this with its own optimizations in DX11 by prioritizing workloads and replacing shaders. Yes, the nVIDIA driver contains a compiler which re-compiles and replaces shaders which are not fine tuned to their architecture on a per game basis. NVidia’s driver is also Multi-Threaded, making use of the idling CPU cores in order to recompile/replace shaders. The work nVIDIA does in software, under DX11, is the work AMD do in Hardware, under DX12, with their Asynchronous Compute Engines.”

AMDDX12

AMD’s GCN architecture is made for parallel computing, which is probably why the company tried so hard to push for its own Mantle API (which has since been supplanted by Vulcan and DX12) It’s the same reasonably, essentially, that AMD’s cards underperformed with DX11.

“But what about poor AMD DX11 performance? Simple. AMDs GCN 1.1/1.2 architecture is suited towards Parallelism. It requires the CPU to feed the graphics card work. This creates a CPU bottleneck, on AMD hardware, under DX11 and low resolutions (say 1080p and even 1600p for Fury-X), as DX11 is limited to 1-2 cores for the Graphics pipeline (which also needs to take care of AI, Physics etc).

Replacing shaders or re-compiling shaders is not a solution for GCN 1.1/1.2 because AMDs Asynchronous Compute Engines are built to break down complex workloads into smaller, easier to work, workloads. The only way around this issue, if you want to maximize the use of all available compute resources under GCN 1.1/1.2, is to feed the GPU in Parallel… in comes in Mantle, Vulcan and Direct X 12.”

What it all means, beyond being technogobbledygook, is that AMD had parallel computing in mind, whereas Nvidia really just pushed more in the way of raw performance. Great for DX11, not so great for DX12. If it’s all true, it does mean that Nvidia’s going to have significantly change its architecture in the future if it wants the same sort of benefits that AMD gets.

To conclude, he says “Don’t count on better Direct X 12 drivers from nVIDIA. DirectX 12 is closer to Metal and it’s all on the developer to make efficient use of both nVIDIA and AMDs architectures.”

Last Updated: August 24, 2015

23 Comments

  1. FoxOneZA

    August 24, 2015 at 12:51

    As I said in a previous post, grab the R9 270x or 280 while it’s hot.

    Reply

    • HairyEwok

      August 24, 2015 at 12:58

      While it’s hot and will remain hot…. even in idle XD

      Reply

      • Ranting Raptor

        August 24, 2015 at 12:58

        BOOM

        Reply

      • Hammersteyn

        August 24, 2015 at 12:59

        BWAHAHAHA!

        Reply

      • FoxOneZA

        August 24, 2015 at 13:39

        Can’t touch that!

        Reply

      • Galbedir

        August 24, 2015 at 13:42

        *Looks at his R9270x running at 29-30’c idle’* *Looks at comment* *Looks at his R9270x* *Back at comment* *Confused*

        Reply

        • FoxOneZA

          August 24, 2015 at 13:43

          *Looks at R7 260X OC 29’c idle* *nod’s in agreement*

          Reply

  2. Gareth Runnalls

    August 24, 2015 at 12:54

    Good news for consoles then?

    Reply

    • Geoffrey Tim

      August 24, 2015 at 12:58

      I think it’s a bigger factor why the consoles run AMD, than just Nvidia saying “nope”

      Reply

      • Ranting Raptor

        August 24, 2015 at 12:59

        It really makes a lot more sense. Maybe AMD aren’t as bad at marketing as we thought. They planned it all out knowing parallel was the way it was going to go

        Reply

  3. Ranting Raptor

    August 24, 2015 at 12:57

    Good. I love my team green but it’s about time that AMD gets the upper hand. It drives competition.

    Still very keen on getting myself a 950 to replace my SLI 560Ti setup however. All the performance, none of the nuclear reactors needed to power it

    Reply

    • HairyEwok

      August 24, 2015 at 12:59

      At this rate we could see Nvidia get scared and bring HBM 2 sooner than we think.

      Reply

      • Ranting Raptor

        August 24, 2015 at 13:01

        HBM2 won’t help if it’s true that it’s a thing of parallel vs serial computing.

        That being said, if DX12 supports parallel programming better HyperThreading is going to get a serious performance boost!

        Reply

  4. Alien Emperor Trevor

    August 24, 2015 at 13:22

    My trusty 6950 is getting too old now. Not fully DX12 compatible. :/

    At least I’ve got a while before upgrading will be far more necessary.

    Reply

    • RinceThis

      August 24, 2015 at 14:49

      You need an upgrade. No, not your PC. YOU.

      Reply

      • Alien Emperor Trevor

        August 24, 2015 at 15:31

        *beep* *beep* does not compute

        Reply

  5. FoxOneZA

    August 24, 2015 at 13:41

    AMD:
    Unified memory architecture
    Low-Level API
    HBM

    Nvidia:
    Gameworks

    Reply

  6. Lardus-For the Emperor!

    August 24, 2015 at 15:12

  7. UltimateNinjaPandaDudeGuy

    August 25, 2015 at 11:43

    Going to be interesting to see next year round about this time what has happened in this space again.

    Would probably be doing my upgrade from my 780 GTX Lightning then

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Check Also

Turns out Microsoft will require a TPM chip for you to install Windows 11

Turns out the much hyped low-specs for Microsoft's new operating system might be more rest…