Game developers conference was held on March 3, 2015 and there is some exciting news from Khronos that they are working on the next version of OpenGL, which is the dubbed glNext, and has been officially named as Vulkan. Vulkan is the german word, which basically means volcano. Like DirectX 12, Mantle, and Apple’s Metal API, even Vulkan has been designed to be a low-overhead API that has the ability to offer superior multi-threaded and multi-GPU performance options. This will give developers more control over the workload dispatching process and the how once the dispatch has been completed, the workload is processed across multiple graphics cards.
Vulkan and its potential accomplishments:
An early video has been posted by PowerVR on the ability of Vulkan and its potential accomplishment. The main thing to be noted is that this video showcased what can be called as an exceptionally early product which is running on alpha drivers and also a draft version of the specification. According to the company, unlike OpenGL ES, Vulkan has been designed to run as similar to the GPU architecture as much as possible. This includes various features which will minimize the CPU overhead and let it to more competent task execution.
Vulkan has the advantage of many specifications. These specifications have been planned to meet the requirements of more numbers of GPUs than just Mantle. Vulkan can now support features such as render pass, which will permit the GPU to unambiguously direct the application as to how the render targets should be loaded in and out of the GPU at the beginning and conclusion of each render. This feature is significantly vital to the function of tile-based renderers. PowerVR also noted that this new ability will help to evade expensive buffer flushes, which can be encountered under OpenGL ES. As far as D3D and Mantle is concerned, multi-threading will now become easier with Vulkan apart from the memory management. When it comes to Imagination Technologies, they look out for explicit memory management options rather than depending on multi-GPU rendering targets. This is mainly because the Vulkan can make the data sharing possible across multiple GPU clusters more effectively or even to divide the workloads inside the GPU.
The announcement of Vulkan has closed the gaps seen in the low-overhead API availability. Even though Apple’s Metal API, DirectX 12, and Mantle keep on focusing to offer performance benefits, they have restricted the operating environment in many ways. Vulkan is expected to be able to every vendor and operating system (at-least in the theory). Traditionally GLSL (OpenGL Shader Language) codes were parsed by the shader compiler available in OpenGL drivers. With the help of Vulkan, this approach has been completely dropped as the new intermediate language standard (SPIR-V) will be copying the DirectX method of handling shader code and will bring together GLSL into SPIR.
Khronos is not expecting Vulkan to fully replace OpenGL, but they do believe that the lower-level API options will make it a good choice for the developers who are looking out to enhance the performance in cross-platform APIs.