If your Android smartphone doubles as a gaming console, you would know that many a times, games run through scenes which can contain choppy frames, no matter how high-end spec’d your phone is. This sort of lag occurs due to a phenomenon known as CPU overhead. To counter this, Google recently announced that it is now working on a new open standard for 3D graphics and rendering known as Vulkan. The service is maintained by Khronos.
CPU overhead, for the non-techies out there, occurs primarily when your system needs to process a complex graphics scene containing a lot of elements and even though the devs might have taken every sort of counter measure to reduce lag, our old buddy lag is inevitable. This is because even after careful organization of the data for the renderer to work with, the software automatically reorganizes all of it before it can all be processed.
Enough of my rant about the problem. Only a few might’ve been interested in it in the first place. Let’s get to the solution now.
Google is trying to address the issue at an architectural level, completely going down to basics. The new Vulkan software rendering service is literally being designed from scratch to minimize CPU overhead in the driver. This will allow applications to control GPU operations more directly, reducing CPU overhead by an exponential factor.
Google is also all on about giving every kind of developer support possible for people seeking out help from the big guys themselves. The blog post also says that the tech giant will allow you to choose any API you like, giving devs the freedom they deserve, if I say so myself.
We’ll be working hard to help create, test, and ship Vulkan, but at the same time, we’re also going to contribute to and support OpenGL ES. As a developer, you’ll be able to choose which API is right for you: the simplicity of OpenGL ES, or the explicit control of Vulkan. We’re committed to providing an excellent developer experience, no matter which API you choose.