OpenCL 1.2の仕様が発表に

Khronos groupがSC 11でOpenCL 1.2の仕様を発表したようです.


  1. 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
  2. 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
  3. 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
  4. 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
  5. DX9 Media Surface Sharing – enables efficient sharing between OpenCL and DirectX 9 or DXVA media surfaces
  6. DX11 Surface Sharing – for seamless sharing between OpenCL and DirectX 11 surfaces.

OpenCL自体の機能強化以外にも,OpenGLのテクスチャ配列との連携機能の追加,ビデオエンコーダ,信号処理プロセッサのような組み込み処理が作りやすくなる機能,DirectX 9のDXVA連携やDirect3D11のサーフェイスにシームレスに共有などの機能が追加になっています.

Direct3D11なんかにシームレスというとDeferred RenderingのCompute Shader部分はOpenCLで,などといった利用もできるのかもしれませんね.