Re: [Mesa-dev] [PATCH] Revert "nir: bump loop unroll limit to 96."
https://hastebin.com/cogobatire.cs WF2 doesn't seem to like this, but it's good overall, so the patch is: Reviewed-by: Samuel PitoisetOn 03/06/2018 04:48 AM, Timothy Arceri wrote: This reverts commit 2d36efdb7f18f061c519dbb93f6058bf161aad33. This raised limit turns out to harmful for more complex shaders, it causes excessive spilling in some Bioshock Infinite shaders. The fps for the ssao demo on radv remains unchanged when reverting this. Cc: Dave Airlie --- src/compiler/nir/nir_opt_loop_unroll.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/compiler/nir/nir_opt_loop_unroll.c b/src/compiler/nir/nir_opt_loop_unroll.c index dae5bfc902..79d04f978b 100644 --- a/src/compiler/nir/nir_opt_loop_unroll.c +++ b/src/compiler/nir/nir_opt_loop_unroll.c @@ -33,10 +33,8 @@ * 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 96 +#define LOOP_UNROLL_LIMIT 26 /* 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 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH] Revert "nir: bump loop unroll limit to 96."
On 6 March 2018 at 13:59, Timothy Arceriwrote: > On 06/03/18 14:48, Timothy Arceri wrote: >> >> This reverts commit 2d36efdb7f18f061c519dbb93f6058bf161aad33. >> >> This raised limit turns out to harmful for more complex shaders, >> it causes excessive spilling in some Bioshock Infinite shaders. > > > While not as bad as Bioshock (which went from 0 -> 268 in three shaders) > Dirt Showdown VGPR spilling went from 40 -> 67 and 0 -> 17 in a couple of > shaders also as a result of loop unrolling. Okay! Reviewed-by: Dave Airlie Dave. ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH] Revert "nir: bump loop unroll limit to 96."
On 06/03/18 14:48, Timothy Arceri wrote: This reverts commit 2d36efdb7f18f061c519dbb93f6058bf161aad33. This raised limit turns out to harmful for more complex shaders, it causes excessive spilling in some Bioshock Infinite shaders. While not as bad as Bioshock (which went from 0 -> 268 in three shaders) Dirt Showdown VGPR spilling went from 40 -> 67 and 0 -> 17 in a couple of shaders also as a result of loop unrolling. The fps for the ssao demo on radv remains unchanged when reverting this. Cc: Dave Airlie--- src/compiler/nir/nir_opt_loop_unroll.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/compiler/nir/nir_opt_loop_unroll.c b/src/compiler/nir/nir_opt_loop_unroll.c index dae5bfc902..79d04f978b 100644 --- a/src/compiler/nir/nir_opt_loop_unroll.c +++ b/src/compiler/nir/nir_opt_loop_unroll.c @@ -33,10 +33,8 @@ * 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 96 +#define LOOP_UNROLL_LIMIT 26 /* 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 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
[Mesa-dev] [PATCH] Revert "nir: bump loop unroll limit to 96."
This reverts commit 2d36efdb7f18f061c519dbb93f6058bf161aad33. This raised limit turns out to harmful for more complex shaders, it causes excessive spilling in some Bioshock Infinite shaders. The fps for the ssao demo on radv remains unchanged when reverting this. Cc: Dave Airlie--- src/compiler/nir/nir_opt_loop_unroll.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/compiler/nir/nir_opt_loop_unroll.c b/src/compiler/nir/nir_opt_loop_unroll.c index dae5bfc902..79d04f978b 100644 --- a/src/compiler/nir/nir_opt_loop_unroll.c +++ b/src/compiler/nir/nir_opt_loop_unroll.c @@ -33,10 +33,8 @@ * 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 96 +#define LOOP_UNROLL_LIMIT 26 /* 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.14.3 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev