Khronos Finalizes OpenCL 2.0 Specification for Heterogeneous Computing

Industry feedback drives new generation open standard for cross-platform parallel programming with increased flexibility, functionality and performance

November 18th 2013 – SC13 - Denver, CO – The Khronos™ Group today announced the ratification and public release of the finalized OpenCL™ 2.0 specification.  OpenCL 2.0 is a significant evolution of the open, royalty-free standard that simplifies cross-platform, parallel programming.  With an enhanced execution model and a subset of the C11 and C++11 memory model, synchronization and atomic operations, OpenCL now enables a significantly richer range of algorithms and programming patterns to be easily accelerated with improved performance.  Significant feedback from the developer community was incorporated into the final specification, following its provisional release in July.  The OpenCL 2.0 specifications are available at www.khronos.org/opencl/.

“Khronos received significant and thoughtful developer feedback from the provisional release of OpenCL 2.0, much of which has been adopted, or will be merged with emerging hardware capabilities as this state-of–the-art parallel programming platform continues to evolve,” said Neil Trevett, chair of the OpenCL working group, president of the Khronos Group and vice president of mobile content at NVIDIA.  “OpenCL continues to gather momentum on desktop, mobile and embedded devices, including providing a unified programming environment for dynamically balancing diverse CPU, GPU, DSP and hardware resources in mobile SOCs for advanced use cases ranging from vision processing for Augmented Reality to physics simulation for mobile gaming.”

OpenCL 2.0 updates and additions include:

Shared Virtual Memory
Host and device kernels can directly share complex, pointer-containing data structures such as trees and linked lists, providing significant programming flexibility and eliminating costly data transfers between host and devices.

Nested Parallelism
Device kernels can enqueue kernels to the same device with no host interaction, enabling flexible work scheduling paradigms and avoiding the need to transfer execution control and data between the device and host, often significantly offloading host processor bottlenecks.

Generic Address Space
Functions can be written without specifying a named address space for arguments, especially useful for those arguments that are declared to be a pointer to a type, eliminating the need for multiple functions to be written for each named address space used in an application.

Images
Improved image support including sRGB images and 3D image writes, the ability for kernels to read from and write to the same image, and the creation of OpenCL images from a mip-mapped or a multi-sampled OpenGL® texture for improved OpenGL interop.

C11 Atomics
A subset of C11 atomics and synchronization operations to enable assignments in one work-item to be visible to other work-items in a work-group, across work-groups executing on a device or for sharing data between the OpenCL device and host.

Pipes
Pipes are memory objects that store data organized as a FIFO and OpenCL 2.0 provides built-in functions for kernels to read from or write to a pipe, providing straightforward programming of pipe data structures that can be highly optimized by OpenCL implementers.

Android Installable Client Driver Extension
Enables OpenCL implementations to be discovered and loaded as a shared object on Android systems.

Industry Support
“Premiere Pro’s support for OpenCL has proved to be a massive hit with our customers; providing dramatic performance improvements while allowing for real-time editing and creativity. We’re excited about the technological developments in OpenCL 2.0 and look forward to discovering how it will enable us to push the performance envelope even further,” said Al Mooney, senior product manager, editing workflows at Adobe.

"AMD has played a significant role in the evolution of OpenCL and in the development of OpenCL 2.0. OpenCL 2.0 has made significant improvements in programmability and is also very well aligned with the hardware features that related industry standards bodies such as the HSA Foundation are developing" said Manju Hegde, CVP HAS Group AMD. "AMD strongly believes in and promotes OpenCL as one of the standards for programming compute on its GPUs and APUs and looks forward to increased adoption because of OpenCL 2.0"

The Khronos Group’s OpenCL 2.0 is the first key, foundational, programming language to truly support the core capabilities of HSA enabled hardware.  It is going to be exciting to see where developers take this much richer programming platform,” said Gregory Stoner, managing director and vice president of HSA Foundation.

It is impressive that OpenCL is supporting an increasingly diverse range of heterogeneous computing units and accelerators,” said Zhenya Li, vice president of 2012 Lab, Huawei Technologies.  “We expect the OpenCL standard to be widely adopted by the information and communications technology (ICT) sector, and to be a key software standard used in Network Function Virtualization (NFV) accelerators. Huawei will actively participate in and contribute to OpenCL, and help it to provide an easy-to-use development platform for future ICT virtualized applications.

As a long-time member of Khronos and a leading contributor to OpenCL standards efforts, Imagination is delighted that Khronos continues to create standards which make GPU compute programming easier for developers. With our broad range of IP including PowerVR processors and MIPS CPUs, our customers are creating innovative designs for mobile, consumer, automotive and more. GPU compute is key to creating new applications within the power envelope of these next generation devices,” said Peter McGuinness, director of multimedia technology marketing, Imagination Technologies.

We are very excited about the user benefits of OpenCL 2.0’s new features”, said Simon McIntosh-Smith, Head of the Microelectronics Research Group at the University of Bristol. “These latest evolutions in OpenCL will enable us to efficiently solve a much wider range of parallel processing problems than ever before, and across a growing range of embedded and HPC hardware platforms. The new shared virtual memory (SVM) feature will make it easier for programmers to develop heterogeneous parallel programs, while support for dynamic parallelism will enable more efficient solutions for a much wider range of applications.

