I am surprised that this has not yet been covered in a broader fashion (it at least belongs on the MR newspage), so I decided to make a thread on a topic.
In short, Khronos (the group managing OpenCL/OpenGL/OpenGL ES etc.) has announced its next-gen open-source cross-platform graphics API —Vulkan. It promises high-performance GPU games and applications, by offering a software abstraction that is more suitable for modern GPUs and giving fine-grained control over how graphics is rendered to the programmer. In addition, it is supposed to be a single API that rules them all — desktop, mobile, you name it. Same rendering code would run on Windows, Linux, Mac, Android and iOS, opening unprecedented possibilities for developers.
Why is this important for the Mac community? Well,there are multiple reasons why Vulkan is an ideal API for OS X. First of all, its implementation model is extremely close to what Apple does today for its OpenGL stack. Second, it directly or indirectly leverages technologies that have been popularised (and in part, created) by Apple such as the LLVM compiler chain. Third, by simplifying and intelligently modularising the API, a Vulkan driver is much easier to write than an OpenGL driver and should also trivially deliver much higher application performance. It is also likely to seamlessly interact with OpenCL, as both share a number of technologies. For the software developer, Vulkan offers standard developer consistent behaviour and performance — something which has always been the biggest issue of OpenGL and ultimately the reason why OpenGL is not a popular choice among game developers.
On practice, what this means are much more stable and speedy graphics drivers. With Vulkan, OS X should automatically gain GPU performance parity with Windows, which might make it more attractive for game developers.
Despite some claims to the contrary, Apple obviously cares for graphical performance. Their introduction of Metal (an API that Vulkan will be fairly similar to) proves this. As a member of Khronos, there is no doubt that Apple took part in designing Vulkan. If the API spec is finalised before summer, I optimistically expect Apple to deliver Vulkan and OpenCL 2/2.1 with 10.11. This also gives them to opportunity to drop support for older GPUs, which is an ideal transition condition to a new graphical API. I would also expect them to freeze OpenGL, possibly implementing it on top of Vulkan in the future.
In short, Khronos (the group managing OpenCL/OpenGL/OpenGL ES etc.) has announced its next-gen open-source cross-platform graphics API —Vulkan. It promises high-performance GPU games and applications, by offering a software abstraction that is more suitable for modern GPUs and giving fine-grained control over how graphics is rendered to the programmer. In addition, it is supposed to be a single API that rules them all — desktop, mobile, you name it. Same rendering code would run on Windows, Linux, Mac, Android and iOS, opening unprecedented possibilities for developers.
Why is this important for the Mac community? Well,there are multiple reasons why Vulkan is an ideal API for OS X. First of all, its implementation model is extremely close to what Apple does today for its OpenGL stack. Second, it directly or indirectly leverages technologies that have been popularised (and in part, created) by Apple such as the LLVM compiler chain. Third, by simplifying and intelligently modularising the API, a Vulkan driver is much easier to write than an OpenGL driver and should also trivially deliver much higher application performance. It is also likely to seamlessly interact with OpenCL, as both share a number of technologies. For the software developer, Vulkan offers standard developer consistent behaviour and performance — something which has always been the biggest issue of OpenGL and ultimately the reason why OpenGL is not a popular choice among game developers.
On practice, what this means are much more stable and speedy graphics drivers. With Vulkan, OS X should automatically gain GPU performance parity with Windows, which might make it more attractive for game developers.
Despite some claims to the contrary, Apple obviously cares for graphical performance. Their introduction of Metal (an API that Vulkan will be fairly similar to) proves this. As a member of Khronos, there is no doubt that Apple took part in designing Vulkan. If the API spec is finalised before summer, I optimistically expect Apple to deliver Vulkan and OpenCL 2/2.1 with 10.11. This also gives them to opportunity to drop support for older GPUs, which is an ideal transition condition to a new graphical API. I would also expect them to freeze OpenGL, possibly implementing it on top of Vulkan in the future.