AMD FX Processors and DirectX 12

Add Your Comments

Today we’re going to have a look at the benefits of DirectX 12 (henceforth DX12) and system performance when using an AMD FX processor. To best explain why Windows 10 and DX12 will have such an impact on multi-core CPUs we need to take a closer look at what it’s doing behind the scenes.

What is DirectX 12

DirectX is software developed by Microsoft which is used to coordinate traffic through the various components of your PC using a collection of Application Programming Interfaces (APIs) to handle the video and audio rendering on a Windows based system. In short it’s a key piece of software for any PC gamer. Up until the introduction of DX12 this was a very linear operation and most multi-core CPUs were under-utilized in games. This is where DX12 shines. With this new interface the applications are given more direct control over the hardware to better utilize the GPU and it’s processing power, which in turn reduces the overhead on the CPU. One other BIG advantage for DX12 is it’s ability to spread the work across multiple cores of a CPU instead of directing the majority of the workload to a single core. So what does this mean?

Calls Per Second

Your GPU works under the direction of the CPU using the APIs as a “bridge”. Your CPU is telling the GPU to draw so many times per second. With DX12 many of these calls are handled at the GPU level for simple, parallel, low level tasks. This lightens the load to the CPU and, using a new level of multi-threaded 3D rendering, it’s opening up demand to the entire CPU and dramatically increasing the number of draw calls per second. All this means we should receive higher frame rates and better image quality. This sounds very exciting for AMD FX users, finally games will be able to leverage the added performance from the additional cores. Keep in mind this only works for DX12 game titles. At this time there aren’t too many titles available, but this will change as developers take advantage of the new software going forward. I should note, recently more DX11 titles were doing a much better job of using multiple cores such as Far Cry 4 and GTA V.

Here’s an example of DX12 compared to DX11 in calls per second using 3DMark’s API test. As you can see below in the FX 6350 shot, DX11 multi-thread gave 2.36 million calls/second. Going to DX12 this figure has jumped dramatically to 16.65 million calls/second. One thing to note is CPU speed, or the number of cores, really doesn’t effect the number of draw calls in DX12 results. This is GPU driven not CPU.

FX 6350 @ 5.0 with GTX980Ti

FX 6350 @ 5.0 GHz with GTX 980Ti

 FX 9370 @ 5,0 with GTX 980Ti

FX 9370 @ 5.0 GHz with GTX 980Ti

FX 9370 Stock with GTX 980Ti

FX 9370 @ Stock with GTX 980Ti

Bringing it Together

So we can see from the example above, DX12 is doing a fantastic job behind the scenes. One thing to keep in mind, this doesn’t have a direct correlation to frames per second (FPS), but does help alleviate the CPU “bottleneck” we have seen in the past when titles rely on one or two CPU cores. Coming up I’ll be using Ashes of the Singularity to show what gains can be realized from this new interface. I’d like to add, Ashes of the Singularity does a decent job using multiple cores, even in the DX11 mode, as you’ll see in the shots coming up. The Stock FX 9370 at 4.4 GHz gets a couple more FPS than the 4.6GHz FX 6350 in DX11. I can only attribute that to the two extra cores.

System

Processors AMD FX 6350 and FX 9370
Motherboard ASUS 970 Pro Gaming/Aura
Memory 2X4 GB G.Skill Sniper 2133 CL11
Graphics Card EVGA K|NGP|N GTX 980 Ti
Power Supply Leadex Superflower 1K Platinum
Cooling AMD Wraith cooler and Custom Water
Software Ashes of the Singularity

Results

Up first is the FX 6350. Both tests were performed using the new Wraith cooler from AMD. I did a side by side comparison of DX11 VS DX12. All tests were done using the default benchmark settings at 1080p.

FX 6350 Stock DX11

FX 6350 Stock DX11

stock 6350-ti dx12

FX 6350 Stock DX12

FX 6350 4.6 GHz DX11

FX 6350 4.6 GHz DX11

FX 6350 4.6 GHz DX12

FX 6350 4.6 GHz DX12

As you can see, the advantages of DX12 become quite apparent, especially at stock speeds, in a 25% gain in overall FPS from 32 FPS in DX11 to 40 FPS in DX12. Once overclocked the gains, although still there, aren’t quite as large with only a 13% advantage going to DX12. With 39.6 FPS in DX11 to 44 FPS in DX12.

Let’s move on to the Octo-core FX 9370. For this test I opened things up a bit. I have to say though I was impressed once again with the Wraith cooler. I was able to run the FX 9370 at stock speeds on the 970 Pro Gaming/Aura using just the Wraith cooler and had a 13 °C thermal margin during the AMD stability test. That wasn’t going to cut it for my second test at 5.0 GHz, though. This one was done under my custom water loop.

FX 9370 stock with GTX 980Ti

FX 9370 Stock DX11

FX 9370 5.0 GHz with GTX 980Ti

FX 9370 Stock DX12

FX 9370 @ 5.0GHz with GTX 980Ti

FX 9370 @ 5.0 GHz DX11

FX 9370 @ 5.0GHz with GTX 980Ti DX12

FX 9370 @ 5.0 GHz DX12

As you can see above adding two additional cores gives another boost in FPS for the FX 9370. At the stock speed of 4.4 GHz it’s already out performing the FX 6350 at 4.6 GHz returning 41.6 FPS in DX11 and 48 FPS in the DX12 test. Once again we see an advantage of 17% in DX12. Moving the slider up to 5.0 GHz, the FX 9370 gave us 46 FPS in DX11 and 52 FPS in the DX12 test. At the increased CPU speed we still had a 13% gain in FPS using DX12, just as we saw with the FX 6350 .

