OpenCL 1.1 specification released

June 18th, 2010

The OpenCL OpenCL Logo1.1 specification, including header files and documentation, has been released. It includes significant new functionality:

  • Host-thread safety, enabling OpenCL commands to be enqueued from multiple host threads
  • Sub-buffer objects to distribute regions of a buffer across multiple OpenCL devices
  • User events to enable enqueued OpenCL commands to wait on external events
  • Event callbacks that can be used to enqueue new OpenCL commands based on event state changes in a non-blocking manner
  • 3-component vector data types
  • Global work-offset which enable kernels to operate on different portions of the NDRange
  • Memory object destructor callback
  • Read, write and copy a 1D, 2D or 3D rectangular region of a buffer object
  • Mirrored repeat addressing mode and additional image formats
  • New 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 event objects to OpenGL fence sync objects
  • Optional features in OpenCL 1.0 have been bought into core OpenCL 1.1 including: writes to a pointer of bytes or shorts from a kernel, and conversion of atomics to 32-bit integers in local or global memory