Llega OpenCL 1.2 con interesantes novedades y soporte a un mayor número de arquitecturas

Llega OpenCL 1.2 con interesantes novedades y soporte a un mayor número de arquitecturas

por

OpenCL ahora también soportará chips DSP y FPGA.

A casi un año y medio desde el lanzamiento de OpenCL 1.1 en mayo del año pasado, Khronos Group nos trae la nueva y más reciente versión de su API de cómputo acelerada por GPU (GPGPU): OpenCL 1.2, nueva versión que viene cargada de importantes novedades enfocadas a ofrecer un rendimiento superior a las aplicaciones desarrolladas bajo el API estándar open source, además de funcionalidad mejorada para la programación paralela, todo ello sin perder compatibilidad con las anteriores versiones del API (OpenCL 1.0 y 1.1). Con OpenCL 1.2 Khronos busca reafirmar la posición de OpenCL como una de las plataformas más completas y fiables para el desarrollo de aplicaciones multi-plataforma.

Entre las nuevas características de OpenCL 1.2 tenemos:

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.

Pero las nuevas características no son la única novedad que nos trae OpenCL 1.2; Khronos Group anuncia que esta nueva versión de su API da apoyo a una mayor cantidad de arquitecturas, expandiendo su soporte más allá de los habituales CPUs (x86, y otras arquitecturas de propósito general), GPUs (para PC y ARM), ahora llegando también a los microprocesadores especializados como DSP (Digital Signal Processor) y FPGA (Field Programmable Gate Array), prometiendo para ellos un entorno de programación más sencillo y unificado a la gran plataforma base de chips con soporte a OpenCL, siendo el gigante Altera Corporation el primero en anunciar su apoyo a OpenCL para su familia de microprocesadores FPGA, a los que OpenCL beneficiará con un entorno de programación tipo “C/C++” mucho más sencillo y rápido de programar que el actual HDL (High Level Description Languaje).

La adición de estas nuevas arquitecturas de chips a la plataforma base de desarrollo de OpenCL sin dudas erigen a OpenCL como una de las API multi-plataforma con la mayor plataforma base instalada y con soporte a un gran número de arquitecturas.

Link: Khronos Releases OpenCL 1.2 Specification  (Legit Reviews)

Link: OpenCL v1.2 enables GPU partitioning, support for DSPs, enhanced OpenGL & DirectX integration  (FireUser)

Link: Altera to support OpenCL  (SemiAccurate)

Pueden también comentar esta noticia en nuestro foro.