Avaldatud on projekt PoCL 5.0 (Portable Computing Language OpenCL) versioon, mis arendab OpenCLi standardi rakendust, mis on tootjate graafikakiirenditest sĂ”ltumatu ning vĂ”imaldab kasutada erinevaid taustaprogramme OpenCL-i sĂŒdamike tĂ€itmiseks erinevat tĂŒĂŒpi graafika- ja keskprotsessorites. Projekti kood on jagatud MIT litsentsi all. Toetatakse tööd X86_64, MIPS32, ARM v7, AMD HSA APU, NVIDIA GPU ja erinevates spetsialiseeritud ASIP (rakendusele spetsiifiline kĂ€su komplekti protsessor) ja TTA-protsessorites (Transport Triggered Architecture), mis töötavad VLIW arhitektuuril.
OpenCL tuumade kompilaatori rakendus pĂ”hineb LLVM-il ja OpenCL C jaoks on front-endiks Clang. Sobiva ĂŒlekandmise ja jĂ”udluse tagamiseks vĂ”ib OpenCL tuumade kompilaator genereerida kombineeritud funktsioone, mis saavad kasutada erinevaid riistvaralisi ressursse koodi paralleelse tĂ€itmise jaoks, nagu VLIW, super-skalaarne, SIMD, SIMT, mitme tuuma ja mitme niidi tugi. Toetatakse ICD-draivereid (Installable Client Driver). On olemas tagaplaneeringud töö tagamiseks CPU, ASIP (TCE/TTA), HSA arhitektuuril pĂ”hineva GPU ja NVIDIA GPU (libcuda kaudu).
Uues versioonis:
- Rakendatud on uus âRemoteâ taustaprogramm, mis on mĂ”eldud jaotatud arvutuste korraldamiseks, edastades OpenCL-i kĂ€skluste töötlemise teistele hostidele vĂ”rgus, kus töötab taustaprotsess pocld.
- CUDA draiveris on rakendatud tÀiendavaid vÔimekusi ja OpenCL 3.0 laiendusi, nagu aatomilised operatsioonid, piiratud ulatusega muutujad, alagruppide intel_sub_group_shuffle, intel_sub_group_shuffle_xor, get_sub_group_local_id, sub_group_barrier ja sub_group_ballot.
- Parandatud on CPU toe toimet RISC-V arhitektuuri pÔhjal. PoCL-i töö on testitud Starfive VisionFive 2 plaatidega koos Ubuntu 23.10 keskkonnaga, millel on LLVM 17 ja GCC 13.2.
- Laiendatud cl_ext_float_atomics toetusega FP32 ja FP64.
- cl_khr_command_buffer laiendus on uuendatud versioonini 0.9.4.
- Eksperimenteeritud AlmaIF tagaplaneering FPGA jaoks.
- Eemaldatud lÔpetamata tugi shaderite SPIR 1.x/2.0 vaheversioonile. Soovitatavaks shaderite vahekeeleks on kuulutatud SPIR-V.
- Toetatd Clang/LLVM 17.0. Clang/LLVM versioonid 10-13 on kuulutatud vananenuks.
Allikas: opennet.ru
