Khronos releases updated OpenCL 1.2 specs
The Khronos Group has announced the ratification and public release of an update to the OpenCL 1.2 specification, the open, royalty-free standard for cross-platform, parallel programming of modern processors. This backwards compatible version updates the core OpenCL 1.2 specification with bug fixes and clarifications and defines additional optional extensions for enhanced performance, functionality and robustness for parallel programming on a wide variety of platforms. Optional extensions are not required to be supported by a conformant OpenCL implementation, but are expected to be widely available; they define functionality that is likely to move into the required feature set in a future revision of the OpenCL specification. The updated OpenCL 1.2 specifications, together with online reference pages and reference cards are available at www.khronos.org/opencl/.
“The OpenCL working group continues to listen closely to the demands of the developer community, and this update provides a timely increase in functionality and reliability of code ported across vendor implementations,” said Neil Trevett, chair of the OpenCL working group, president of the Khronos Group and vice president of mobile content at NVIDIA. “The new extensions enable early access to functionality for key use cases, including security capabilities for implementations of WebCL that enable access to OpenCL within a browser.”
The new OpenCL 1.2 extensions provide enhanced parallel programming flexibility, functionality and performance through updates and additions including:
enabling an OpenCL image to be created from a OpenGL multi-sampled texture that is designed for multi-sampled anti-aliasing using color or depth, providing more flexibility in interoperating 3D graphics and compute;
creating 2D images from an OpenCL buffer to enable flexibility in which memory structures are processed using the advanced properties of OpenCL images;
providing security features for WebCL implementations layered over OpenCL including: the ability to initialize local and private memory before a kernel begins execution, and a new query and API to terminate an OpenCL context to ensure a long running kernel does not affect system stability;
loading an OpenCL program object from a Standard Portable Intermediate Representation (SPIR) instance. SPIR is a vendor neutral non-source representation for OpenCL C programs that enables increased tool chain flexibility and avoids the need to ship kernel source in commercial applications.
“ARM sees GPU Compute functionality as a fundamental enabler for enhanced user experiences and increased energy efficiency in mobile and consumer devices. OpenCL is a key standard for turning these goals into reality,” said Jem Davies, ARM fellow and vice president of technology, media processing division, ARM. “We look forward to expanding our current Full Profile OpenCL 1.1 support and to including OpenCL 1.2 as part of the ARM Mali-T600 GPU series.”
“Intel is pleased by the improved portability and interoperability delivered by the OpenCL 1.2 specification update,” said Bill Savage, vice president and general manager of the Developer Products Division of Intel’s Software and Services Group. “These improvements should foster developer innovation and are important steps in the evolution of the OpenCL feature set.”
“We continue to see growing interest from our customers and partners in using OpenCL to deliver high performance compute from our GPUs. Imagination’s PowerVR Series6 architecture is optimized for OpenCL, so we are delighted to see this latest update to the specification, which brings improved functionality in key application areas such as image processing to GPU Compute,” says Tony King-Smith, Vice-President marketing for imagination Technologies. “We remain convinced that OpenCL will be a ‘cornerstone’ API for parallel and heterogeneous processing in the years ahead.”
“Vivante is pleased to be one of the leading mobile IP promoters and contributors of OpenCL 1.2. With strong industry support and a robust ecosystem built around compute, OpenCL 1.2 strengthens the foundation and building blocks to enable broad adoption of the compute API across all market segments,” said Wei-Jin Dai, President and CEO of Vivante. “As the technology goes mainstream, our goal is to make sure consumers using Vivante products get the perfect balance of performance, features, programmability, and extreme low power.”