Skip to content
  • Timothy Arceri's avatar
    anv/i965: Use GCM and GVN in the first run of nir_optimize · d053f2a1
    Timothy Arceri authored
    A large amount of the cycle hurt in shader-db appears to be due to
    calling discard earlier in fragment shaders.
    
    Shader-db results (SKL):
    
    total instructions in shared programs: 15422897 -> 15019882 (-2.61%)
    instructions in affected programs: 3008913 -> 2605898 (-13.39%)
    helped: 4405
    HURT: 2451
    
    total cycles in shared programs: 358349485 -> 243149152 (-32.15%)
    cycles in affected programs: 246549101 -> 131348768 (-46.73%)
    helped: 4248
    HURT: 3744
    
    total loops in shared programs: 4366 -> 4362 (-0.09%)
    loops in affected programs: 8 -> 4 (-50.00%)
    helped: 4
    HURT: 0
    
    total spills in shared programs: 23675 -> 16116 (-31.93%)
    spills in affected programs: 18895 -> 11336 (-40.01%)
    helped: 342
    HURT: 65
    
    total fills in shared programs: 32040 -> 29818 (-6.94%)
    fills in affected programs: 18358 -> 16136 (-12.10%)
    helped: 344
    HURT: 65
    
    LOST:   10
    GAINED: 6
    
    Shader-db results (SKL) - Dolphin Uber shader results removed:
    
    total instructions in shared programs: 15240414 -> 14815652 (-2.79%)
    instructions in affected programs: 2826430 -> 2401668 (-15.03%)
    helped: 4390
    HURT: 2411
    
    total cycles in shared programs: 291074170 -> 202645618 (-30.38%)
    cycles in affected programs: 179273786 -> 90845234 (-49.33%)
    helped: 4193
    HURT: 3744
    
    total loops in shared programs: 3666 -> 3662 (-0.11%)
    loops in affected programs: 8 -> 4 (-50.00%)
    helped: 4
    HURT: 0
    
    total spills in shared programs: 21101 -> 5728 (-72.85%)
    spills in affected programs: 16321 -> 948 (-94.19%)
    helped: 342
    HURT: 10
    
    total fills in shared programs: 28485 -> 15587 (-45.28%)
    fills in affected programs: 14803 -> 1905 (-87.13%)
    helped: 344
    HURT: 10
    
    LOST:   10
    GAINED: 6
    d053f2a1