The Git Repository For The Vulkan Software Renderer In Development
One of the most exciting projects for this year's Google Summer of Code (GSoC) if successful is a Vulkan software renderer.
As we covered in our list of exciting GSoC 2017 projects, Jacob Lifshay is working on a software renderer for Vulkan to support both graphics and compute shaders and can handle converting SPIR-V to LLVM IR. LLVM is in turn used for generating the code for execution on the host CPU. This is exciting as so far we haven't seen any Vulkan CPU-based renderer for something that could be used universally in case of no Vulkan GPU driver being present on the system or if it fails. With Vulkan also supporting compute processes, it could be interesting to see how well it does with compute workloads too.
David Airlie, the X.Org/Mesa veteran who is also a co-founder of the RADV Vulkan driver, is mentoring the student developer Jacob Lifshay on the project.
With the GSoC 2017 period officially having just gotten underway this week, there is understandably not much to report yet. But if you are interested in following Lifshay's work, he appears to be developing the project via vulkan-cpu on GitHub. This is a standalone project and as of now doesn't appear he's integrating this software renderer with Mesa.
He's just started the work and as such there isn't anything close to usable yet or barely any code to look at, but if you want to follow his progress, that's the Git repository. Of course, I'll be monitoring it through the summer -- and hopefully it will continue well past that! -- and so stay tuned to Phoronix for hearing about any milestones for running Vulkan on the CPU.
Good luck Jacob Lifshay!