Following on from the OpenGL shader cache, RADV the open source Vulkan driver for AMD cards can also now make use of a shader cache.
Entering into the public Mesa-git mailing list last night were these two commits.
In the initial commit, the developer said:
This is the drivers on-disk cache intended to be used as a fallback as opposed to the pipeline cache provided by apps.
Then, in another commit this feature was turned on:
If the app provided in-memory pipeline cache doesn't yet contain what we are looking for, or it doesn't provide one at all then we fallback to the on-disk cache.
This feature should be available in the upcoming Mesa 17.3 release. Right now I'm unsure when it release, it's looking like possibly in November going by their release schedule.
What is a shader cache?
In simple terms, it stores compiled shaders that games require to speed up things like loading times. Otherwise, each time you load a game it would need to do it again resulting in more waiting around.
Misc Mesa news
In other Mesa news, it seems Feral Interactive sent in another patch which got accepted into Mesa-git recently for RADV. Interesting to see another Vulkan-related commit from them.
On top of that, it seems another patch landed recently into Mesa-git to improve Vulkan performance in Feral Interactive's Linux games.
There's also a new patch in the Mesa-dev list adding a new drirc workaround which should fix an issue with ARK: Survival Evolved. This has not yet made it into Mesa-git, it seems it might not be finished just yet.
S3TC (S3 Texture Compression) support is now baked into Mesa, since the patent has expired. The initial patch-set was sent the the Mesa-dev mailing list and a day later a bunch of it landed in Mesa-git.
Finally, there's also another patch in the Mesa-dev mailing list, which can improve "Vulkan demos" performance by "+1% to +3%". Small, but multiple smaller patches in the end do add up to something rather nice.
Looks like Mesa 17.3 is going to be a fun release, for those of you who've updated to Mesa 17.2, how's it going?