ĂshtĂ« publikuar edicioni i projektit PoCL 5.0 (Portable Computing Language OpenCL), qĂ« zhvillon zbatimin e standartit OpenCL, tĂ« pavarur nga prodhuesit e akceleratorĂ«ve grafikĂ« dhe qĂ« lejon pĂ«rdorimin e backend-eve tĂ« ndryshme pĂ«r ekzekutimin e bĂ«rthamave OpenCL nĂ« lloje tĂ« ndryshme procesorĂ«sh grafikĂ« dhe qendrorĂ«. Kodi i projektit shpĂ«rndahet nĂ«n licencĂ«n MIT. MbĂ«shtetet pĂ«rdorimi nĂ« platformat X86_64, MIPS32, ARM v7, AMD HSA APU, NVIDIA GPU dhe nĂ« njĂ« sĂ«rĂ« procesorĂ«sh tĂ« specializuar ASIP (Application-Specific Instruction-set Processor) dhe tĂ« procesorĂ«ve TTA (Transport Triggered Architecture) me arkitekturĂ« VLIW.
Implementimi i kompajlerit të kernelëve OpenCL është ndërtuar mbi bazën e LLVM, ndërsa Clang përdoret si frontend për OpenCL C. Për të siguruar portabilitetin dhe performancën e nevojshme, kompajleri i kernelëve OpenCL mund të gjenerojë funksione të kombinuara që përdorin burime të ndryshme harduerike për paralelizimin e ekzekutimit të kodit, si VLIW, superskalariteti, SIMD, SIMT, shumëbërthamësia dhe shumëfijëzimi. Mbështeten edhe driverët ICD (Installable Client Driver). Janë të pranishëm backend-e për funksionim përmes CPU, ASIP (TCE/TTA), GPU të bazuara në arkitekturën HSA dhe NVIDIA GPU (përmes libcuda).
NĂ« versionin e ri:
- ĂshtĂ« realizuar njĂ« backend i ri âRemoteâ, i destinuar pĂ«r organizimin e llogaritjeve tĂ« shpĂ«rndara pĂ«rmes transferimit tĂ« pĂ«rpunimit tĂ« komandave OpenCL nĂ« hoste tĂ« tjerĂ« nĂ« rrjet, ku Ă«shtĂ« aktivizuar procesi nĂ« sfond pocld.
- Në drejtuesin CUDA janë realizuar mundësi dhe zgjerime të reja OpenCL 3.0, si operacione atomike, variabël me fushë të kufizuar shikimi, nëngrupet intel_sub_group_shuffle, intel_sub_group_shuffle_xor, get_sub_group_local_id, sub_group_barrier dhe sub_group_ballot.
- ĂshtĂ« pĂ«rmirĂ«suar mbĂ«shtetje pĂ«r CPU tĂ« bazuar nĂ« arkitekturĂ«n RISC-V. Puna e PoCL Ă«shtĂ« testuar nĂ« tabllĂ«n Starfive VisionFive 2 me mjedisin e ngarkuar Ubuntu 23.10 me LLVM 17 dhe GCC 13.2.
- ĂshtĂ« realizuar zgjerimi cl_ext_float_atomics me mbĂ«shtetje pĂ«r FP32 dhe FP64.
- Zbatimi i zgjerimit cl_khr_command_buffer është përditësuar në versionin 0.9.4.
- ĂshtĂ« propozuar njĂ« backend eksperimental AlmaIF pĂ«r FPGA.
- ĂshtĂ« hequr mbĂ«shtetja e papĂ«rfunduar pĂ«r pĂ«rfaqĂ«simin ndĂ«rmjetĂ«s tĂ« shenjuesve SPIR 1.x/2.0. Si gjuhĂ« pĂ«rfaqĂ«suese tĂ« shenjuesve Ă«shtĂ« shpallur SPIR-V.
- ĂshtĂ« shtuar mbĂ«shtetje pĂ«r Clang/LLVM 17.0. ĂshtĂ« shpallur e vjetĂ«ruar mbĂ«shtetja pĂ«r Clang/LLVM 10-13.
Burimi: opennet.ru
