The PC version of the Doom 2016 reboot finally has the Vulkan API update we've been waiting for.
Everyone's a winner in terms of higher performance but for AMD owners in particular, there are some game-changing improvements. Well, think of it as the Open GL equivalent to Direct X 12, with many of the same advantages - principally, far better utilisation of multi-core CPUs, along with the implementation of GPU asynchronous compute.
Our initial tests suggest anything from a 30 to 40 per cent increase in gaming performance for Radeon users but these are rough, initial numbers. The latter element in particular sees big improvements for Radeon hardware, and it's used extensively in Doom.
Id Software's lead rendering programmer Tiago Sousa recently revealed efficiency improvements of 3-5ms per frame on the console versions of the game - a seriously big deal when you have a 16ms per-frame render budget.
In a tech interview with Digital Foundry (due to be published in full this weekend), the id team talk about the advantages of Vulkan and the potential of async compute in particular."Yes, async compute will be extensively used on the PC Vulkan version running on AMD hardware," lead programmer Billy Khan tells us.
"Vulkan allows us to finally code much more to the 'metal'.
The thick driver layer is eliminated with Vulkan, which will give significant performance improvements that were not achievable on Open GL or DX." So how does this pan out in terms of the actual Vulkan code that id software has delivered to PC users?
Well, we use FCAT for performance testing - a system that marks up every frame output by the GPU with a coloured border.
It's the best way of actually tracking what you actually see, as opposed to relying on internal metrics.
There's just one problem here - there is no support for FCAT right now in Doom itself or via Vulkan in general, while the game's OSD cumulative GPU render time average didn't seem to work for us on AMD hardware.
To get some numbers together, we used a very simple approach - to visit three very different scenes and to measure the performance differential across a range of GPUs.
It can only be considered as a very basic way to judge the potential differential, but the results as they stand are stark.