Support us on Patreon to keep GamingOnLinux alive. This ensures all of our main content remains free for everyone. Just good, fresh content! Alternatively, you can donate through PayPal. You can also buy games using our partner links for GOG and Humble Store.
We do often include affiliate links to earn us some pennies. See more here.

The upcoming Mesa driver 23.1 release is sounding like it's going to be pretty great, with the Graphics Pipeline Library ("GPL") being enabled by default, plus we're looking at smaller shader cache sizes too.

We're still around a month away from the release of Mesa 23.1 but that doesn't stop me being excited by it. Going by the current roadmap, the estimated release date is May 3rd. When you will get the update will depend on the usual update times for whatever Linux distribution you're on, and for Steam Deck — likely for the next major upgrade.

Merged into the AMD RADV driver in Mesa a couple of days ago, was a change to enable GPL by default. What this should do, is much improve the stuttery situation that many games on Linux and Steam Deck face when they don't have a shader cache. You can read a whole lot more about how it works in the original announcement post from The Khronos Group who oversee the Vulkan API.

Another recent addition that was merged into Mesa only a day ago, "re-implements the RADV pipeline cache based on the common vk_pipeline_cache", and as a result the developer noted they saw a reduction in the cache file size by "~60%" for single-file disk-cache and "~2%" increase for multi-file disk-cache "due to the overhead from additional small files".

All this and more was summed up in my recent Steam Deck overview news video:

YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link
Article taken from GamingOnLinux.com.
27 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.
See more from me
The comments on this article are closed.
19 comments
Page: 1/2»
  Go to:

Purple Library Guy Apr 12, 2023
QuoteMerged into the AMD RADV driver in Mesa a couple of days ago, was a change to enable GPL by default.
A good day for software licensing!
Dribbleondo Apr 12, 2023
That video thumbnail reminds me of GMOD lets play videos.
Grogan Apr 12, 2023
Edit: It seems I have to take back a lot of what I said here. They must have gone on a blitz in the last week or so, as I have found that with tonight's Mesa build, I pretty much have no complaints.

The shader cache is working as expected now.

I don't have to disable gpl for any of the games I've tested (and Rage 2 runs correctly)

Of relevance: It can be disabled if necessary with

RADV_DEBUG=nogpl

---------------------------------------------------

I think that's wrong to enable the graphics pipeline library by default, at least at this time.

It harms Vulkan games (shader cache... see point below)

It harms DirectX 12 (vkd3d-proton), by disabling the on-disk shader caching completely (e.g. no mesa_shader_cache or mesa_shader_cache_sf if gpl). Vkd3d-proton has it's own mechanism, where it caches a primitive and links it in at pipeline time (much like the GPL with DXVK, only it needs to cache more than just its pipeline state)

At this time it's mostly only good for DXVK. (from what I hear, some native Linux Valve titles like DOTA 2, recently ported to Vulkan, also support this but not much else)

Just like mesa_glthread and adaptive sync (also presumptuous defaults). In EVERY case, mesa_glthread is detrimental to me, even in the "poster child" application where it's purported to improve: Bioshock Infinite (native). I patch those defaults in driinfo_radeonsi.h (I change them to false)

I've been using mesa-master (well, "main" now, for the politically correct) for months now so I get the latest commits related to this graphics pipeline library. and I can tell you this gpl is not ready to be enabled by default, or rather, other things won't like it.

As the majority of games I play are DirectX 11 and 9, I have been enabling it by default globally with a variable (RADV_PERFTEST=gpl in /etc/profile.d), and disable it on command line per invocation for games that don't like it. That's fine for me, but could cause problems for those unaware of the problems.

I haven't done a build in some days on gaming system (I don't have this change yet) but now that this is a default, it won't be RADV_PERFTEST="" anymore,

it will be RADV_DEBUG="nogpl" to disable it.

[strike]P.S. I actually have a game that won't launch with gpl, Rage 2. It's a Windows game, but it's Vulkan. It just sits there with the library entry showing "running" until I hit stop. It's waiting for something that isn't coming. That will be a good test tonight, I'll get rid of the variables and try the new mesa build's defaults.


... and Rage 2 launches just fine now (and works normally)


Last edited by Grogan on 13 April 2023 at 12:57 am UTC
drjoms Apr 12, 2023
Who uses RADV?
Isn't AMDGPU the most prevalent AMD driver on Linux?
I was under impression that RADV is half baked driver implementation from AMD directly?
Did something change in a while or?
strycore Apr 12, 2023
Quoting: drjomsWho uses RADV?
Isn't AMDGPU the most prevalent AMD driver on Linux?
I was under impression that RADV is half baked driver implementation from AMD directly?
Did something change in a while or?

Pretty much everyone with a Radeon uses RADV.
AMDGPU is the kernel driver for Radeon cards, RADV is the Vulkan implementation in Mesa for Radeon cards. They are two distinct things.
fenglengshun Apr 13, 2023
Nice. Though I hear that this doesn't affect DX12 games?
habernir Apr 13, 2023
i dont remember when was the last time that nvidia drivers brings performance improvement for linux .
its always fixes or support new linux technology but never performance improvement
kokoko3k Apr 13, 2023
From whai I've read, the GPL feature needs specific userspace support by the "game".
Is DXVK/VKD3D ready right now?
whizse Apr 13, 2023
View PC info
  • Supporter
Quoting: drjomsI was under impression that RADV is half baked driver implementation from AMD directly?
You're thinking of AMDVLK, the driver from AMD. It's not widely used but I'm not sure if half-baked is the correct description.
whizse Apr 13, 2023
View PC info
  • Supporter
Quoting: kokoko3kFrom whai I've read, the GPL feature needs specific userspace support by the "game".
Is DXVK/VKD3D ready right now?
In DXVK from 2.0 I think.
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.