PoCL 1.4 väljalase, OpenCL-i standardi sõltumatu rakendus

Saadaval projekti vabastamine PoCL 1.4 (Portable Computing Language OpenCL), mis arendab graafikakiirendite tootjatest sõltumatut OpenCL-i standardi teostust, mis võimaldab kasutada erinevaid taustaprogramme OpenCL-i tuumade täitmiseks erinevat tüüpi graafikatel ja keskprotsessoritel. Projekti kood jaotatud MIT litsentsi alusel. Toetab tööd X86_64, MIPS32, ARM v7, AMD HSA APU platvormidel ja erinevatel spetsiaalsetel TTA protsessoritel (Transpordi käivitatud arhitektuur) arhitektuuriga VLIW.

OpenCL-i kerneli kompilaatori juurutamine on üles ehitatud LLVM-i baasil ja Clangi kasutatakse OpenCL C esiotsana. Nõuetekohase teisaldatavuse ja jõudluse tagamiseks saab OpenCL-i kerneli kompilaator genereerida kombineeritud funktsioone, mis võivad koodi täitmise paralleelseerimiseks kasutada erinevaid riistvararessursse, nagu VLIW, superskalaar, SIMD, SIMT, mitmetuumaline ja mitme lõimega töötlemine. Saadaval on ICD draiveri tugi
(Installeeritav kliendidraiver). CPU, ASIP (TCE/TTA) ja GPU-põhise arhitektuuri kaudu töö tagamiseks on olemas taustaprogrammid HSA ja NVIDIA GPU (CUDA).

В uus versioon:

  • Lisatud tugi LLVM/Clang 9.0. LLVM-i versioonide, mis on vanemad kui 6.0, tugi on lõpetatud.
  • Täiustatud CPU-põhine vahepealsete koodiesitluste rakendamine SPIR и SPIR-V (kasutatakse Vulkan API-s), mida saab kasutada nii graafika varjundite kui ka paralleelarvutuse jaoks;
  • Lisatud pocl-accel draiver koos näidisinfrastruktuuriga, et toetada OpenCL 1.2 riistvarakiirendeid, mis rakendavad mälukaardistatud (mmap) juhtimisliidest;
  • Lisatud on võimalus ehitada pocl-installatsioone, mis pole kataloogidega seotud (ümberpaigutatavad).

Allikas: opennet.ru

Lisa kommentaar