Vivante is pleased to support and contribute to the OpenCL 2.0 specification. The latest industry standard will expand adoption of the technology in mobile, home entertainment, and automotive products, creating the next wave of innovative compute use cases and consumer experiences,” said Wei-Jin Dai, President and CEO of Vivante. “As the OpenCL ecosystem rapidly grows and more applications come to market, SoCs using our latest Vega GPUs will be ready to support the latest 2.0 specification and take advantage of platform level optimizations built into our architecture.

See OpenCL at SC13, Denver, CO

Visit the Khronos Booth #4137 to meet with OpenCL experts and get a free OpenCL reference card.

OpenCL: A Hands-On Introduction
  Monday, November 18th, 8:30 - 17:00, Room 403
Tim Mattson, Alice Koniges, Simon McIntosh-Smith

OpenCL BOF: Version 2.0 and Beyond
  Including announcement of IWOCL 2014 (2nd International Workshop on OpenCL)
  Wednesday, November 20th, 17:30 - 19:00, Room 405/406/407
Tim Mattson, Ben Bergen, Simon McIntosh-Smith

Exhibitor Forum OpenCL 2.0: Unlocking the Power of Your Heterogeneous Platform
Thursday, November 21st, 11:30 - 12:00, Room 501/502, Tim Mattson

Structured Parallel Programming with Patterns
  Sunday, Nov. 17, 8:30am-5pm, Room 302
Michael McCool, James Reinders, Arch Robison, Michael Hebenstreit

See OpenCL at SIGGRAPH Asia, Hong Kong

Visit the Khronos Booth #F07 to meet with OpenCL experts and get a free OpenCL reference card.

Khronos DevU, Wednesday November 20th, Room S226
  13:30-13:45 Neil Trevett, NVIDIA Introduction to OpenCL
  13:45-14:30 Allen Hux, Intel OpenCL 2.0 Overview
14:30-14:50 Tomasz Bednarz, CSIRO Accelerated Science – use of OpenCL in Land Down Under

OpenCL 2.0 Reference Cards

Laminated OpenCL 2.0 Reference cards are now available at www.amazon.com.

About The Khronos Group
  The Khronos Group is an industry consortium creating open standards to enable the authoring and acceleration of parallel computing, graphics, vision, sensor processing and dynamic media on a wide variety of platforms and devices.  Khronos standards include OpenGL®, OpenGL® ES, WebGL™, OpenCL™, WebCL™, OpenVX™, OpenMAX™, OpenVG™, OpenSL ES™, StreamInput™ and COLLADA™.  All Khronos members are enabled 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.  More information is available at www.khronos.org.

 

###

Khronos, DevU, StreamInput, WebGL, WebCL, COLLADA, OpenKODE, OpenVG, OpenVX, OpenSL ES and OpenMAX are trademarks of the Khronos Group Inc. ASTC is a trademark of ARM Holdings PLC, OpenCL is a trademark of Apple Inc. and OpenGL is a registered trademark and the OpenGL ES and OpenGL SC logos are trademarks of Silicon Graphics International used under license by Khronos. All other product names, trademarks, and/or company names are used solely for identification and belong to their respective owners.

Khronos Releases OpenVX 1.0 Specification for Computer Vision Acceleration

Open standard for portable, performance and power-optimized vision applications and libraries; Provisional Specification for Public Review

November 19th 2013 – SIGGRAPH Asia – Hong Kong – The Khronos Group today announced the ratification and public release of the OpenVX 1.0 provisional specification, an open, royalty-free standard for cross platform acceleration of computer vision applications and libraries. OpenVX enables performance and power optimized computer vision algorithms for use cases such as face, body and gesture tracking, smart video surveillance, automatic driver assistance systems, object and scene reconstruction, augmented reality, visual inspection, robotics and more. The provisional release of the specification enables developers and implementers to provide feedback before specification finalization, which is expected within six months. The OpenVX 1.0 provisional specification is available at www.khronos.org/openvx.

“Computer vision is the biggest, most disruptive, application segment in technology today. From automotive, to security, to consumer capture with 3D sensors, 4K sensors, and sensors so small they can be put in UAVs the size of a fly, the processing of photons has never been more challenging,” said Dr. Jon Peddie, president of Jon Peddie Research. “Being able to manage, process, and quickly move sensor data without consuming much power is critical and only OpenVX offers the mechanisms necessary to balance all those issues - it’s going to change the way we do vision systems.”

OpenVX enables significant implementation innovation while maintaining a consistent API for developers. An OpenVX application expresses vision processing holistically as a graph of function nodes. An OpenVX implementer can optimize graph execution through a wide variety of techniques such as: acceleration of nodes on CPUs, GPUs, DSPs or dedicated hardware, compiler optimizations, node coalescing, and tiled execution to keep sections of processed images in local memories as they flow through the graph. Khronos has released a provisional tiled execution extension alongside the main OpenVX specification to enable user custom kernels to exploit this style of optimization. Additionally, Khronos has released the VXU™ utility library to enable developers using OpenVX to call individual nodes as standalone functions for easy code migration.

