[Mesa-dev] [PATCH] Revert "nir: bump loop unroll limit to 96."
Timothy Arceri
tarceri at itsqueeze.com
Tue Mar 6 03:59:12 UTC 2018
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 <airlied at gmail.com>
> ---
> 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
>
More information about the mesa-dev
mailing list