Portable Computing Language 4.0 Adds Intel Level Zero API Driver
The Portable Computing Language "PoCL" began as an open-source CPU-based OpenCL implementation that has become quite a comprehensive implementation over the years. But in leveraging the LLVM/Clang compiler stack, over time PoCL has grown beyond just a CPU implementation to also support OpenCL execution on NVIDIA GPUs, AMD HSA-capable GPUs, and more. The latest now coming with PoCL 4.0 is support for Intel Level Zero execution for running this OpenCL implementation over Intel Arc Graphics GPUs.
Intel's "Neo" Compute-Runtime stack with Level Zero and OpenCL has been working out very well in recent months on Arc Graphics. There you already have a great OpenCL 3.0 implementation, so the PoCL prospects with Level Zero support aren't too significant. Though running PoCL atop the Intel compute stack with Level Zero may be interesting for debugging or profiling for comparing OpenCL implementations for performance purposes. Plus the Level Zero API is an open standard so it's possible some other non-Intel implementations could come and provide interesting for PoCL.
In any event with Friday's release of the PoCL 4.0 release candidate one of the major changes with this new version is the introduction of a Level Zero API driver.
Also significant with PoCL 4.0-RC1 is the CPU drivers gaining support for program-scope variables, generic AS, cl_khr_fp16 (LLVM 16+), cl_khr_subgroups, and cl_intel_unified_shared_memory. This next version also adds LLVM/Clang 16.0 compiler compatibility and makes more improvements to the SPIR-V IR support in the CPU and CUDA back-end drivers.
The PoCL 4.0 release candidate can be downloaded from GitHub. Those wishing to learn more about this open-source, portable OpenCL implementation can do so at PortableCL.org.
Intel's "Neo" Compute-Runtime stack with Level Zero and OpenCL has been working out very well in recent months on Arc Graphics. There you already have a great OpenCL 3.0 implementation, so the PoCL prospects with Level Zero support aren't too significant. Though running PoCL atop the Intel compute stack with Level Zero may be interesting for debugging or profiling for comparing OpenCL implementations for performance purposes. Plus the Level Zero API is an open standard so it's possible some other non-Intel implementations could come and provide interesting for PoCL.
In any event with Friday's release of the PoCL 4.0 release candidate one of the major changes with this new version is the introduction of a Level Zero API driver.
Also significant with PoCL 4.0-RC1 is the CPU drivers gaining support for program-scope variables, generic AS, cl_khr_fp16 (LLVM 16+), cl_khr_subgroups, and cl_intel_unified_shared_memory. This next version also adds LLVM/Clang 16.0 compiler compatibility and makes more improvements to the SPIR-V IR support in the CPU and CUDA back-end drivers.
The PoCL 4.0 release candidate can be downloaded from GitHub. Those wishing to learn more about this open-source, portable OpenCL implementation can do so at PortableCL.org.
Add A Comment