Новости про OpenCL

Окончательные спецификации OpenCL 1.1

Один из лидеров в мире Open Source программирования, Khronos Group сегодня опубликовал спецификации OpenCL 1.1 — первое крупное обновление OpenCL, распространяемое бесплатно.

Версия OpenCL 1.1 добавляет значительные функциональные возможности для расширения возможностей параллельного программирования и привносит в создаваемые приложения больше гибкости, функциональности и производительности, в том числе засчет:

  • новые типы данных, в том числе 3-х компонентные вектора и дополнительные графические форматы;
  • обработка команд из нескольких хостов и использование буфера между несколькими устройствами;
  • операции по отдельным частям буфера в том числе чтение, запись и копирование 1D, 2D или 3D прямоугольных областей;
  • расширенное использование событий и систем управления командами;
  • дополнительные OpenCL C встроенные функции, такие как: integer clamp, shuffle и asynchronous strided copies;
  • улучшенная совместимость с OpenGL на основе эффективного обмена изображениями и буферами для связи OpenCL и OpenGL событий.

Khronos Group

Напомню, в рабочую группу OpenCL входят такие известные компании, как: AMD, Apple, Blizzard Activision, Electronic Arts, Ericsson, IBM, Intel, Nokia, S3 Graphics, Sony, STMicroelectronics, Symbian, Texas Instruments и, конечно же, NVIDIA.

AMD GPU PerfStudio 2.2 и OpenCL-zone

Разработчики игр и GPGPU получают повышенное внимание со стороны AMD.

Продукт GPU PerfStudio от AMD призван решать те же задачи, что и средства NVIDIA PerfKit и Intel GPA — помочь разработчикам игр и графических приложений в отладке и оптимизации производительности. Средства отладки включают в себя подсчёт времени операций построения кадра, отслеживание загрузки отдельных узлов GPU по мере рендеринга и отладчик кода шейдеров. Большинство функций не зависит от используемого оборудования, важным преимуществом над PerfKit и GPA также является отсутствие необходимости изменения приложения для отладки в пакете и использования специальных «отладочных» драйверов видеокарты.

AMD GPU PerfStudio 2.2

В новой версии 2.2 PerfStudio были сделаны следующие изменения:

  • более точное определение цвета пиксела в инструменте просмотра текстур;
  • поддержка связывания шейдеров в DirectX 11;
  • поддержка texture arrays в OpenGL;
  • улучшение совместимости с приложениями;
  • улучшения в интерфейсе клиента для удалённой отладки;
  • мелкие исправления и улучшения.

Загрузить пакет для Windows XP/Vista и 7 можно с официального сайта (~20 Мб).

OpenCL logo

Кроме того, AMD открыла специальный раздел сайта для разработчиков OpenCL Zone. Название недвусмысленно противопоставляет инициативу NVIDIA CUDA Zone, как и последняя, OpenCL Zone будет служить централизованным источником информации о GPGPU-технологиях и своего рода выставкой «достижений народного хозяйства» — приложений с использованием OpenCL. Правда, пока выставлять в соответствующем разделе особо нечего, в отличие от 1000+ приложений и примеров в CUDA Zone.

Презентации Khronos с GDC 2010

Не попавшие на Game Developers Conference в этом году могут посмотреть материалы в электронном виде.

Презентации Khronos Group можно загрузить с сайта группы по ссылкам ниже:

Напомним, что NVIDIA также опубликовала презентации с GDC 2010.

Swan — преобразователь программ CUDA в OpenCL

Инструмент для собирающихся переводить имеющиеся GPGPU программы с CUDA на OpenCL.

Консольное приложение Swan позволяет в среде Linux автоматически преобразовать исходный код ядра CUDA-программ в ядро OpenCL. Программа заменяет вызовы функций и создаёт новые точки входа. Также предлагается собственный «абстрактный» API, позволяющий создавать программы, равно легко конвертируемые с помощью Swan в CUDA или OpenCL.

OpenCL logo

Конечно, программа имеет множество ограничений, пока что не поддерживается работа с несколькими устройствами и конвертация для выполнения CUDA/OpenCL кода на CPU, как и использование возможностей C++ в исходном тексте CUDA-программы. Будем надеяться, что подобные экономящие время инструменты не останутся без развития, благо программа выпущена под GPL и исходный код доступен. Загрузить утилиту можно с официального сайта.

