While Microsoft's DirectX 12 may have been the first low-level API to appear on PC (excepting AMD's proprietary Mantle API), its arch-rival Vulkan is potentially more interesting. Vulkan promises to be more widely adopted, thanks to support for Windows, Linux, and Android, and companies like Valve and Epic are firmly behind its development.

With Vulkan now at version 1.0 and drivers from Nvidia and AMD available, we can finally take a crack at answering the big questions: can Vulkan live up to all the low-level API hype? And will AMD see the same huge performance gains that it did in early DirectX 12 benchmarks?

But first, some caveats: The Talos Principle is technically the first game with Vulkan support, but it's in beta testing. The Talos Principle also isn't designed to take advantage of the CPU utilization and draw call improvements that are central to Vulkan, unlike Stardock's Ashes of the Singularity demo does with DX12. Furthermore, the new Vulkan drivers from AMD and Nvidia are also both still in beta.

Additionally, only Nvidia's beta driver has passed Vulkan conformance testing. Weirdly, it was Nvidia's driver that proved to be troublesome during testing, often crashing while trying to run the game's built-in 60-second benchmark. AMD's driver had no such issues. Given the early nature of both the drivers and the game, I've no doubt these problems will be ironed out further down the line. In short, take these benchmark results with a large pinch of salt.

All this matters for much the same reasons why DX12 matters; Vulkan sports similar improvements across the board. Developers have greater control over memory allocation and how commands are processed by the GPU—tasks traditionally handled directly by the driver. While that means developers generally have to do more work, it's largely similar to the work that needs to be done to optimize games on consoles like the PS4 and Xbox One.

Vulkan also makes far better use of multicore processors by spreading the workload evenly across cores, along with sending commands to the GPU in parallel rather than one at a time. By exploiting the massive parallel processing capabilities of modern GPUs, Vulkan should make games run a hell of a lot faster.

The benchmarks

TEST SYSTEM SPECIFICATIONS OS Windows 10 CPU Intel Core i7-5930K (6-core) @ 4.5GHz RAM 32GB Corsair DDR4 at 3000MHz HDD Samsung SM951 512GB M.2 PCIe SSD Motherboard Asus X99 Deluxe Power Supply Corsair HX1200i Cooling Hydro Series H110i GTX 280mm Liquid Cooler GPUs Nvidia GTX 980 Ti, AMD R9 290X

The standard Ars UK test rig running Windows 10 was used to benchmark Vulkan, along with Nvidia GTX 980 Ti and AMD R9 290X graphics cards (the newest AMD card we have access to). Tests were run with six cores and hyperthreading for a total of 12 threads, along with four cores and no hyperthreading to better mimic a typical Core i5-based gaming PC setup. In theory, more cores should equal more performance thanks to better multithreading, but as we saw with DirectX 12, it's likely that the GPU will become the bottleneck way before the CPU is unable to throw enough commands to it.

Each benchmark was run at 1080p and 1440p resolution with all settings on ultra, antialiasing set to 4X, and 3D rendering MPIX set to unlimited.

Some of you may also be wondering where the 99th percentile benchmarks are. Unfortunately, Fraps doesn't work with Vulkan, and the built-in benchmark only spits out high, low, and average frame rates. SLI and Crossfire don't work either, and the Vulkan rendering path is so new that Talos Principle developer Croteam warns that it won't be as fast as its highly tuned DX11 implementation. As such, what's important here isn't the performance in comparison to DX11, but rather the performance in comparison to Vulkan's predecessor, OpenGL.

6-core





4-core





Let's get this one out of the way first: no, AMD doesn't enjoy the same ridiculous performance boost that it did in the Ashes of the Singularity benchmark. Given that the Ashes demo made extensive use of CPU utilization and draw call improvements and The Talos Principle doesn't, AMD's ACE (Asynchronous Compute Engine) doesn't get to flex its parallel computing chops in quite the same way.

That said, both AMD and Nvidia see a lift in performance compared to OpenGL. With six cores and at 1440p, there's a 12 percent uplift for Nvidia and a slightly less impressive 4-percent rise for AMD. At 1080p there's a larger 16-percent rise for Nvidia and 18 percent for AMD. The four-core results are largely the same.

In GPU-bound scenarios, like higher than 1080p gaming, Vulkan isn't all that different from OpenGL. But there's a clear uplift in performance as soon as the CPU is taxed a little more, like at 1080p and lower resolutions.

This is a good indication that Vulkan may live up to the hype when it comes to better CPU utilization, and with much more powerful graphics cards on the way from both AMD and Nvidia, the extra CPU grunt could prove invaluable as 1440p and 4K gaming become mainstream.

So far, there are no shocks with Vulkan like there were with DX12. Nvidia and AMD users can rest easy knowing that, at the very least, Vulkan will give their existing hardware a boost. Given the performance gulf between Vulkan and DX11, there's still a lot of work to be done by developers to get the most out of the nascent API; plus, the graphics drivers are very much in beta and not suitable for widespread use just yet.

This stands in stark contrast to DX12, which despite opposition has benefited from being bundled with Windows 10. The API and the drivers are solid, and it's only a matter of time until there are some quality games that make use of them.

Vulkan is still a ways off; currently it's about what it might be rather than what it is. But with Google adopting Vulkan for Android and the likes of Unity, Epic (Unreal Engine), Valve (Source 2), and Dice (Frostbite) lending a hand, expect improvements to come thick and fast.