etnaviv: add disk cache

Graphics / Mesa 3D Graphics Library / Mesa - Christian Gmeiner [gmail.com] - 18 September 2020 07:45 UTC

Adds a shader disk-cache for shader variants. Note that builds with `-Dshader-cache=false` have no-op stubs with `disk_cache_create()` that returns NULL.

This shader disk-cache gets used when using NIR only. Helps to save about 1-2 minutes for a deqp run on gc2000.

77af1ca690f etnaviv: add disk cache
src/gallium/drivers/etnaviv/Makefile.sources | 2 +
src/gallium/drivers/etnaviv/etnaviv_compiler.c | 5 +-
src/gallium/drivers/etnaviv/etnaviv_compiler.h | 24 ++-
src/gallium/drivers/etnaviv/etnaviv_debug.h | 1 +
src/gallium/drivers/etnaviv/etnaviv_disk_cache.c | 186 +++++++++++++++++++++++
src/gallium/drivers/etnaviv/etnaviv_disk_cache.h | 45 ++++++
src/gallium/drivers/etnaviv/etnaviv_screen.c | 13 +-
src/gallium/drivers/etnaviv/etnaviv_shader.c | 9 +-
src/gallium/drivers/etnaviv/etnaviv_shader.h | 3 +
src/gallium/drivers/etnaviv/meson.build | 2 +
10 files changed, 282 insertions(+), 8 deletions(-)

Upstream: cgit.freedesktop.org


  • Share