Developer Faith Ekstrand has given a holiday update on the state of NVK, the unofficial open source NVIDIA Vulkan driver and how it's coming along that's worth a read as it's all quite exciting.
The progress on it has been quite ridiculous! At the end of 2022 they had a bare-bones Vulkan 1.0 implementation that only ran a few demos. Now a year later, not only does it have support for around 80 Vulkan extensions and major features but it also support nearly everything needed by DXVK and Zink.
How's performance? Ekstrand mentioned now there's "proper power management and performance improvements in NVK" they can hit around 40-60% of NVIDIA's proprietary driver in "several games". Valve developer Pierre-Loup Griffais also recently put up a post on X (formerly Twitter) recently noting:
Decided to try it.. Hat in Time 1080p, Very High, VSync OFF. NVK is vulkan-nouveau-git gddf2ca4, on kernel 6.7.0-rc5-1-mainline. Blob is 545.29.06. 3995WX+RTX3090. Proton Experimental.
NVK: 210FPS
Blob: 165FPS
Cpu-bound, but still :-)
What's to come in 2024 for the NVK driver? Get it bumped up to Vulkan 1.3 support and eventually pass conformance which should happen in the first part of the year. This involves a rewrite of the pipeline code and implementing the VK_EXT_shader_object extension, which should bring the driver out of Beta so that distributions can ship NVK by default. Sounds like everything it needs will be ready in Linux kernel 6.7 and potentially in the Fedora 40 release.
After that getting everything hooked up to support VKD3D-Proton, more focus on performance. As Ekstrand said "If 2023 was about making games playable, 2024 will be about making games fast.".
And of course more GPU support too as work continues on Maxwell GPUs. Full article here.
I am thoroughly sick of using the proprietary drivers. It's great to see this much progress on NVK in such a short period of time, with the implication that NVK might be a viable replacement for the proprietary drivers sometime next year. The proprietary drivers have been a pain point for the desktop for so long, even if they're better than the AMD drivers in some ways.
Also, cheers to Collabora for making big inroads with Wayland by funding development on both the Wayland Wine driver and NVK this year. Or whoever is funding Collabora to fund these developers. Or both. Apparently Google was funding some of this work on the Wine Wayland driver..?
Last edited by pleasereadthemanual on 21 December 2023 at 3:44 pm UTC
Quoting: ArdjeWow, so I can actually use my steam machine again? Or are those too old? There was vulkan support on the steam machine. But taking it out of the hands of nvidia is only positive.Ah, only new cards. My 2012 laptop with an 2014 AMD on the express card bus was more capable than my 2016 steam machine with unswappable unsupported nvidia :-(.
Quoting: ArdjeNVK is looking to add support for Maxwell-era cards (2014+) once they have Turing onwards working properly.Quoting: ArdjeWow, so I can actually use my steam machine again? Or are those too old? There was vulkan support on the steam machine. But taking it out of the hands of nvidia is only positive.Ah, only new cards. My 2012 laptop with an 2014 AMD on the express card bus was more capable than my 2016 steam machine with unswappable unsupported nvidia :-(.
Quoting: pleasereadthemanualNVENC would be nice, but I'm fine with not having it. CUDA might be necessary for some of my workflows at some point...
Vulkan Video Decoding (and encoding) is a thing and might be a good alternative for NVENC at some point, especially for people opting to ditch the proprietary driver.
Probably, the things people are going to miss out on is CUDA and maybe DLSS, which I assume will not work without the proprietary driver.
Quoting: NozoThe GPU I have is a kepler-based graphics card, which is about to be discontinued by NVIDIA, it is literally going to have a higher lifespan on Windows than on Linux due to the transition to Wayland, since the proprietary drivers for this graphics card have already entered the legacy branch for a long time, which is ridiculous, the planned obsolescence caused by proprietary drivers is alienating.
My R9 Fury is also considered "legacy" by AMD proprietary drivers on both Windows and Linux, and also AMDVLK, so no Vulkan 1.3 support and no Vulkan Video. Runs great on the latest Mesa drivers though, which means Vulkan 1.3 and Vulkan Video (still experimental though).
Actually, I got to experience the whole upbringing of the open stack using this card which was an exciting journey of sorts, and earlier this year I received an RTX2070S as a very generous gift so now I get to experience almost the same thing again all over using hardware from team green.
My hope is that as NVK gets progressively better nvidia will "give up" and embrace open source the way AMD has, but I'm not holding my breath.
Quoting: TheRiddickGuessing these open-source nvk drivers will never get DLSS, HDMI2.1, and possibly no RT acceleration from the RTX cores.Do you know what the situation is with the AMD drivers? My understanding is that the HDMI standard prevents a free software implementation of the standard (due to patents, maybe?) so the AMDGPU PRO drivers need to be used for that?
I'm probably fine with not having most of these features in the drivers so long as my Wayland desktop is less buggy. CUDA might be a requirement for Blender/DaVinci Resolve but I don't use either of them (yet). I've never used DLSS and I don't know what RT acceleration is despite having an RTX card, so I assume I don't use it..?
Quoting: BrisseI wasn't even thinking of decoding until you mentioned it, but now that we're talking about it, I hope Vulkan Video Decoding is able to work as a replacement for some codecs. I do wonder about VP8/VP9 and other codecs, though; it only seems to be focused on H.264/5 for now?Quoting: pleasereadthemanualNVENC would be nice, but I'm fine with not having it. CUDA might be necessary for some of my workflows at some point...
Vulkan Video Decoding (and encoding) is a thing and might be a good alternative for NVENC at some point, especially for people opting to ditch the proprietary driver.
Probably, the things people are going to miss out on is CUDA and maybe DLSS, which I assume will not work without the proprietary driver.
I don't know if anyone at Collabora is crazy enough to build an alternative implementation of CUDA/DLSS (is that even possible?), but I can hope.
See more from me