Открытая физическая инициатива от AMD — новые подробности

Открытый стандарт физики начинает воплощаться в конкретику.

Согласно опубликованному пресс-релизу, совместная работа AMD, Bullet и Pixelux близится к воплощению в конкретные движки и программные продукты. В основу открытого движка ляжет технология расчётов столкновений твёрдых тел от Bullet Physics и система «физических» свойств материалов Digital Molecular Matter (DMM) от Pixelux. AMD разработает некий инструмент физического моделирования для разработчиков игр, позволяющий объединить обе технологии в игре, а также проспонсирует бесплатную лицензию DMM для использования в PC-проектах. «Лидирующем» же движком для демонстрации набора физических технологий от «красных» станет Vision Engine от Trinigy, должный стать тем же, чем стал Unreal Engine 3 для PhysX.

AMD logo

Ускорение физических расчётов на GPU будет доступно через OpenCL и DirectCompute API, реализуемых посредством ATI Stream для GPU AMD. В будущем, помимо физики твёрдых тел, аппаратное ускорение будет обеспечено и для системы частиц/потоков, симуляции одежды и столкновений мягких тел в составе Bullet Physics. После этого физический движок AMD-Bullet-Pixelux может даже превзойти PhysX, в котором в настоящее время нет аппаратного ускорения для физики твёрдых тел. Правда, симуляция последних не составляет заметной нагрузки для современных CPU, а в играх с использованием PhysX, таких как Dark Void или Cryostasis, востребовано как раз ускорение симуляций частиц/потоков. Будем надеяться, что в этом году AMD сможет на деле показать преимущества своих физических решений вместо голословных нападок на PhysX.

GPU Caps Viewer 1.8.4

Новая версия информационной программы для получения подробных сведений об OpenGL и CUDA/OpenCL возможностях видеокарты.

В новой версии 1.8.4 утилиты GPU Caps Viewer сделаны следующие изменения:

  • добавлено определение видеокарт GeForce GT 320, 330, 340; Radeon HD 5450, 5830 и 4290 (AMD 890GX);
  • показания частоты GPU теперь обновляются в реальном времени;
  • движок PhysX обновлён до версии SDK 2.8.3;
  • улучшено считывание температуры и частот для видеокарт ATI-AMD, в частности, в Windows XP;
  • исправлено определение числа TMU для OpenGL;
  • исправлено аварийное завершение работы программы при запуске в системе, в которой установлена поддержка OpenCL, но отсутствуют OpenCL-совместимые устройства.

GPU Caps Viewer 1.8.4

Загрузить последнюю версию программы можно с официального сайта или с нашего (~3,5 Мб).

Драйверы NVIDIA для видеокарт Quadro 196.75

Вслед за обновлением драйверов для «игровых» карт вышла новая версия драйверов для профессиональной линейки Quadro.

Новые драйверы Quadro 196.75 расширяют поддержку универсальных вычислений, добавляя предварительную поддержку CUDA 3.0, а также поддержку OpenCL для карт Quadro FX x700, FX 4600 и 5600. Прочие изменения включают в себя:

  • поддержка OpenGL 3.2;
  • повышение совместимости с бета-версией Adobe Premiere CS5;
  • исправлена ошибочная инициализация квадробуферизации в Maya 2010;
  • исправлена некорректная отрисовка геометрии с помощью VBO в Catia;
  • повышена скорость выполнения ряда операций с буферами и текстурами;
  • исправлено зависание драйвера в AutoCAD 2010;
  • исправлено падение в «синий экран» при запуске тестов производительности в Maya.

Драйверы имеют сертификат WHQL и доступны для всех текущих версий Windows. Поддерживаются видеокарты Quadro FX и Quadro NVS на архитектурах NV40GL и более новые. Загрузить драйверы можно по ссылкам ниже:

Bullet Physics готовится к OpenCL-ускорению

В новом обновлении физического движка проведена подготовка к использованию OpenCL в следующей версии.