Overall this is quite exciting. I do a lot of benchmarking, and, as such, I’m always looking for ways to squeeze more out of my system. Most times, getting this kind of performance boost would require new hardware. Not so with Windows 10 and DX12 gaming. Using Windows 10 with DX12 is like getting a free performance boost. At least until the end of this month, that is. The Windows 10 free upgrade is coming to a close July 29th, 2016 so if this is something that interests you, you had better act fast.

Virtual Reality

Another new technology to the gaming arena is Virtual Reality (VR). In a nutshell VR is a head mounted display that attempts to put the user in the game. This technology generates two images simultaneously one for the right eye and one slightly different for the left which “tricks” your brain into believing you’re somewhere else. Their goal is to create a life-sized, 3D environment so no matter which way you turn your head the screen follows. Without the boundaries of a computer screen, combined with the physical aspect of turning it appears as if the zombie behind you is actually going to catch you.

AMD has done some in-house testing using the SteamVR benchmark. The SteamVR performance test was developed by Valve who collaborated with HTC to deliver the Vive VR headset. Here’s a chart of AMDs results:

AMD VR In-House Testing

AMD VR In-House Testing

In my own testing, the FX 6350 returned a “very high” result even at stock when paired with a high-end GPU. Overclocking the CPU didn’t change the output of the benchmark since it returns a quality rating not an actual score.

vr6350 stock 980ti

SteamVR with FX 6350/GTX 980Ti

When it comes to the Oculus Rift they don’t have an “official” minimum recommendation for AMD CPUs and there isn’t a benchmark readily available to test with. Since I don’t have a headset, I found this article by PCGamer: Build an Occulus Rift PC on the Cheap in which they selected the FX 6350 paired with an AMD R9 390 and did some real-time testing of the system. This is what they had to say:

In my eyes, this “minimum” spec build will get the job done as far as VR gaming is concerned. However, as more demanding games start to come down the pipe, this calculus could change. But for now, the R9 390 and the FX 6350 clear the launch tower.

It’s apparent AMD will be able to hold its own on the VR front as long as you have a graphics card with some horsepower.

Conclusion

With the development of software that’s taking advantage of the multi-core CPUs, AMD FX is getting a second wind. When Bulldozer first hit the scene, AMD tried something new assuming that more cores would provide more performance. The problem was, software didn’t take advantage of extra cores; Windows 7 even left them floundering. After a couple of “Hotfixes” to improve scheduling performance did improve slightly, but still not to the levels AMD expected. This didn’t mean you couldn’t game with an AMD CPU. In fact, my main gaming rig is driven by an FX 9370 and a pair of GTX 770s and I haven’t had any performance issues. Not everyone had the same experience though, as there are still some popular games out there which rely on one or two fast cores and those users don’t feel the same as I do.

The introduction of Windows 10 and DX12 will improve the gaming performance by leveraging the additional cores and keep this platform viable into the near future. AMD still has its place.

-Shawn Jennings (Johan45)

Leave a Reply

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

Discussion
  1. AnubisOne
    This was a great article to read. Glad to hear my FX CPU will still be able to game on, possibly better! Can't wait to see what it can do with DX 12.


    Even with DX12 both your FX processors will bottleneck your GPUs to some extent. The FX-9370 used in the article was bottlenecking the GTX 980 Ti (a 12% OC resulted in ~10% gain in DX11 and ~9% gain in DX12), and here you can see an OC'd FX-6300 bottlenecking the RX 480 compared to an OC'd i7-6700K even in DX 12 games like AotS: https://www.youtube.com/watch?v=B58ciXUTlA8

    Not that the FX CPUs are obsolete, and DX12 is definitely a welcome improvement (as is Vulcan), but there's no denying the FX-line is starting to feel it's age and the DX12 is not exactly a fountain of youth. More like a simple nip and tuck.
    trents
    Does this apply to those older Nvidia and AMD GPUs that are DX11 natively but through API magic are made DX12 compatible?


    Possibly to some extent, but it depends on the GPU and manufacturer. Different generations may support different feature levels, even though they're marketed as DX12 compatible. See for example: http://www.extremetech.com/extreme/207598-demystifying-directx-12-support-what-amd-intel-and-nvidia-do-and-dont-deliver
    AMD developed a low level API to implement DirectX 12 capability or it's equivalent in pre DirectX GPUs and called it Mantel. Mantel was short lived and succeeded by Vulcan. At the time, Nvidia had an equivalent technology to Mantel but I forget what it was called. Both technologies extended backwards a generation or two in their GPU product lines. But both what AMD and Nvidia were doing then was a bridge technology as GPUs with native DirectX 12 capability were not yet out. Do either of these technologies still survive and if so, are they as good as native DirectX 12? See this: https://en.wikipedia.org/wiki/Vulkan_(API)
    That I don't know Trents but I do know my 770s aren't on Nvidias list for DX12 cards. Not sure if it was intentional or oversight. Seems like everything else is down to some 4xx series but I do know trying to run SLI in Win 10 is a real headache and the new Time Spy DX12 bench would crash every time. I have swapped in my 980 now.
    Thanks guys, there's a new DX12 benchmark from 3DMark called TimeSpy. We've been posting results here if you're interested. http://www.overclockers.com/forums/showthread.php/773995-3DMark-TimeSpy-released!-Post-up-your-scores!
    This was a great article to read. Glad to hear my FX CPU will still be able to game on, possibly better! Can't wait to see what it can do with DX 12.
    My daughter will be a happy camper when she reads this. She's getting my Vishera rig. Except now I have to buy her a better graphics card. LOL