Whenever you play a game, your PC has to talk to both your GPU and CPU to let them “know” how to generate the graphics or image assets needed to play that specific game. Your PC typically does this with the use of instruction sets. But more specifically, it uses an application programming interface (API) to determine how it should talk and the types of information it could effectively convey to the related hardware.
Table of Contents
What is Vulkan? How Does it Work?
Vulkan is touted as the next-generation API for real-time 3D graphics applications. It is mostly advertised as a more performance-optimized gaming API that promises to offer much more efficient GPU/CPU usage, and therefore better gaming experience across all platforms that it can support. It is essentially the successor to OpenGL, and Khronos Group even initially referred to it as “OpenGL Next” prior to the announcement of its official name.
One of the most important features of Vulkan is the ability to further balance data processing across all available cores of your PC’s CPU. Before, the old OpenGL would push almost all instructions on just a single core, leaving only a tiny amount of parallel processing instructions for the other cores. With Vulkan, a heavier load of data instructions are distributed across more cores, optimizing CPU performance and allowing current generation six and eight-core CPUs to truly perform at their maximum best for games that support this new API.
Other features include multi-threading programming, validation layer implementation (detached error checking), CPU batching, more direct interfacing to its related hardware (reduced driver overhead), among other significant interfacing improvements.
Why is Vulkan a Literal Game-Changer?
But as amazing as improved multi-core performance is for Vulkan, the development was not entirely surprising. Given the current trend towards six and eight-core CPUs, even DirectX 12 was built with somewhat similar optimization features.
Instead, the most revolutionary thing about Vulkan is that it is designed as a cross-platform API. OpenGL effectively passes the multi-OS torch to it, as it can work in the same way when used on other types of operating systems and hardware. Currently, it fully supported across these mainstream operating systems:
- Android (mandatory support as of Android 10)
- Linux
- Windows 7
- Windows 8
- Windows 10
- Tizen
- iOS (via MoltenVK)
- macOS (via MoltenVK)
If there is one thing that significantly hinders multi-platform development of games, it would be the use of significantly different APIs when transferring from one operating system to another. Porting games to multiple platforms had been notoriously challenging due to how vastly different each development API would be across the platforms that the developers wanted to support. The hurdle even continues with DirectX, which is still largely limited to just Windows and Xbox machines today.
With Vulkan, porting a game from the PC to, let’s say, an Android tablet can be made more direct, with only hardware considerations to be taken with a significant note. This is especially important for online multiplayer games, where one player might have a different choice of hardware to the rest of the other players within the same game session.
How to Use and Where Can I Get Vulkan?
The Vulkan Runtime Libraries (RT) is the set of files that need to be installed to optimize games and other software that might support Vulkan. Generally, you don’t need to worry about specific installation instructions, as Vulkan RT is typically packaged nowadays in every major graphics driver installation for your system today. If you’re using a GPU that was released for a good while after Vulkan was officially released, chances are the driver you use with it already includes Vulkan Runtime Libraries with it.
Determining support is usually a matter of checking each game title individually. There will always be a reasonable likelihood that any modern game, especially a triple-A one, will have Vulkan support. Latest titles that are also released on multiple platforms at launch would most likely support Vulkan as well.
How about Vulkan Hardware Support?
As mentioned earlier, if you are using current generation GPUs, then Vulkan RT is most likely already installed in your system. However, if you are still using legacy setups, particularly GPUs existing before 2016, then you need to check if that particular series is still receiving regular updates. If your unit is very old but still has updates dating several years post-2016, then it may have limited support for Vulkan. Otherwise, it will not have any support at all due to missing features that cannot be used on older GPU architectures.
If you want a more comprehensive list of GPUs from all operating systems and platforms that have supported Vulkan, you may check out Khronos Group’s official conformant products list here. According to the list, the oldest GPU architecture that can support Vulkan is Kepler for Nvidia and GCN 1.0 for AMD.
Conclusion
Vulkan is currently in its version 1.2, first officially released in January 2020. As the second major update in two years, this newer version beefs up the base Vulkan standard by integrating 23 additional commonly-used extensions into it. There were also a couple of convenience-related updates on the developer side of things. But perhaps the most notable feature of Vulkan 1.2 is its improved programming flexibility when other graphical APIs are used in tandem or are integrated with it.
In the future, Vulkan might not necessarily become the dominant graphics API for games. After all, DirectX 12 would still be a larger force in the much, much bigger Windows PC/Xbox market, while the PS5 will have its own dedicated API (GNM, GNMX, PSSL) to more optimize the custom set of hardware that it rocks.
That being said, it is certainly poised to change how we casual gamers will view cross-platform titles from now on.