Mesa's Rusticl Lands Support For SPIR-V Programs
It's been a while since there has been any major additions to Mesa's Rusticl OpenCL implementation led by Red Hat's Karol Herbst while today he merged support for SPIR-V programs to this Rust-written driver. This SPIR-V support is necessary for eventually supporting SYCL and HIP.
Rusticl already makes use of the SPIR-V intermediate representation internally for all OpenCL programs while this latest work to land is support for ingesting SPIR-V programs such as via the cl_khr_il_program extension.
The merge request had been open for the past four months while today everything was wrapped up and the SPIR-V support merged for Mesa 23.1, which will be released as stable around May.
As Karol noted in that merge request, "we'll need this optional OpenCL feature for SyCL and HIP."
It's great seeing all the work going into Rusticl from broad support by Mesa Gallium3D drivers, experimental support with Zink for running on Vulkan drivers, and some very positive performance results so far. Rusticl certainly is far better off than Gallium3D's older "Clover" OpenCL implementation.