[Mesa-dev] [PATCH 13/13] i965: disable loop unrolling in GLSL IR

Jason Ekstrand jason at jlekstrand.net
Thu Dec 22 20:07:06 UTC 2016


I have no real opinion on this patch.  Matt?  Ken?

On Wed, Dec 21, 2016 at 6:26 PM, Timothy Arceri <
timothy.arceri at collabora.com> wrote:

> There is a single regression in loop unrolling which is:
>
> loops HURT:   shaders/orbital_explorer.shader_test GS SIMD8:    0 -> 1
>
> However the loop is huge so it seems reasonable not to unroll it. It's
> surprising that GLSL IR does unroll it.
>
> shader-db results BDW:
>
> total instructions in shared programs: 13037455 -> 13036947 (-0.00%)
> instructions in affected programs: 17982 -> 17474 (-2.83%)
> helped: 63
> HURT: 25
>
> total cycles in shared programs: 262217870 -> 262227990 (0.00%)
> cycles in affected programs: 2287046 -> 2297166 (0.44%)
> helped: 969
> HURT: 844
>
> total loops in shared programs: 2951 -> 2952 (0.03%)
> loops in affected programs: 0 -> 1
> helped: 0
> HURT: 1
>
> LOST:   0
> GAINED: 1
> ---
>  src/mesa/drivers/dri/i965/brw_compiler.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_compiler.c
> b/src/mesa/drivers/dri/i965/brw_compiler.c
> index d7900a7..fa8a772 100644
> --- a/src/mesa/drivers/dri/i965/brw_compiler.c
> +++ b/src/mesa/drivers/dri/i965/brw_compiler.c
> @@ -122,7 +122,7 @@ brw_compiler_create(void *mem_ctx, const struct
> gen_device_info *devinfo)
>
>     /* We want the GLSL compiler to emit code that uses condition codes */
>     for (int i = 0; i < MESA_SHADER_STAGES; i++) {
> -      compiler->glsl_compiler_options[i].MaxUnrollIterations = 32;
> +      compiler->glsl_compiler_options[i].MaxUnrollIterations = 0;
>        compiler->glsl_compiler_options[i].MaxIfDepth =
>           devinfo->gen < 6 ? 16 : UINT_MAX;
>
> --
> 2.9.3
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20161222/14c40aae/attachment.html>


More information about the mesa-dev mailing list