Skip to content

intel/compiler: Drop nir_lower_to_source_mods()

Kenneth Graunke requested to merge kwg/mesa:nosrcmods-2 into master

+@mattst88 +@idr +@jekstrand

I think we're unanimous in wanting to drop nir_lower_to_source_mods. It's a bit of complexity to handle in the backend, but perhaps more importantly, would be even more complexity to handle in nir_search.

And, it turns out that they don't really buy us much. While this does regress code quality, 98% of shader-db remains unaffected and the affected programs are only hurt by 0.05% of instructions - which are dirt cheap ALU instructions, so this is unlikely to be measurable in terms of a performance impact.

shader-db results on Icelake:

   total instructions in shared programs: 17216248 -> 17216872 (<.01%)
   instructions in affected programs: 1207230 -> 1207854 (0.05%)
   helped: 411
   HURT: 831
   helped stats (abs) min: 1 max: 34 x̄: 1.97 x̃: 1
   helped stats (rel) min: 0.04% max: 4.27% x̄: 0.34% x̃: 0.05%
   HURT stats (abs)   min: 1 max: 48 x̄: 1.72 x̃: 1
   HURT stats (rel)   min: 0.03% max: 11.43% x̄: 0.77% x̃: 0.40%
   95% mean confidence interval for instructions value: 0.32 0.68
   95% mean confidence interval for instructions %-change: 0.34% 0.47%
   Instructions are HURT.

   total cycles in shared programs: 365675421 -> 365951419 (0.08%)
   cycles in affected programs: 139142153 -> 139418151 (0.20%)
   helped: 1046
   HURT: 1580
   helped stats (abs) min: 1 max: 4600 x̄: 93.99 x̃: 10
   helped stats (rel) min: <.01% max: 31.11% x̄: 0.91% x̃: 0.30%
   HURT stats (abs)   min: 1 max: 5151 x̄: 236.91 x̃: 16
   HURT stats (rel)   min: <.01% max: 42.79% x̄: 1.66% x̃: 0.55%
   95% mean confidence interval for cycles value: 85.50 124.70
   95% mean confidence interval for cycles %-change: 0.50% 0.77%
   Cycles are HURT.

   total spills in shared programs: 10918 -> 10916 (-0.02%)
   spills in affected programs: 113 -> 111 (-1.77%)
   helped: 1
   HURT: 0

   total fills in shared programs: 12622 -> 12616 (-0.05%)
   fills in affected programs: 341 -> 335 (-1.76%)
   helped: 1
   HURT: 0

   (no changes to other metrics)

Based on these results, let's just rip-off the band-aid and be done with source modifiers.

Edited by Kenneth Graunke

Merge request reports