Skip to content
  • Ian Romanick's avatar
    intel/compiler: Use partial redundancy elimination for compares · 7832fb78
    Ian Romanick authored
    
    
    Almost all of the hurt shaders are repeated instances of the same shader
    in synmark's compilation speed tests.
    
    shader-db results:
    
    All Gen6+ platforms had similar results. (Skylake shown)
    total instructions in shared programs: 15256840 -> 15256389 (<.01%)
    instructions in affected programs: 54137 -> 53686 (-0.83%)
    helped: 288
    HURT: 0
    helped stats (abs) min: 1 max: 15 x̄: 1.57 x̃: 1
    helped stats (rel) min: 0.06% max: 26.67% x̄: 1.99% x̃: 0.74%
    95% mean confidence interval for instructions value: -1.76 -1.38
    95% mean confidence interval for instructions %-change: -2.47% -1.50%
    Instructions are helped.
    
    total cycles in shared programs: 372286583 -> 372283851 (<.01%)
    cycles in affected programs: 833829 -> 831097 (-0.33%)
    helped: 265
    HURT: 16
    helped stats (abs) min: 2 max: 74 x̄: 11.81 x̃: 4
    helped stats (rel) min: 0.04% max: 9.07% x̄: 0.99% x̃: 0.35%
    HURT stats (abs)   min: 2 max: 130 x̄: 24.88 x̃: 8
    HURT stats (rel)   min: <.01% max: 12.31% x̄: 1.44% x̃: 0.27%
    95% mean confidence interval for cycles value: -12.30 -7.15
    95% mean confidence interval for cycles %-change: -1.06% -0.64%
    Cycles are helped.
    
    Iron Lake and GM45 had similar results. (GM45 shown)
    total instructions in shared programs: 5038653 -> 5038495 (<.01%)
    instructions in affected programs: 13939 -> 13781 (-1.13%)
    helped: 50
    HURT: 1
    helped stats (abs) min: 1 max: 15 x̄: 3.18 x̃: 4
    helped stats (rel) min: 0.33% max: 13.33% x̄: 2.24% x̃: 1.09%
    HURT stats (abs)   min: 1 max: 1 x̄: 1.00 x̃: 1
    HURT stats (rel)   min: 0.83% max: 0.83% x̄: 0.83% x̃: 0.83%
    95% mean confidence interval for instructions value: -3.73 -2.47
    95% mean confidence interval for instructions %-change: -3.16% -1.21%
    Instructions are helped.
    
    total cycles in shared programs: 128118922 -> 128118228 (<.01%)
    cycles in affected programs: 134906 -> 134212 (-0.51%)
    helped: 50
    HURT: 0
    helped stats (abs) min: 2 max: 60 x̄: 13.88 x̃: 18
    helped stats (rel) min: 0.06% max: 3.19% x̄: 0.74% x̃: 0.70%
    95% mean confidence interval for cycles value: -16.54 -11.22
    95% mean confidence interval for cycles %-change: -0.95% -0.53%
    Cycles are helped.
    
    Reviewed-by: default avatarKenneth Graunke <kenneth@whitecape.org>
    7832fb78