CLVK Still Making Progress As Experimental OpenCL Over Vulkan

Last September we initially covered the experimental CLVK initiative for getting OpenCL kernels running over Vulkan. Our benchmarks from October showed some OpenCL benchmarks even running on CLVK atop Vulkan but the initial performance left a lot to be desired.
Fortunately, CLVK popped back up on my radar this week and it's still moving forward as one of the few OpenCL-on-Vulkan open-source efforts. It's still at OpenCL 1.2 era support but without handling for images, device partitioning, out-of-order queues, and other limitations. But the progress is quite modest for largely being done by a sole developer paired with CLSPV and SPIR-V tooling helping in the heavy lifting.
Since last writing about CLVK, it's picked up support for Talvos as a Vulkan emulator/interpreter for handling SPIR-V modules on the CPU and thus allowing CLVK to operate without a Vulkan-enabled GPU.
CLVK is still only known to work with some programs like the SHOC benchmarks, the OpenCL conformance tests partially, OpenCL Toys, and other select software, but at least it's moving forward. Those wanting to try it out or potentially get involved with its development can learn more from CLVK on GitHub.
5 Comments