A recent merge request on the Mesa Git repository added the initial support for allowing drivers to chose Zink as the translation layer for handling OpenGL. This basically does an OpenGL-on-Vulkan implementation making it easier for newer cards to support OpenGL through a generic implementation, reducing duplicate code and making it easier to keep OpenGL around since while not yet deprecated it is being less used on modern games.
The merge allows owners of the NVIDIA GeForce RTX 20xx series GPUs and newer to opt to use Zink instead of relying on the default NVC0 Gallium3D implementation to handle OpenGL requests. Those who want to give it a try, it should be as simple as setting the NOUVEAU_USE_ZINK=1
environment variable after updating Mesa 24.1 when your distribution receives the update that is currently only on the main branch of Mesa repository.
Since the merge from branch airlied/zink-driver-choice
to main
was merged 2 days ago, most distros might not be distributing those patches yet. For those who use source-based distros or any source-base package building system like AUR, the package mesa-git
is available as a means of tracking the main branch and testing these bleeding-edge features.
While NVK as a technology is still in-development with plenty left to do, there has been lots of improvements being implemented on the last year. Related articles:
- Mesa 24.0 out now with AMD RADV ray-tracing improvements, more NVIDIA NVK improvements
- Check out this great overview of NVK, the open source NVIDIA Vulkan driver
- Mesa 23.3 is out now with the NVK Vulkan driver for NVIDIA
Additionally, developer Mike Blumenkrantz recently put up another blog post about NVK work and thanks to some recent changes mentioned that "As a result, all GL games now work on NVK. No hyperbole. They just work".
Their proprietary drivers are getting worse with each new release, more bugs, more problems... I feel ashamed of not having payed for AMD instead.
I'd wish I could already use open-source drivers.
"In February 2019, Nvidia released the GeForce 16 series of GPUs, which utilizes the new Turing design but lacks the RT and Tensor cores. "
Quoting: Purple Library GuyI was expecting OpenGL per se to start getting deprecated in favour of Zink + Vulkan, but not so soon.
The advantage here is that Zink implements some of the multithreaded goodies from Vulkan making it naturally faster than any OpenGL implementation on nouveau - https://www.collabora.com/news-and-blog/news-and-events/nvk-holiday-update.html
If it reduces maintenance in OpenGL implementations and ends up adding performance, it's a win-win situation :)
Maybe if we beg harder and white knight more sempai will notice us and finally respect us.
I may still be paying off my home loan to buy a Novidia GPU but they're gonna finally give us a fully open source driver that respects us real soon right guys?
Quoting: nwildnerIf it reduces maintenance in OpenGL implementations and ends up adding performance, it's a win-win situation :)
Yes, and even if there is a slight decrease in OpenGL performance, reducing the landscape and having more manpower available for the critical parts is a (very) big win in itself imho.
Some time down the road, but hey - there is a road!
See more from me