Wydanie PoCL 1.4, niezależnej implementacji standardu OpenCL

Dostępny premiera projektu PoCL 1.4 (Portable Computing Language OpenCL), rozwijającego realizację standardu OpenCL, niezależną od producentów przyspieszaczy graficznych i umożliwiającego wykorzystanie różnych backendów do wykonywania jąder OpenCL na różnych typach procesorów graficznych i centralnych. Kod projektu rozpowszechniany na licencji MIT. Wsparcie dla platform X86_64, MIPS32, ARM v7, AMD HSA APU oraz różnych wyspecjalizowanych procesorów TTA (Transport Triggered Architecture) z architekturą VLIW.

Implementacja kompilatora jąder OpenCL oparta jest na LLVM, a jako frontend dla OpenCL C wykorzystuje Clang. Aby zapewnić odpowiednią przenośność i wydajność, kompilator jąder OpenCL może generować funkcje kombinowane, które mogą wykorzystać różne zasoby sprzętowe do równoległego wykonywania kodu, takie jak VLIW, superskalarny, SIMD, SIMT, wielordzeniowy i wielowątkowy. Obsługa sterowników ICD jest dostępna.
(Installable Client Driver). Istnieją backendy zapewniające działanie przez CPU, ASIP (TCE/TTA), GPU oparte na architekturze HSA i GPU NVIDIA (CUDA).

W nowej wersji:

  • Dodano wsparcie dla LLVM/Clang 9.0. Wsparcie dla wersji LLVM starszych niż 6.0 zostało zakończone.
  • Ulepszona implementacja dla CPU pośrednich reprezentacji kodu SPIR i SPIR-V (używane w API Vulkan), które mogą być stosowane zarówno do reprezentacji shaderów grafiki, jak i do obliczeń równoległych;
  • Dodano sterownik pocl-accel z przykładem infrastruktury wspierającej sprzętowe przyspieszacze OpenCL 1.2, implementujące odzwierciedlony w pamięci (mmap) interfejs zarządzający;
  • Dodano możliwość budowy instalacji pocl, niewiązanych z katalogami (relocatable).

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster