April 18th 2016 – International Workshop on OpenCL, Vienna – The Khronos™ Group, an open consortium of leading hardware and software companies, announces the immediate availability of the OpenCL™ 2.2, SYCL™ 2.2 and SPIR-V™ 1.1 provisional specifications. OpenCL 2.2 incorporates the OpenCL C++ kernel language for significantly enhanced parallel programming productivity. SYCL 2.2 enables host and device code to be contained in a single source file, while leveraging the full power of OpenCL C++. SPIR-V 1.1 extends the intermediate representation defined by Khronos with native support for shader and compute kernel features to fully support the OpenCL C++ kernel language. These new specifications can be found at www.khronos.org and are released in provisional form to enable developers and implementers to provide feedback before finalization.
About SPIR-V 1.1
SPIR-V (Standard Portable Intermediate Representation) is the first open standard, cross-API intermediate language for natively representing parallel compute and graphics. SPIR-V 1.1 now supports all the kernel language features of OpenCL C++ in OpenCL 2.2, including initializer and finalizer function execution modes to support constructors and destructors. SPIR-V 1.1 also enhances the expressiveness of kernel programs by supporting named barriers, subgroup execution, and program scope pipes.
Specialization constants, previously available for Vulkan™ graphics shaders in SPIR-V 1.0, are now available to OpenCL kernel programs in SPIR-V 1.1. This feature allows a single SPIR-V module to express a family of parameterized OpenCL kernel programs by embedding compile-time settings that can be specialized at runtime. This eliminates the need to ship multiple variants of a device program, or recompiling them from source on-the-fly with different compilation settings, leading to massive savings in shipped program size or application startup time.
All feedback that is posted to this topic thread will be considered by the working group. We greatly appreciate what you have to say and the time you spent preparing your feedback.