This is exciting as heck! Collabora developer Faith Ekstrand and various contributors have been powering through developing NVK, the open source Vulkan driver for NVIDIA.
It's come along rather nicely in such a short time, that they're now preparing to have it actually merged into Mesa along with the rest of the open source graphics for Linux.
A majority of the work was done by Ekstrand with Collabora, with Karol Herbst from Red Hat also doing "a lot of the ground work and has done a lot of debugging and figuring out what we need to do on various generations", plus Dave Airlie of Red Hat also doing a bunch of needed Linux kernel work.
What's the current status? According to the draft it has a "pretty solid set at this point" which Google Summer of Code developer Mohamed Ahmed working through YCbCr support and when that is done it should have Vulkan 1.2 support with plenty of features on top of that.
Currently they don't have everything needed for DXVK, VKD3D-Proton and Zink but they've got "most" of it. So perhaps it won't be too long until NVIDIA GPU owners can use Mesa to run Vulkan games, that would be pretty amazing.
As for hardware support, Collabora told me: “Initially, Turing (20XX and 16XX series) and later. Eventually, we want to go as far back as Kepler (6XX and 7XX series)”.
Their plan is to get it merged into Mesa once the Linux kernel patches are ready, so you'll need a newer or patched kernel to actually make use of NVK.
You can see the draft merge request here and Collabora announcement here.
I'm not really planning on ever buying anything NVIDIA anymore for the foreseeable future, but it is still really awesome to finally see open source NVIDIA drivers coming along.
My laptop has a Turing chip though, cant wait to try it out on that when the time comes.
If that's the case, it's not just exciting. It's finally a freaking game changer (literally hahaha). I didn't think this would go as fast. :)
Do you know if it's already possible to try it?
Quoting: MinuxOh my. Does this mean we might be able to change it for the close-sourced version soon?You don't yet get a usable OpenGL driver when using open source drivers on an Nvidia card. That's what Zink compatibility will be necessary for.
If that's the case, it's not just exciting. It's finally a freaking game changer (literally hahaha). I didn't think this would go as fast. :)
Do you know if it's already possible to try it?
Quoting: PikoloYou don't yet get a usable OpenGL driver when using open source drivers on an Nvidia card. That's what Zink compatibility will be necessary for.
Nouveau has supported OpenGL for more than 15 years now. It's not as well-tested as on AMD or Intel, but it should be functional barring regressions.
If you're referring to the NVIDIA open kernel driver, does this mean that this new approach will get rid of the Mesa OpenGL implementation entirely? Relying 100% on Zink in its current state feels risky to me, not to mention the overhead it has compared to a well-optimized OpenGL implementation.
Last edited by Calinou on 27 July 2023 at 11:08 am UTC
Quoting: CalinouWell, OpenGL is legacy at this point. No one is really doing anything modern with it, and we've already seen Zink become an official thing in some places. It seems like a better idea to keep optimizing Zink for OpenGL where it does already seem to perform quite well.Quoting: PikoloYou don't yet get a usable OpenGL driver when using open source drivers on an Nvidia card. That's what Zink compatibility will be necessary for.
Nouveau has supported OpenGL for more than 15 years now. It's not as well-tested as on AMD or Intel, but it should be functional barring regressions.
If you're referring to the NVIDIA open kernel driver, does this mean that this new approach will get rid of the Mesa OpenGL implementation entirely? Relying 100% on Zink in its current state feels risky to me, not to mention the overhead it has compared to a well-optimized OpenGL implementation.
https://www.gamingonlinux.com/2018/08/valve-officially-confirm-a-new-version-of-steam-play-which-includes-a-modified-version-of-wine/
Quoting: Liam DaweWell, OpenGL is legacy at this point. No one is really doing anything modern with it, and we've already seen Zink become an official thing in some places. It seems like a better idea to keep optimizing Zink for OpenGL where it does already seem to perform quite well.
No especially on emulators area opengl still stay used sadly
However various emulators like snes9x traditionally dont use anything more than opengl but this year them up to vulkan wagon
But vulkan renderer still lacking case vba-m, mgba, skyemu, melonds and others, maybe this situation can improve in future but vulkan programming is more complex than opengl
Zink curiously allow work various of before cited emulators but on intel anv driver lack of some important feature like:
QuoteEXT_attachment_feedback_loop_layout
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23523
before features are needed in some emulators like melonds (problably can solve rendering issues with zink), mgba (seriously 3D impact performance case simpsons road rage*)
3D is used of anyone ask because in this type of games like road rage, mario kart, konami racers, f-zero and maybe other when scenary stay on 3D
gba native resolution is 240*160 is possible up resolution until 16x aka 3840x2560
Maybe this situation can improve in future
Last edited by mrdeathjr on 27 July 2023 at 3:33 pm UTC
Quoting: mrdeathjrNo especially on emulators area opengl still stay used sadlyDon't forget OpenMW.
Quoting: KlaasQuoting: mrdeathjrNo especially on emulators area opengl still stay used sadlyDon't forget OpenMW.
and as your said other engine opensource implementations case openmohaa, opennox, openrct, orctw, devilutionX and many others too
resuming think vulkan or zink can be a magic bullet for all opengl programs for now is not possible and maybe for much time more
however is a good alternative, i tested many emulators, non native apps case wine, native apps too and zink works in many cases but lack in others too for now
Last edited by mrdeathjr on 27 July 2023 at 4:28 pm UTC
See more from me