Комитет по разработке технологий Khronos, связанный с открытым графическим стандартом OpenGL, представил обновлённую спецификацию OpenCL 1.2, определяющую API и расширения языка Си для организации кросс-платформенных параллельных вычислений с использованием как многоядерных CPU, так и GPU видеокарт. Спецификация OpenCL 1.2 полностью обратно совместима с выпусками OpenCL 1.0 и 1.1.
В новой версии отмечено множество небольших улучшений, связанных с увеличением гибкости языка и оптимизацией производительности. Из добавленных в OpenCL 1.2 значительных новшеств отмечается:
- Партицирование устройств - возможность разбиения на уровне OpenCL-приложения устройства на несколько подустройств для непосредственной привязки работ к конкретным вычислительным блокам, резервирования ресурсов для более приоритетных задач или более эффективного совместного использования аппаратных ресурсов, таких как кэш;
- Раздельная компиляция и связывание объектов - появилась возможность создания динамических библиотек, позволяющих использовать в сторонних программах, ранее реализованные подпрограммы с OpenCL-вычислениями;
- Расширенная поддержка изображений, включая возможность работы с одномерными изображениями и массивами одномерных или двухмерных изображений. Кроме того, в расширении для организации совместного доступа (sharing) добавлена возможность создания OpenCL-изображения на основе отдельных текстур OpenGL или массивов текстур;
- Встроенные OpenCL-ядра теперь позволяют использовать возможности специализированного или непрограммируемого аппаратного обеспечения и связанных с ним прошивок. Например, появилась возможность использования возможностей и более тесной интеграции с фреймворком OpenCL таких устройств, как DSP-процессоры или видео кодировщики/декодировщики;
- Возможность бесшовного совместного использования поверхностей (Media Surface Sharing) между OpenCL и API DirectX 9/11.
В работе над стандартом прин участие более 30 компаний, среди которых: IBM, NVIDIA, AMD, Apple, ARM, Electronic Arts, Qualcomm, Texas Instruments, Toshiba, Intel, национальная лаборатория Los Alamos, Nokia. Компании Intel, ARM, AMD и NVIDIA уже объявили о намерении включить поддержку OpenCL 1.2 в ближайших выпусках своих продуктов. Дополнительно можно отметить, что начиная с выпуска проприетарных драйверов AMD Catalyst 11.11, run-time компоненты для обеспечения использования стандарта OpenCL теперь входят в комплект, что позволяет использовать OpenCL c GPU AMD/ATI только при наличии видеодрайвера, без необходимости установки AMD Stream SDK.