[Mesa-dev] [PATCH 3/5] intel/compiler: Don't emit flrp for Gen4 or Gen5

Ian Romanick idr at freedesktop.org
Mon Aug 13 23:34:19 UTC 2018


From: Ian Romanick <ian.d.romanick at intel.com>

No changes on any Gen6+ platform.

The shaders with loops hurt are SIMD8 and SIMD16 shaders for a
text-identical fragment shader.  The loops are unrolled again in a later
patch that may or may not be included in the final series (nir: Lower
flrp differently when the alpha value is reused).

Iron Lake
total instructions in shared programs: 7777036 -> 7735975 (-0.53%)
instructions in affected programs: 4328363 -> 4287302 (-0.95%)
helped: 16404
HURT: 3099
helped stats (abs) min: 1 max: 155 x̄: 2.87 x̃: 2
helped stats (rel) min: 0.03% max: 35.48% x̄: 1.68% x̃: 1.25%
HURT stats (abs)   min: 1 max: 10 x̄: 1.96 x̃: 2
HURT stats (rel)   min: 0.16% max: 13.64% x̄: 1.63% x̃: 1.04%
95% mean confidence interval for instructions value: -2.16 -2.05
95% mean confidence interval for instructions %-change: -1.18% -1.12%
Instructions are helped.

total cycles in shared programs: 177812870 -> 177650934 (-0.09%)
cycles in affected programs: 99773058 -> 99611122 (-0.16%)
helped: 15939
HURT: 3997
helped stats (abs) min: 2 max: 930 x̄: 13.49 x̃: 6
helped stats (rel) min: <.01% max: 44.61% x̄: 0.70% x̃: 0.32%
HURT stats (abs)   min: 2 max: 148 x̄: 13.28 x̃: 8
HURT stats (rel)   min: <.01% max: 10.80% x̄: 0.58% x̃: 0.30%
95% mean confidence interval for cycles value: -8.48 -7.76
95% mean confidence interval for cycles %-change: -0.46% -0.43%
Cycles are helped.

total loops in shared programs: 850 -> 854 (0.47%)
loops in affected programs: 0 -> 4
helped: 0
HURT: 4
HURT stats (abs)   min: 1 max: 1 x̄: 1.00 x̃: 1
HURT stats (rel)   min: 0.00% max: 0.00% x̄: 0.00% x̃: 0.00%
95% mean confidence interval for loops value: 1.00 1.00
95% mean confidence interval for loops %-change: 0.00% 0.00%
Loops are HURT.

LOST:   0
GAINED: 17

GM45
total instructions in shared programs: 4790213 -> 4768928 (-0.44%)
instructions in affected programs: 2306120 -> 2284835 (-0.92%)
helped: 8348
HURT: 1569
helped stats (abs) min: 1 max: 155 x̄: 2.92 x̃: 2
helped stats (rel) min: 0.03% max: 34.38% x̄: 1.64% x̃: 1.21%
HURT stats (abs)   min: 1 max: 10 x̄: 1.96 x̃: 2
HURT stats (rel)   min: 0.15% max: 12.50% x̄: 1.58% x̃: 1.01%
95% mean confidence interval for instructions value: -2.22 -2.07
95% mean confidence interval for instructions %-change: -1.17% -1.09%
Instructions are helped.

total cycles in shared programs: 121844398 -> 121739752 (-0.09%)
cycles in affected programs: 61211048 -> 61106402 (-0.17%)
helped: 8198
HURT: 2017
helped stats (abs) min: 2 max: 930 x̄: 16.49 x̃: 10
helped stats (rel) min: <.01% max: 41.03% x̄: 0.75% x̃: 0.33%
HURT stats (abs)   min: 2 max: 148 x̄: 15.16 x̃: 12
HURT stats (rel)   min: <.01% max: 10.51% x̄: 0.62% x̃: 0.28%
95% mean confidence interval for cycles value: -10.84 -9.65
95% mean confidence interval for cycles %-change: -0.51% -0.46%
Cycles are helped.

total loops in shared programs: 629 -> 631 (0.32%)
loops in affected programs: 0 -> 2
helped: 0
HURT: 2

total fills in shared programs: 93 -> 94 (1.08%)
fills in affected programs: 81 -> 82 (1.23%)
helped: 0
HURT: 1

LOST:   17
GAINED: 17

Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
---
 src/intel/compiler/brw_compiler.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/intel/compiler/brw_compiler.c b/src/intel/compiler/brw_compiler.c
index 6df9621fe42..730819476e4 100644
--- a/src/intel/compiler/brw_compiler.c
+++ b/src/intel/compiler/brw_compiler.c
@@ -161,7 +161,7 @@ brw_compiler_create(void *mem_ctx, const struct gen_device_info *devinfo)
 
       if (is_scalar) {
          compiler->glsl_compiler_options[i].NirOptions =
-            devinfo->gen < 11 ? &scalar_nir_options : &scalar_nir_options_gen11;
+            devinfo->gen < 11 && devinfo->gen > 5 ? &scalar_nir_options : &scalar_nir_options_gen11;
       } else {
          compiler->glsl_compiler_options[i].NirOptions =
             devinfo->gen < 6 ? &vector_nir_options : &vector_nir_options_gen6;
-- 
2.14.4



More information about the mesa-dev mailing list