Check out our Monthly Survey Page to see what our users are running.
We do often include affiliate links to earn us some pennies. See more here.

OpenGL over Vulkan driver Zink gets a huge performance boost

By - | Views: 28,583

We heard you like performance and it seems the new OpenGL over Vulkan driver Zink is going to bring some FPS friends whenever the next release lands. Developer Mike Blumenkrantz who has been contracted by Valve has continued hacking away at the code, and in a new blog post detailed a massive change to the driver to improve gaming performance.

Don't know what Zink is? It's "an OpenGL implementation on top of Vulkan. Or to be a bit more specific, Zink is a Mesa Gallium driver that leverages the existing OpenGL implementation in Mesa to provide hardware accelerated OpenGL when only a Vulkan driver is available" - Collabora.

One of the improvements Blumenkrantz has mentioned in the past is getting Zink up to scratch for gaming, something that hasn't been the focus of blog posts lately. However, this latest one shows two screenshots and the difference between them with the old slow code left and new fast code right (click to enlarge):


Blumenkrantz is making use of MangoHud too, which recently added support for picking up Zink as the driver.

Going from 9FPS to 91FPS is a massive difference, as is the frametiming too so it's not just higher FPS it looks like it will be smoother overall too. How is it done? With the addition of a suballocator that was created by pinching some ready-made code from other parts of Mesa. The result is about 700 lines of code to create the performance booster. The gist of it is that Zink is now a lot smarter and knows when something is busy or can be used elsewhere so Zink can now really do its thing. The code is live in the "zink-wip" branch on GitLab if anyone wanted to be brave and try it out.

See the blog post for the full details.

Article taken from GamingOnLinux.com.
32 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. Find me on Mastodon.
See more from me
The comments on this article are closed.
25 comments
Page: 1/3»
  Go to:

Solitary Jun 17, 2021
Would be cool to see comparison against the (native) OpenGL and possibly also DXVK.
fagnerln Jun 17, 2021
I love the comic in the blog post.

Zink is a nice project, but it looks like a proof of concept than anything else.

I mean, OGL is by far the most supported API, looks like nowadays is not that hard to implement it on hardware. It will be used even less in favor of vulkan, so hardly will receive a nice new feature that vendors needs to update drivers.

It's hard to imagine that Zink will do a miracle, it will hit the Ogl limitation sooner or later.

AMD could benefit from this because it had a worse support in the past, but Mesa already improved it.

The only reason is if they want to deprecate drivers, or newer hardware only support Vulkan, which tbh, don't make much sense.
Kristian Jun 17, 2021
"or newer hardware only support Vulkan, which tbh, don't make much sense."

It surely makes sense to use Zink to run OpenGL games(and other software) on hardware that only supports Vulkan and not OpenGL. As I understand it Zink basically is a way to support legacy software in a post-OpenGL world.
Cmdr_Iras Jun 17, 2021
Question I always assumed that Zink was a similar project to DXVK in that it was simply a translation abstraction between OpenGL and Vulkan. But the wording of the above makes it seem that it is a MESA specific. I.e if Im using Nvidia drivers then I cant use Zink to translate to Vulkan like I would DXVK. Or am I missing something.
CatKiller Jun 17, 2021
View PC info
  • Supporter Plus
Quoting: ajgpQuestion I always assumed that Zink was a similar project to DXVK in that it was simply a translation abstraction between OpenGL and Vulkan. But the wording of the above makes it seem that it is a MESA specific. I.e if Im using Nvidia drivers then I cant use Zink to translate to Vulkan like I would DXVK. Or am I missing something.
You can use Zink on Nvidia. But native OpenGL from Nvidia's driver will be faster.

The motivations for Zink were laid out quite well in its initial announcement.
Eike Jun 17, 2021
View PC info
  • Supporter Plus
Quoting: fagnerlnZink is a nice project, but it looks like a proof of concept than anything else.

I mean, OGL is by far the most supported API, looks like nowadays is not that hard to implement it on hardware.

From what CatKiller linked (I guessed so, but they do know): "One problem is that OpenGL is a big API with a lot of legacy stuff that has accumulated since its initial release in 1992."
CatKiller Jun 17, 2021
View PC info
  • Supporter Plus
Quoting: Eike"One problem is that OpenGL is a big API with a lot of legacy stuff that has accumulated since its initial release in 1992."
Yeah, OpenGL was driven by the needs of CAD software when programs were single-threaded and hardware was a fixed-function rendering pipeline. Modern software and hardware aren't really like that at all.

There's an interesting set of articles from one of the PowerVR people that describes how Vulkan does things differently to OpenGL.
Eike Jun 17, 2021
View PC info
  • Supporter Plus
Quoting: CatKillerYeah, OpenGL was driven by the needs of CAD software when programs were single-threaded and hardware was a fixed-function rendering pipeline. Modern software and hardware aren't really like that at all.

There's an interesting set of articles from one of the PowerVR people that describes how Vulkan does things differently to OpenGL.

I don't know if there's something like "historisch gewachsen" in English. "Historically developed" would be the literal translation, used in the meaning of it's old, many people had their hands on it, it served many purposes, maybe there's even people missing that understand it fully due to its complexity, ... Some day, such software has to be (slowly) replaced.
tuubi Jun 17, 2021
View PC info
  • Supporter
Quoting: Eike
Quoting: CatKillerYeah, OpenGL was driven by the needs of CAD software when programs were single-threaded and hardware was a fixed-function rendering pipeline. Modern software and hardware aren't really like that at all.

There's an interesting set of articles from one of the PowerVR people that describes how Vulkan does things differently to OpenGL.

I don't know if there's something like "historisch gewachsen" in English. "Historically developed" would be the literal translation, used in the meaning of it's old, many people had their hands on it, it served many purposes, maybe there's even people missing that understand it fully due to its complexity, ... Some day, such software has to be (slowly) replaced.

Legacy baggage and technical debt are related (and depressing) terms that spring to mind.
Eike Jun 17, 2021
View PC info
  • Supporter Plus
Quoting: tuubiLegacy baggage and technical debt are related (and depressing) terms that spring to mind.

I like "Legacy baggage"!
(I always take this with a bit of understanding/sympathy - it's not like I haven't produced similar baggages... ;) )
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.