Рэліз PoCL 1.3, незалежнай рэалізацыі стандарта OpenCL

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

Рэалізацыя кампілятара ядраў OpenCL пабудавана на базе LLVM, а ў якасці фронтэнда для OpenCL C выкарыстоўваецца Clang. Для забеспячэння належнай пераноснасці і прадукцыйнасці кампілятар ядраў OpenCL можа генераваць камбінаваныя функцыі, якія могуць выкарыстоўваць розныя апаратныя рэсурсы для распаралельвання выканання кода, такія як VLIW, суперскалярнасць, SIMD, SIMT, шмат'ядрасць і шматструменнасць. Маецца падтрымка ICD-драйвераў
(Installable Client Driver). Прысутнічаюць бэкэнды для забеспячэння працы праз CPU, ASIP (TCE/TTA), GPU на базе архітэктуры HSA і GPU NVIDIA (CUDA).

У новай версіі дададзена падтрымка LLVM/Clang 8.0. Забяспечана падтрымка ICD (Installable Client Driver) на платформе macOS. Рэалізавана магчымасць зборкі pocl без бэкэнд драйвераў для CPU. Для HSA (Heterogeneous System Architecture) прадстаўлена пачатковая падтрымка кампіляцыі ISA па-над HSA runtime. Праведзена чыстка кодавай базы, у тым ліку выдалена бібліятэка Vecmathlib і спынена падтрымка старых версій LLVM (менш 6.0).

Крыніца: opennet.ru

Дадаць каментар