Mesa (master): i965: Disable channel expressions for scalar GS, TCS, TES.
Kenneth Graunke
kwg at kemper.freedesktop.org
Fri Apr 22 17:27:06 UTC 2016
Module: Mesa
Branch: master
Commit: 42dea145d9c83d1ad59dfb275072a4ed67233d1d
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=42dea145d9c83d1ad59dfb275072a4ed67233d1d
Author: Kenneth Graunke <kenneth at whitecape.org>
Date: Wed Apr 20 03:32:24 2016 -0700
i965: Disable channel expressions for scalar GS, TCS, TES.
On Broadwell, I get the following shader-db statistics:
Tessellation Control Shaders:
total instructions in shared programs: 57327 -> 57012 (-0.55%)
instructions in affected programs: 27334 -> 27019 (-1.15%)
helped: 45
HURT: 0
total cycles in shared programs: 265692 -> 255188 (-3.95%)
cycles in affected programs: 263122 -> 252618 (-3.99%)
helped: 184
HURT: 26
Tessellation Evaluation Shaders:
total instructions in shared programs: 23236 -> 23157 (-0.34%)
instructions in affected programs: 2791 -> 2712 (-2.83%)
helped: 27
HURT: 0
total cycles in shared programs: 151858 -> 149704 (-1.42%)
cycles in affected programs: 151858 -> 149704 (-1.42%)
helped: 101
HURT: 114
Geometry Shaders:
Orbital Explorer goes from 6442 -> 6356 instructions.
Two Shadow of Mordor shaders increase by a single instruction.
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Matt Turner <mattst88 at gmail.com>
---
src/mesa/drivers/dri/i965/brw_link.cpp | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/mesa/drivers/dri/i965/brw_link.cpp b/src/mesa/drivers/dri/i965/brw_link.cpp
index ee62ada..d4bbd8b 100644
--- a/src/mesa/drivers/dri/i965/brw_link.cpp
+++ b/src/mesa/drivers/dri/i965/brw_link.cpp
@@ -146,7 +146,9 @@ process_glsl_ir(gl_shader_stage stage,
progress = false;
if (compiler->scalar_stage[shader->Stage]) {
- brw_do_channel_expressions(shader->ir);
+ if (shader->Stage == MESA_SHADER_VERTEX ||
+ shader->Stage == MESA_SHADER_FRAGMENT)
+ brw_do_channel_expressions(shader->ir);
brw_do_vector_splitting(shader->ir);
}
More information about the mesa-commit
mailing list