Released 18 months after OpenCL 1.1, this new version provides enhanced performance and functionality for parallel programming in a backward compatible specification that is the result of cooperation by over 30 industry-leading companies. Khronos has updated and expanded its comprehensive OpenCL conformance test suite to ensure that implementations of the new specification provide a complete and reliable platform for cross-platform application development. The OpenCL 1.2 specifications, online reference pages and reference cards are available at www.khronos.org/opencl/.
“The OpenCL working group is listening carefully to feedback from the developer and middleware community to provide significant and timely functionality for heterogeneous computing in this cross-vendor open standard,” said Neil Trevett, chair of the OpenCL working group, president of the Khronos Group and vice president of mobile content at Nvidia. “The OpenCL working group is also broadening its membership and has growing representation from the mobile and embedded industries, and is enabling innovative devices such as FPGAs to be driven through OpenCL.”
OpenCL 1.2 enables significantly enhanced parallel programming flexibility, functionality and performance through many updates and additions including:
Device partitioning — Enabling applications to partition a device into sub-devices to directly control work assignment to particular compute units, reserve a part of the device for use for high priority/latency-sensitive tasks, or effectively use shared hardware resources such as a cache.
Separate compilation and linking of objects — Providing the capabilities and flexibility of traditional compilers enabling the creation of libraries of OpenCL programs for other programs to link to.
Enhanced image support — Including added support for 1D images and 1D & 2D image arrays. Also, the OpenGL sharing extension now enables an OpenCL image to be created from OpenGL 1D textures and 1D & 2D texture arrays.
Built-in kernels represent the capabilities of specialized or non-programmable hardware and associated firmware, such as video encoder/decoders and digital signal processors, enabling these custom devices to be driven from and integrated closely with the OpenCL framework.
DX9 Media Surface Sharing — Enables efficient sharing between OpenCL and DirectX 9 or DXVA media surfaces.
DX11 Surface Sharing — For seamless sharing between OpenCL and DirectX 11 surfaces.
Working Group Member Support
“AMD promotes industry standards like OpenCL 1.2 that encourage developer freedom and creativity,” said Manju Hegde, corporate vice president, AMD Fusion Experience Program. “In addition to being one of the leading contributors to the OpenCL working group and specifications, AMD Accelerated Processing Units (APUs) and GPUs are the perfect platforms to take advantage of the potential of OpenCL—for developers and end-users.”
“Having worked with our Khronos partners in the evolution of OpenCL, we are pleased to support the announcement of the latest version of the standard," said James McNiven, vice president, compute sub-systems, processor division, ARM. “We believe the vision of energy efficient heterogeneous compute subsystems can only be realized through industry collaboration and standards. ARM remains committed to supporting OpenCL across both CPU and GPU technology and helping our partners deliver high-performance compute systems that leverage ARM Mali GPU and Cortex processor technology.”
“Intel is encouraged by the progress of the OpenCL specification and proud to be an OpenCL adopter and contributor to the OpenCL 1.2 release,” said Bill Savage, vice president and general manager of the Developer Products Division of Intel’s Software and Services Group. “OpenCL 1.2 promises better performance and more flexibility in software design for developers targeting current and future Intel Platforms.”
“The existence of an unified programming interface for multi-core platforms is becoming a crucial element for boosting the productivity of software engineers.” said Satoshi Miki, founder and CEO, Fixstars Corporation. “With the release of the OpenCL 1.2 specification, I am very excited for the increased flexibility that it brings to multi-core programming. My hope is for many hardware vendors to support this new specification to allow for further innovations that can only come about from taking full advantage of the multi-core architecture.”
The Khronos Group is an industry consortium creating open standards to enable the authoring and acceleration of parallel computing, graphics and dynamic media on a wide variety of platforms and devices. Khronos standards include OpenGL, OpenGL ES, WebGL, WebCL, OpenCL, OpenMAX, OpenVG, OpenSL ES, OpenKODE, StreamInput and COLLADA. All Khronos members are able to contribute to the development of Khronos specifications, are empowered to vote at various stages before public deployment, and are able to accelerate the delivery of their cutting-edge media platforms and applications through early access to specification drafts and conformance tests.