Vulkan vs. OpenGL Performance For Counter-Strike: Global Offensive
Valve yesterday introduced experimental Vulkan support for Counter-Strike: Global Offensive as an alternative to the long-standing OpenGL path for running CS:GO on Linux. Curious about the performance implications of CS:GO with Vulkan, here are some benchmarks on Ubuntu Linux with a variety of AMD Radeon and NVIDIA GeForce graphics cards.
As outlined in yesterday's article, this Counter-Strike: Global Offensive support for Vulkan is powered by way of DXVK-Native for mapping the game's native Direct3D calls to the Vulkan API. Right now the CS:GO Vulkan support is just enabled for Linux builds as an alternative to their OpenGL renderer that routed the Direct3D calls from Source 2 to OpenGL.
A handful of different NVIDIA GeForce and AMD Radeon graphics cards were tested for seeing how the initial performance is looking between OpenGL and Vulkan for this popular first person shooter game. For this game testing the NVIDIA 495.44 Linux driver was in use while the open-source AMD Radeon stack consisted of the Linux 5.16 kernel with Mesa 22.0-devel from the Oibaf PPA.
From my preliminary testing, the Vulkan support in CS:GO on Linux with the system configuration tested as working out well. There wasn't much stuttering with the Vulkan renderer but still room for improvement. In fact, either due to a Mesa regression or other CS:GO problem, the OpenGL support seems to have regressed. It was on the OpenGL side where with the RadeonSI driver in particular game load times were taking much longer now than in the past while game/shader load times were much quicker with RADV (and NVIDIA). The testing is quite straight-forward so let's jump right to this preliminary data.