On 03/16/2018 09:15 AM, Timothy Arceri wrote:
On 16/03/18 18:45, Samuel Pitoiset wrote:
shader stats?

I didn't bother posting them because they are misleading. There are a few instructions remove here and there but the main changes are due to loop unrolling.

Totals from affected shaders:
SGPRS: 640 -> 664 (3.75 %)
VGPRS: 352 -> 368 (4.55 %)
Spilled SGPRs: 6 -> 8 (33.33 %)
Spilled VGPRs: 0 -> 0 (0.00 %)
Private memory VGPRs: 0 -> 0 (0.00 %)
Scratch size: 0 -> 0 (0.00 %) dwords per thread
Code Size: 24200 -> 36216 (49.65 %) bytes
LDS: 0 -> 0 (0.00 %) blocks
Max Waves: 52 -> 51 (-1.92 %)
Wait states: 0 -> 0 (0.00 %)

Mmmh, the stats don't seem really good to me. Which games are affected by this change?

As you know, we shouldn't *always* trust shader stats. Though, it would quite appreciated to run some benchmarks in this situation.




On 03/16/2018 06:48 AM, Timothy Arceri wrote:
These can be found in the Tomb Raider shaders, eliminating them
helps unroll more loops.
---
  src/compiler/nir/nir_opt_algebraic.py | 1 +
  1 file changed, 1 insertion(+)

diff --git a/src/compiler/nir/nir_opt_algebraic.py b/src/compiler/nir/nir_opt_algebraic.py
index c9575e6be4..2148bc121b 100644
--- a/src/compiler/nir/nir_opt_algebraic.py
+++ b/src/compiler/nir/nir_opt_algebraic.py
@@ -152,6 +152,7 @@ optimizations = [
     (('inot', ('ige', a, b)), ('ilt', a, b)),
     (('inot', ('ieq', a, b)), ('ine', a, b)),
     (('inot', ('ine', a, b)), ('ieq', a, b)),
+   (('ine', ('b2i', 'a@bool'), 0), 'a'),
     # 0.0 >= b2f(a)
     # b2f(a) <= 0.0

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to