“Computer vision is central to bringing natural user interfaces and environmental awareness to mobile devices and OpenVX enables cross-platform processing with the high performance and low power that will be vital to widespread adoption,” said Neil Trevett, president of the Khronos Group and vice president of mobile content at NVIDIA. “OpenVX has been designed to be implemented independently or to interoperate within the Khronos standards ecosystem for camera control, sensor fusion, data flow, compute acceleration and graphics rendering, ensuring Khronos APIs continue to meet the needs of portable, state-of the art applications.”

OpenVX can be used directly by applications or to accelerate higher-level middleware, such as the popular OpenCV open source vision library that is often used for application prototyping. OpenVX will have extensive conformance tests to complement a focused and tightly defined finalized specification for consistent and reliable operation across multiple vendors and platforms making OpenVX an ideal foundation for shipping production vision applications. Finally, as any Khronos specification, OpenVX is extensible to enable nodes to be deployed to meet customer needs, ahead of being integrated into the core specification.

Industry Support
“The Itseez team is excited about the release of the OpenVX 1.0 provisional specification. It will enable speed- and power-optimized implementations of OpenCV across a wide range of mobile and embedded platforms, stimulating growth for the computer vision industry and the development of new great applications,” said Victor Erukhimov, CEO, Itseez and chair of the OpenVX working group.

CEVA extends its congratulations to the Khronos Group on the release of the OpenVX 1.0 specification, which sets the foundation for mass market adoption of computer vision applications across multiple industries,” said Eran Briman, vice president of marketing at CEVA. “In particular, OpenVX directly addresses the power consumption challenges faced when implementing complex vision algorithms in power-sensitive products by enabling the seamless offload of these tasks from the CPU and GPU onto dedicated vision engines, such as our CEVA-MM3101 platform, resulting in significant power savings.

Going forward, vision systems will be a key differentiator for a wide range of consumer products including smartphones, tablets, automotive driver assistance and many more. Based on Imagination’s in-depth imaging expertise, we are offering innovative PowerVR products for imaging and vision that will enable our customers to integrate this functionality on the SoC  We are pleased to see Khronos taking a leading role in driving open standards for computer vision. OpenVX 1.0 is an important starting point for accelerating creation and adoption of a wide range of vision applications,” said Peter McGuinness, director of multimedia technology marketing, Imagination Technologies.

Movidius anticipates OpenVX will stimulate incredible innovation as it enables cross-platform, scalable computer vision for mobile devices,” said Remi El-Ouazzane, CEO of Movidius. “In combination with OpenVX capable applications, Movidius’ computational imaging chipsets empower mobile developers to deploy vision-based applications that were simply never possible before.

videantis congratulates the Khronos Group on reaching this major milestone. OpenVX enables efficient acceleration of computer vision algorithms, a key technology driving new applications such as always-on camera applications, gesture interfaces, and automotive driver assistance systems. We’re proud to bring support for this new standard to our v-MP4000HDX scalable unified video/vision processor architecture,” said Hans-Joachim Stolberg, CEO at videantis.

The release of OpenVX 1.0 is a ground-breaking step that will accelerate mass market adoption of computer vision applications in mobile, home, automotive, and embedded products. The specification benefits developers and lays a foundation for complex vision algorithms to be simplified and power/performance/bandwidth optimized on OpenVX compliant hardware, enabling novel uses of vision processing on any platform. Participation in the workgroup has allowed us to make significant breakthroughs in our Vega GPUs to streamline the visual processing pipeline from beginning to end,” said Wei-Jin Dai, Vivante CEO.

OpenVX at SIGGRAPH Asia, Hong Kong
Visit us in Booth #F07 to meet with OpenVX experts.

Khronos DevU, Wednesday November 20th, Room S226
15:30-16:15, Erik Noreke, Khronos, Enabling Augmented Reality - Camera Processing, Vision Acceleration and Sensor Fusion - including OpenVX and StreamInput.

About The Khronos Group
The Khronos Group is an industry consortium creating open standards to enable the authoring and acceleration of parallel computing, graphics, vision, sensor processing and dynamic media on a wide variety of platforms and devices. Khronos standards include OpenGL®, OpenGL® ES, WebGL™, OpenCL™, WebCL™, OpenVX™, OpenMAX™, OpenVG™, OpenSL ES™, StreamInput™ and COLLADA™. All Khronos members are enabled 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. More information is available at www.khronos.org.

###

Khronos, DevU, StreamInput, WebGL, WebCL, COLLADA, OpenKODE, OpenVG, OpenVX, OpenSL ES and OpenMAX are trademarks of the Khronos Group Inc. ASTC is a trademark of ARM Holdings PLC, OpenCL is a trademark of Apple Inc. and OpenGL is a registered trademark and the OpenGL ES and OpenGL SC logos are trademarks of Silicon Graphics International used under license by Khronos. All other product names, trademarks, and/or company names are used solely for identification and belong to their respective owners.

safety