Vulkan
| Vulkan | |
|---|---|
| Original authors | AMD, DICE (original Mantle design) |
| Developers | Khronos Group (donated and derived variant, as Vulkan) |
| Release | 16 February 2016 |
| Stable release | |
| Written in | C (also available C++ API) |
| Operating system | Android, Linux, BSD Unix, Windows, Nintendo Switch, Fuchsia, Raspberry Pi, vxWorks, QNX, HarmonyOS, OpenHarmony, Oniro, Haiku, Stadia, Tizen Through portability workarounds: macOS, iOS, Aurora OS |
| Type | 3D graphics and compute API |
| License | Apache Software License 2.0, MIT License, Creative Commons Attribution 4.0 International |
| Website | https://www.vulkan.org/ |
| Repository | |
Vulkan is a cross-platform API and open standard for 3D graphics and parallelized computing. It was intended to address the shortcomings of OpenGL, and allow developers more control over the GPU. It is designed to support a wide variety of GPUs, CPUs and operating systems, and modern multi-core CPUs also.
Vulkan is intended to offer higher performance and more efficient CPU and GPU usage compared to the older OpenGL and Direct3D 11 APIs, by providing a considerably lower-level API that more closely resembles how modern GPUs work. Vulkan is comparable to Apple's Metal API and Microsoft's Direct3D 12. In addition to its lower CPU usage, Vulkan is designed to allow developers to better distribute work among multiple CPU cores.
Vulkan was first announced by the non-profit Khronos Group at GDC 2015. The Vulkan API was initially referred to as the "next generation OpenGL initiative", or "OpenGL next" by Khronos, but use of those names was discontinued when "Vulkan" was announced.
Vulkan is derived from and built upon components of AMD's Mantle API, which was donated by AMD to Khronos with the intent of giving Khronos a foundation on which to begin developing a low-level API that they could standardize across the industry.