Khronos Group Unveils OpenCL 2.0 Specification

Khronos Updates OpenCL Spec to Version 2.0

by Anton Shilov
07/22/2013 | 09:04 PM

The Khronos Group on Monday announced the ratification and public release of the OpenCL 2.0 provisional specification. OpenCL 2.0 is designed to further simplify cross-platform, parallel programming while enabling a significantly richer range of algorithms and programming patterns to be easily accelerated. OpenCL 2.0 defines an enhanced execution model and a subset of the C11 and C++11 memory model, synchronization and atomic operations.


“The OpenCL working group has combined developer feedback with emerging hardware capabilities to create a state-of–the-art parallel programming platform – OpenCL 2.0. OpenCL continues to gather momentum on both desktop and mobile devices. In addition to enabling application developers it is providing foundational, portable acceleration for middleware libraries, engines and higher-level programming languages that need to take advantage of heterogeneous compute resources including CPUs, GPUs, DSPs and FPGAs,” said Neil Trevett, chair of the OpenCL working group, president of the Khronos Group and vice president of mobile content at Nvidia.

Updates and additions to OpenCL 2.0 include:

In addition, the OpenCL Working Group also today released the OpenCL SPIR 1.2 provisional specification for public review. ‘SPIR’ stands for Standard Portable Intermediate Representation and is a portable non-source representation for OpenCL 1.2 device programs. It enables application developers to avoid shipping kernel source and to manage the proliferation of devices and drivers from multiple vendors. OpenCL SPIR will enable consumption of code from third party compiler front-ends for alternative languages, such as C++, and is based on LLVM 3.2. Khronos has contributed open source patches for Clang 3.2 to enable SPIR code generation.