Here are some of the new features in OpenCL 1.1:
- 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.
Open CL lets developers examine a system for OpenCL-compliant resources, and then they are able to create kernels to send to those resources. The OpenCL standard espouses a broad model for managing memory and running instructions on CPUs, GPUs, DSP chips, and more. It's deliberately focused on the hardware/software interface so that other developers and enterprises can add their own code at the higher levels. Khronos also released a C++ wrapper API and conformity tests for OpenCL 1.1.
The new functionality of this release capitalizes on the growing interest in harnessing the massive processing power of the GPU for tasks other than graphics rendering. OpenCL 1.1 also offers new benefits for mobile devices because hardware makers, such as Imagination Technologies, have been adding built-in support for the standard. So the same benefits on the desktop will be available for devices that use Imagination's hardware, like the iPhone and iPad. Nvidia is one of the firmest supporters of this standard, which is why they're releasing OpenCL 1.1 drivers this week.