presented the release of the project pocl 3.0 (Portable Computing Language OpenCl), which develops the implementation of the OpenCl standard, independent of the manufacturers of graphic accelerators and allows the use of various backens to perform OpenCl-yader on different types of graphic and central processors. The project code is distributed under the MIT license. Work on the platforms of the X86_64, MIPS32, ARM V7, AMD HSA APU, NVIDIA GPU and various specialized asip ( application-specific instructions instructions ) and TTA processors ( workport triggered architecture ) with architecture vliw .
The implementation of the OpenCL nuclei compiler is based on LLVM, and Clang is used as an OpenCL front. To ensure proper tolerance and performance, the OpenCl compileor can generate combined functions that can use various hardware resources for parallelization of code execution, such as VLIW, supercularity, SIMD, SIMT, multi -ceremony and multi -plate. There is support for ICD drivers
(Installable Client Driver). There are backens to ensure work through CPU, asip (tce/tta), GPU based on architecture hsa and gpu nvidia (via Libcuda).
- The minimum set of capabilities required to support the specification OpenCl 3.0 is implemented. OpenCl 3.0 support is still available in the CPU base under the LLVM 14 (in other backens and in the presence of old LLVM versions, OpenCl 1.2 support is provided).
- Added support by Clang/LLVM 14.
- Improved tracing and visualization.
- Added support for generating specialized groups of functions and included them in executable files with OpenCl nuclei.