[Mesa-dev] GLSL IR & TGSI on-disk shader cache

Matt Turner mattst88 at gmail.com
Tue Feb 7 22:58:25 UTC 2017


On Tue, Feb 7, 2017 at 4:42 AM, Timothy Arceri <tarceri at itsqueeze.com> wrote:
> This series adds support for a GLSL IR level and TGSI (OpenGL/st)
> level caches.
>
> There are a few small bug fixes and a little bit of restructuring
> to the GLSL IR patches to make things work for Gallium drivers vs
> just i965 previously, but nothing too major.
>
> The biggest change is patch 35 which changes the mesa cache
> directory to be more structured allowing us to not fallback to
> recompiles at draw time if we realise a cache item was created
> with an old version of Mesa. Patch 36 also cleans up old cache
> files so we shouldn't get into a possition were we are constantly
> evicting cache items because its never cleaned out.
>
> Even with the new directory structure I've still left in the
> code that adds the Mesa version string to cache items because
> users can do things like override the OpenGL version which will
> change the output (in future we might want to just add this as
> part of the sha1 input).
>
> This series does not include the patch that adds cache support
> to the radeonsi backend, the main reason for this is that llvm
> currently doesn't allow the version to be queried at runtime
> (as far as I'm aware) although it seems like other are interested
> in this feature [1] so I will follow up on that.
>
> The reason we don't just use the build time like radv is that we
> will want something consistent accross distros to enable
> distribution of precompiled shaders.

I think I have a solution for this. I am traveling until next week,
but I will send it as soon as I can.


More information about the mesa-dev mailing list