OpenCL standartının müstəqil tətbiqi ilə PoCL 3.1-in buraxılışı

Qrafik sürətləndirici istehsalçılarından müstəqil olan və OpenCL ləpələrinin müxtəlif növ qrafiklərdə və mərkəzi sistemlərdə icrası üçün müxtəlif arxa hissələrdən istifadə etməyə imkan verən OpenCL standartının tətbiqini inkişaf etdirən PoCL 3.1 (Portable Computing Language OpenCL) layihəsinin buraxılışı təqdim olundu. prosessorlar. Layihə kodu MIT lisenziyası altında paylanır. X86_64, MIPS32, ARM v7, AMD HSA APU, NVIDIA GPU platformalarında və VLIW arxitekturasına malik müxtəlif ixtisaslaşdırılmış ASIP (Tətbiq üçün Xüsusi Təlimat dəsti Prosessoru) və TTA (Nəqliyyat Tətikli Arxitektura) prosessorlarında işi dəstəkləyir.

OpenCL kernel kompilyatorunun tətbiqi LLVM əsasında qurulub və Clang OpenCL C üçün ön hissə kimi istifadə olunur. Müvafiq daşınma və performansı təmin etmək üçün OpenCL kernel kompilyatoru VLIW, superscalar, SIMD, SIMT, çox nüvəli və çox iş parçacığı kimi kod icrasını paralelləşdirmək üçün müxtəlif aparat resurslarından istifadə edə bilən kombinasiya funksiyaları yarada bilər. ICD sürücülərinə dəstək var (Quraşdırıla bilən Müştəri Sürücüsü). CPU, ASIP (TCE/TTA), HSA arxitekturasına əsaslanan GPU və NVIDIA GPU (libcuda vasitəsilə) vasitəsilə əməliyyatı dəstəkləmək üçün arxa tərəflər mövcuddur.

Yeni versiyada:

  • Clang/LLVM 15.0 üçün əlavə dəstək.
  • CPU və CUDA sürücüləri üçün əhəmiyyətli dərəcədə təkmilləşdirilmiş SPIR-V shader aralıq təmsil dəstəyi.
  • Onlayn tərtibi dəstəkləməyən ixtisaslaşdırılmış aparat (CL_DEVICE_TYPE_ACCELERATOR) və fərdi cihazlar (CL_DEVICE_TYPE_CUSTOM) üçün drayver əhəmiyyətli dərəcədə yenidən işlənib. Accel və ttasim sürücüləri yeni AlmaIF sürücüsünə birləşdirilib.
  • Vulkan qrafik API üçün drayver üzərində iş davam edir.
  • cl_khr_command_buffer genişləndirilməsinin əsas tətbiqi təklif olunur ki, bu da bir zəngdə icra üçün OpenCL əmrlərinin ardıcıllığını yazmağa imkan verir.

Mənbə: opennet.ru

Добавить комментарий