Wydanie PoCL 3.1 z niezależną implementacją standardu OpenCL

Zaprezentowano wydanie projektu PoCL 3.1 (Portable Computing Language OpenCL), rozwijającego realizację standardu OpenCL, niezależną od producentów akceleratorów graficznych, umożliwiającą wykorzystanie różnych backendów do wykonywania rdzeni OpenCL na różnych typach procesorów graficznych i centralnych. Kod projektu jest udostępniany na licencji MIT. Obsługiwane są platformy X86_64, MIPS32, ARM v7, AMD HSA APU, NVIDIA GPU oraz różne wyspecjalizowane procesory ASIP (Application-Specific Instruction-set Processor) i TTA (Transport Triggered Architecture) z architekturą VLIW.

Implementacja kompilatora jąder OpenCL oparta jest na LLVM, a jako frontend dla OpenCL C używany jest Clang. Aby zapewnić odpowiednią przenośność i wydajność, kompilator jąder OpenCL może generować kombinowane funkcje, które mogą wykorzystywać różne zasoby sprzętowe do równoległego wykonywania kodu, takie jak VLIW, superskalarny, SIMD, SIMT, wielordzeniowość i wielowątkowość. Obsługiwane są sterowniki ICD (Installable Client Driver). Dostępne są backendy umożliwiające działanie poprzez CPU, ASIP (TCE/TTA), GPU oparte na architekturze HSA oraz GPU NVIDIA (przez libcuda).

W nowej wersji:

  • Dodano wsparcie dla Clang/LLVM 15.0.
  • Znacząco poprawiono wsparcie dla pośredniego przedstawienia shaderów SPIR-V dla sterowników wykorzystujących CPU i CUDA.
  • Znacząco przepisano sterownik dla specjalistycznego sprzętu (CL_DEVICE_TYPE_ACCELERATOR) i urządzeń własnych (CL_DEVICE_TYPE_CUSTOM), które nie obsługują kompilacji online. Sterowniki accel i ttasim połączono w nowy sterownik AlmaIF.
  • Kontynuowano pracę nad sterownikiem dla API graficznego Vulkan.
  • Zaproponowano podstawową realizację rozszerzenia cl_khr_command_buffer, umożliwiającego zapisanie sekwencji poleceń OpenCL do ich wykonania w jednym wywołaniu.

Ź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