В SDK версии 2.76 популярного физического движка с открытым исходным кодом Bullet Physics сделаны необходимые приготовления к поддержке исполнения через OpenCL и обновлены предварительные демонстрации MiniCL. Объявлено, что будущие версии 3.х движка будут поддерживать OpenCL «штатно». Напомним, что разработку движка Bullet поддержала корпорация AMD в рамках программы Open Physics в качестве противовеса PhysX от NVIDIA, хотя изначально движок поддерживала NVIDIA в направлении использования CUDA.

Bullet Physics

Кроме того, в новой версии введён бинарный платформонезависимый формат экспорта-импорта физических данных .bullet, улучшен плагин Dynamica для Autodesk Maya и добавлены предварительные версии новых инструментов: btInternalEdgeUtility для исключения ненужных коллизий при взаимодействии объектов и редактор/отладчик физики. Загрузить код SDK можно со страницы проекта на Google.

OpenRL — еще одно слово, начинающееся с Open…

Open Ray Tracing Language — предложение стандартизации трассировки лучей от Caustic Graphics. 

Компания Caustic Graphics, известный разработчик программных и аппаратных решений для рендеринга методом трассировки лучей, решила предложить открытый платформо-независимый стандарт программирования для ray-tracing под названием OpenRL. До недавнего времени желающим использовать трассировку лучей с аппаратным ускорением приходилось либо самим писать интерфейсы для оборудования, либо пользоваться проприетарными middleware от разработчиков оборудования, например CUDA для видеокарт NVIDIA, использующейся в iRay и Octane Render.

Caustic logo

OpenRL является потомком расширений OpenGL CausticGL, предлагавшихся в составе платформы CausticRT, так что имеет много общего с OpenGL. Подобно GLSL для OpenGL, OpenRL также предлагает свой язык RLSL для написания вычислительных шейдеров, компилируемых для конкретного оборудования при запуске приложения. OpenRL будет доступен для Windows, Linux и MacOS. В качестве устройств будут поддерживаться центральные процессоры, графические процессоры (через OpenCL) и аппаратные ускорители самой Caustic, такие как CausticOne, в любых комбинациях.

Caustic ray-traced demo

Желающие написать приложение на OpenRL, рассчитать графику через OpenCL и вывести изображение через OpenGL могут записаться в бета-тестирование OpenRL SDK на сайте компании. Остаётся только гадать, как будут называть стандарты, API и технологии, когда все двухбуквенные сочетания со словом «Open» будут перебраны.

ATI Stream SDK 2.01 с улучшенной поддержкой OpenCL

AMD дорабатывает средства GPGPU для разработчиков приложений.

Новая версия 2.01 пакета Stream для неграфического использования GPU AMD содержит изменения «средней тяжести»:

  • ATI Stream Profiler теперь полностью интегрируется в среду Microsoft Visual Studio 2008;
  • поддержка Red Hat® Enterprise Linux версии 5.3;
  • поддержка отладки ядра приложений OpenCL с помощью отладчика GNU в среде Linux;
  • предварительная реализация взаимодействия OpenCL и Direct3D 9/10;
  • четыре новых примера;
  • поддержка отдельно загружаемого средства анализа производительности Stream KernelAnalyzer;
  • исправление множества проблем с компиляцией и исполнением OpenCL;
  • поддержка разработки на Radeon HD 5670 и 5570.

AMD logo

Загрузить пакет ATI Stream можно с сайта AMD для 32- и 64-разрядных версий OpenSUSE, RHEL, Ubuntu, Windows XP, Vista и 7.

OpenCL logo

Наиболее интересным представляется запрятанная в нёдрах Release Notes улучшенная поддержка ATI CAL, низкоуровневого API для AMD GPU, являющегося эквивалентом CUDA driver-level API у NVIDIA. Теперь можно использовать CAL и OpenCL в одном приложении, и даже запускать OpenCL-программы при неустановленном драйвере Catalyst, что будет востребованным в серверной среде. ATI CAL также позволяет достичь большей производительности с графическими процессорами AMD предыдущих поколений, чья совместимость с OpenCL ограничена.

А вот что не исчезло, так это проблемы с работой OpenCL в системах с установленными реализациями как от AMD, так и от NVIDIA. Разработчикам по-прежнему, как в цирке, приходится перебрасывать из руки в руку библиотеки OpenCL.dll от конкурентов для отладки универсального приложения.