Skip to content

crocus: Disable GLSL lower_const_arrays_to_uniforms.

Emma Anholt requested to merge anholt/mesa:crocus-constbuf into main

Note: this MR is only the last commit, the other commits are from !16390 (merged) and !16524 (merged) so I can CI this.

We want to use nir_opt_large_constants() instead (which is already
enabled), since that doesn't involve uploading the large immediate data
array again on each CB0 update (instead, the constant data is referenced
as just another UBO)

HSW shader-db results:

total instructions in shared programs: 8156582 -> 8159120 (0.03%)
instructions in affected programs: 22008 -> 24546 (11.53%)
total loops in shared programs: 2052 -> 2049 (-0.15%)
loops in affected programs: 3 -> 0
total cycles in shared programs: 285945444 -> 286005439 (0.02%)
cycles in affected programs: 682499 -> 742494 (8.79%)
total spills in shared programs: 2949 -> 3193 (8.27%)
spills in affected programs: 0 -> 244
total fills in shared programs: 1989 -> 2019 (1.51%)
fills in affected programs: 0 -> 30
total sends in shared programs: 461568 -> 461514 (-0.01%)
sends in affected programs: 640 -> 586 (-8.44%)
LOST:   0
GAINED: 14 (SIMD32 shaders for synmark amnesia, natural selection 2)

Merge request reports