When gamers around the world first loaded Red Dead Redemption 2 on PC, we saw that the game runs on the Vulkan API by default but there is also the option to enable DirectX 12. In this article, we look at which API offers the best performance when tested with a RTX 2070 SUPER and RX 5700 XT.
For this investigation, we used Nvidia's RTX 2070 SUPER Founders Edition and AMD's reference RX 5700 XT graphics cards. We directly compared the cards' performance in the game when using Vulkan and DX12, looking first at the game's in-built benchmark, and then also at some real-world gameplay at the beginning of the story mode.
For our graphics settings, we manually configured all the settings to ‘high'. The graphics presets are somewhat dynamic and a little frustrating to use, so we wanted to make sure every single setting was the same for each run. For a look at the exact settings used, see the below screenshots:
In-built benchmark
There's no doubt DX12 offers the best gaming experience when looking at the game's built-in benchmark. Average frame rates are a little higher when using Vulkan, but by no more than 6% based on our testing.
The flipside to that is the 1% low performance when using Vulkan is very poor. For instance, at 1080p the 2070 SUPER saw its 1% lows improve by 16% when using DX12 compared to when we tested with Vulkan, and with the 5700 XT its 1% lows improved by 17%.
At 1440p, the difference is even greater, with the 2070 Super’s 1% low performance improving by 30%. Similarly, the 5700 XT saw its 1% lows improve by 29% when switching from Vulkan to DX12 . At this resolution, this is the difference between a choppy and pretty unpleasant gaming experience versus a much smoother one, so it is definitely a win for DX12.
Real-world gameplay
As for testing some real-world gameplay, here we see things look even worse for Vulkan. At 1080p, our 2070 SUPER saw it 1% lows improve by 29% when using DX12, and for the RX 5700 XT the 1% low performance was a whopping 48% better with DX12 instead of Vulkan.
Jumping up to 1440p, here we actually see average framerates ever so slightly better with DX12 than the Vulkan results, though for both cards the difference is less than a single frame. As for the 1% lows, by now I think we get the picture with DX12 offering a huge 53% uplift for the 2070 SUPER, while the 5700 XT saw its 1% lows improve by 58% with with DX12 compared to Vulkan.
Closing thoughts
I have to admit I was quite surprised by how poorly our two GPUs ran when using the Vulkan API. Average framerates across the board were marginally higher with Vulkan, but never more by 6% and that came at the cost of significantly worse performance in terms of the 1% lows. In a nutshell, frame times are significantly higher when using Vulkan instead of DX12, and that often manifests itself with noticeable stuttering when playing the game. This was the case for both the 2070 Super and RX 5700 XT, so based on our testing your choice of API shouldn’t change whether you have an AMD or Nvidia card.
That means it’s a pretty obvious conclusion to make – for now we have to say the game is far and away better when played with DX12. I would expect to see Vulkan's performance improve in the coming month or two as I imagine we will see plenty of patches from Rockstar, but for now if you're playing RDR2 on PC – DX12 is going to offer the best overall experience by quite a distance.
Discuss on our Facebook page HERE.
KitGuru says: Who's been playing RDR2 on PC? Have you tried using DX12 instead of Vulkan?