Khronos Group Announces Vulkan, OpenCL 2.1, SPIR-V

Written by Michael Larabel in Display Drivers on 3 March 2015 at 03:00 AM EST. Page 3 of 3. 166 Comments.

SPIR-V will allow developers to use the same front-end compiler across multiple platforms, will reduce shader compilation time, no shader source code now needs to be shipped by games, and can represent OpenCL kernels just not for 2.1+ but also OpenCL 1.2/2.0. There's also in-development work for supporting GLSL within SPIR-V.

The Khronos Group and its members are also working on an open-source conformance test suite to provide unit testing of all Vulkan functionality to ensure correctness. This should help avoid uncertainties between drivers over correct behavior, lead to better driver testing, and all-around be a big win. Neil said that they'll seek to keep it updated with new Vulkan revisions and also accept test contributions from the community. It's great to finally see an official conformance suite out of Khronos for their graphics API. I also asked him whether they gave any thought to putting out a software-based reference driver (think Gallium3D LLVMpipe) that would strictly implement Vulcan/SPIR-V so application/game developers could test their code against it and for driver developers to verify any bugs against their implementation. Neil's response is they're looking for a lot of feedback from the community of developers about what they'd like to see so as to know where to focus their efforts. At least with SPIR-V simplifying the driver input, hopefully this will lead to better and more comparable quality of OpenGL drivers across the board.

For game developers and driver developers, Vulkan also features a layered architecture so there's validation and debug layers that can be dynamically loaded only when needed. Vulkan provides direct GPU control, is designed to be cross-platform, and will be more multi-threading friendly while being a simpler interface. NVIDIA, Epic Games, Oculus, Sony, and ARM are among the many vendors backing Vulkan and SPIR-V. In terms of any other open-source surprises, Valve and LunarG among others are working on tools for the loadable debug/validate layers of Vulkan, etc, but that aside from that things are up in the air and they're interested in user/developer feedback. With being a cross-platform API, Vulkan will remain windowing system agnostic but Neil said it's not exactly clear yet how EGL specifically will tie into the new API.

Overall today is a very good day for open standards and the future of cross-platform computing! Vulkan itself is terrific for being a simpler yet more powerful graphics API over OpenGL that does away with a lot of legacy stuff while making drivers simpler, is designed for today's hardware, and should help power the next wave of cross-platform games. While SPIR-V may not seem too exciting, this announcement gets me equally -- if not more -- excited than Vulkan itself.

The Khronos Group centering on SPIR-V as an intermediate language for representing both compute (OpenCL) and graphics (Vulkan) is terrific and will hopefully lead to higher quality yet simpler drivers and if all pans out regarding conversion to LLVM IR, etc, will hopefully be a win for the open-source Linux graphics drivers in more quickly supporting new versions of specifications rather than being years behind as they currently are with trying to get OpenGL 4.0+ compliance in Mesa/Gallium3D. Expect the initial Vulkan drivers and specifications to be out later this year for OpenGL ES 3.1+ hardware. Aside from the C++ haters, the OpenCL 2.1 language based on the C++14 subset and other changes is also very promising. While today's excitement are terrific for the future, the Khronos Group also wants to express it remains committed to evolving OpenGL (ES) still going forward.

If you enjoyed this article consider joining Phoronix Premium to view this site ad-free, multi-page articles on a single page, and other benefits. PayPal or Stripe tips are also graciously accepted. Thanks for your support.


Related Articles
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.