The Khronos Group has published the OpenCL 1.1 specification. This revision promises enhanced parallel programming flexibility, functionality and performance.
The Khronos™ Group today announced the ratification and public release of the OpenCL™ 1.1 specification, the latest version of the open, royalty-free standard for cross-platform, parallel programming of modern processors. OpenCL 1.1 provides enhanced performance and functionality for parallel programming in a backwards compatible specification that is the result of cooperation between industry-leading companies. OpenCL working group members include: AMD, Apple, ARM, Blizzard Activision, Broadcom, Codeplay, Electronic Arts, Ericsson, Freescale, Graphic Remedy, IBM, Imagination Technologies, Intel, Kestrel Institute, Los Alamos National Laboratory, Movidia, Nokia, NVIDIA, Petapath, Presagis, Qualcomm, Renesas, S3 Graphics, Seaweed Systems, Sony, ST-Ericsson, STMicroelectronics, Symbian, and Texas Instruments. Today Khronos also announced the release of a C++ wrapper API for use with OpenCL, and the immediate availability of OpenCL 1.1 conformance tests. The OpenCL 1.1 specifications, online reference pages and reference cards are available at www.khronos.org/opencl/.
“The clear commercial opportunity to unleash the power of heterogeneous parallel processing that drove multiple OpenCL 1.0 implementations has also fueled the ongoing industry cooperation to create OpenCL 1.1,” said Neil Trevett, chair of the OpenCL working group, president of the Khronos Group and vice president at NVIDIA. “The OpenCL 1.1 specification is being released 18 months after OpenCL 1.0 to enable programmers to take even more effective advantage of parallel computing resources while protecting their existing investment in OpenCL code.”
OpenCL 1.1 adds significant functionality for enhanced parallel programming flexibility, functionality and performance including:
* New data types including 3-component vectors and additional image formats;
* Handling commands from multiple hosts and processing buffers across multiple devices;
* Operations on regions of a buffer including read, write and copy of 1D, 2D or 3D rectangular regions;
* Enhanced use of events to drive and control command execution;
* Additional OpenCL C built-in functions such as integer clamp, shuffle and asynchronous strided copies;
* Improved OpenGL interoperability through efficient sharing of images and buffers by linking OpenCL and OpenGL events.