[Mesa-dev] [PATCH 00/27] i965 disk shader cache
Jordan Justen
jordan.l.justen at intel.com
Sat Aug 19 07:44:16 UTC 2017
git://people.freedesktop.org/~jljusten/mesa i965-shader-cache-v1
The series adds support for a disk shader cache for i965, but it does
not enable it by default. To enable the i965 shader cache you need to
set the environment variable INTEL_SHADER_CACHE=1.
I don't see any regressions on Skylake with piglit and the GL CTS.
Quite some time ago I did notice a regression with Deus Ex on SKL when
the shader cache is enabled. Unfortunately, I have not been able to
make progress on this issue. HSW does *not* have the same regression
with the shader cache on Deus Ex.
Carl Worth (1):
i965: add new field for storing program size
Jordan Justen (9):
i965: Don't rely on nir for uses_texture_gather on gen <= 7
i965: Add shader cache support for compute
main: Add _mesa_build_fallback_shader_program
i965: Don't link when the program was found in the disk cache
i965: Initialize sha1 hash of dri config options
glsl: Assign atomic counter resources on shader compile fall back path
glsl/shader_cache: Save fs (BlendSupport) metadata
i965: Initialize disk shader cache when INTEL_SHADER_CACHE env var is
set
i965/brw_disk_cache: Support INTEL_SHADER_CACHE_TIMESTAMP debug
override
Timothy Arceri (17):
glsl/mesa: make a copy of attribute bindings in case of cache fallback
glsl/mesa: make a copy of FragData bindings in case of cache fallback
glsl: make a copy of the shader source for use with cache fallback
i965: add initial implementation of on disk shader cache
i965: Add shader cache support for vertex and fragment stages
i965: add shader cache support for geometry shaders
i965: add shader cache support for tess stages
mesa/glsl: add api_enabled flag to gl_transform_feedback_info
i965: add support for cached shaders with xfb qualifiers
i965: add image param shader cache support
i965: add shader cache support for pull param pointers
i965: don't precompile or rebuild resource list on cache fallback
i965: don't rebuild param list after cache miss
i965: don't recreate program struct on cache fallback
i965: add cache fallback support
i965: add support for caching clip planes
i965: handle incompatiable binaries in shader-cache
src/compiler/glsl/link_varyings.cpp | 5 +-
src/compiler/glsl/linker.cpp | 15 +-
src/compiler/glsl/shader_cache.cpp | 52 ++
src/intel/compiler/brw_compiler.h | 2 +
src/mesa/drivers/dri/i965/Makefile.sources | 1 +
src/mesa/drivers/dri/i965/brw_context.c | 6 +
src/mesa/drivers/dri/i965/brw_context.h | 1 +
src/mesa/drivers/dri/i965/brw_cs.c | 27 +-
src/mesa/drivers/dri/i965/brw_cs.h | 3 +
src/mesa/drivers/dri/i965/brw_disk_cache.c | 707 +++++++++++++++++++++++
src/mesa/drivers/dri/i965/brw_gs.c | 25 +-
src/mesa/drivers/dri/i965/brw_link.cpp | 71 ++-
src/mesa/drivers/dri/i965/brw_state.h | 7 +
src/mesa/drivers/dri/i965/brw_state_upload.c | 3 +
src/mesa/drivers/dri/i965/brw_tcs.c | 26 +-
src/mesa/drivers/dri/i965/brw_tes.c | 25 +-
src/mesa/drivers/dri/i965/brw_vs.c | 24 +-
src/mesa/drivers/dri/i965/brw_wm.c | 30 +-
src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 12 +-
src/mesa/main/mtypes.h | 16 +
src/mesa/main/shaderobj.c | 113 +++-
src/mesa/main/shaderobj.h | 5 +
src/mesa/program/ir_to_mesa.cpp | 8 +-
src/mesa/program/program.c | 19 +-
24 files changed, 1105 insertions(+), 98 deletions(-)
create mode 100644 src/mesa/drivers/dri/i965/brw_disk_cache.c
--
2.14.0
More information about the mesa-dev
mailing list