Издање ПоЦЛ 1.4, независне имплементације ОпенЦЛ стандарда

Доступан издање пројекта ПоЦЛ 1.4 (Portable Computing Language OpenCL), развивающего реализацию стандарта OpenCL, независимую от производителей графических ускорителей и позволяющую использовать различные бэкенды для выполнения OpenCL-ядер на разных типах графических и центральных процессоров. Код проекта дистрибуира под лицензией MIT. Поддерживается работа на платформах X86_64, MIPS32, ARM v7, AMD HSA APU и различных специализированных TTA-процессорах (Transport Triggered Architecture) c архитектурой VLIW.

Имплементација компајлера ОпенЦЛ кернела је изграђена на основу ЛЛВМ-а, а Цланг се користи као предњи крај за ОпенЦЛ Ц. Да би обезбедио одговарајућу преносивост и перформансе, компајлер језгра ОпенЦЛ може да генерише комбиноване функције које могу да користе различите хардверске ресурсе за паралелизовање извршавања кода, као што су ВЛИВ, суперскалар, СИМД, СИМТ, вишејезгарни и вишенитни. Доступна подршка за ИЦД драјвер
(Installable Client Driver). Присутствуют бэкенды для обеспечения работы через CPU, ASIP (TCE/TTA), GPU на базе архитектуры ХСА и GPU NVIDIA (CUDA).

В Нова верзија:

  • Додата подршка ЛЛВМ/Цланг 9.0. Прекращена поддержка версий LLVM старее 6.0.
  • Улучшена реализация на базе CPU промежуточных представлений кода СПИР и СПИР-В (используется в API Vulkan), которые могут применяться как для представления шейдеров для графики, так и для параллельных вычислений;
  • Добавлен драйвер pocl-accel с примером инфраструктуры для поддержки аппаратных ускорителей OpenCL 1.2, реализующих отражаемый в память (mmap) управляющий интерфейс;
  • Добавлена возможность сборки установок pocl, не привязанных к каталогам (relocatable).

Извор: опеннет.ру

Додај коментар