Because we set the needs_data_cache bit from the NIR during compilation, any time a shader was pulled out of the pipeline cache, we wouldn't set the bit and the data cache was disabled. Fortunately, on Gen8+, this bit is ignored because we always use the ALL section in the L3$ config instead of separate DC and RO sections. On Gen7, however, this meant that we were basically never running with the data cache enabled and our compute performance was suffering massively because of it. This commit improves Geekbench 5 scores on my Haswell GT3 by roughly 330% (no, that's not a typo).
5dfd83d7a1c anv: Always enable the data cache
src/intel/vulkan/anv_pipeline.c | 7 +------
src/intel/vulkan/anv_private.h | 2 --
src/intel/vulkan/genX_pipeline.c | 2 --
3 files changed, 1 insertion(+), 10 deletions(-)