[Mesa-dev] [PATCH] nir: bump loop unroll limit to 96.

Dave Airlie airlied at gmail.com
Tue Oct 10 23:50:46 UTC 2017


From: Dave Airlie <airlied at redhat.com>

With the ssao demo from Vulkan demos:
radv/rx480: 440->440fps
anv/haswell: 24->34 fps

The demo does a 0->32 loop across a ubo with 32 members.

Signed-off-by: Dave Airlie <airlied at redhat.com>
---
 src/compiler/nir/nir_opt_loop_unroll.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/compiler/nir/nir_opt_loop_unroll.c b/src/compiler/nir/nir_opt_loop_unroll.c
index 79d04f9..dae5bfc 100644
--- a/src/compiler/nir/nir_opt_loop_unroll.c
+++ b/src/compiler/nir/nir_opt_loop_unroll.c
@@ -33,8 +33,10 @@
  * to give about the same results. Around 5 instructions per node.  But some
  * loops that would unroll with GLSL IR fail to unroll if we set this to 25 so
  * we set it to 26.
+ * This was bumped to 96 because it unrolled more loops with a positive
+ * effect (vulkan ssao demo).
  */
-#define LOOP_UNROLL_LIMIT 26
+#define LOOP_UNROLL_LIMIT 96
 
 /* Prepare this loop for unrolling by first converting to lcssa and then
  * converting the phis from the loops first block and the block that follows
-- 
2.9.5



More information about the mesa-dev mailing list