<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Oct 27, 2017 at 1:18 AM, Iago Toral <span dir="ltr"><<a href="mailto:itoral@igalia.com" target="_blank">itoral@igalia.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Wed, 2017-10-25 at 16:25 -0700, Jason Ekstrand wrote:<br>
> The only things that adjust fs_visitor::max_dispatch_width are render<br>
> target writes which don't happen in compute shaders so they're<br>
> pointless.<br>
> ---<br>
>  src/intel/compiler/brw_fs.cpp | 6 ++----<br>
>  1 file changed, 2 insertions(+), 4 deletions(-)<br>
><br>
> diff --git a/src/intel/compiler/brw_fs.<wbr>cpp<br>
> b/src/intel/compiler/brw_fs.<wbr>cpp<br>
> index a23366b..4c362ba 100644<br>
> --- a/src/intel/compiler/brw_fs.<wbr>cpp<br>
> +++ b/src/intel/compiler/brw_fs.<wbr>cpp<br>
<br>
</span>Maybe add an assert before this to check that max_dispatch_width is >=<br>
32 as expected here?<span class=""><br></span></blockquote><div><br></div><div>Done.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
> @@ -6818,8 +6818,7 @@ brw_compile_cs(const struct brw_compiler<br>
> *compiler, void *log_data,<br>
>                   NULL, /* Never used in core profile */<br>
>                   shader, 16, shader_time_index);<br>
>     if (likely(!(INTEL_DEBUG & DEBUG_NO16)) &&<br>
> -       !fail_msg && v8.max_dispatch_width >= 16 &&<br>
> -       min_dispatch_width <= 16) {<br>
> +       !fail_msg && min_dispatch_width <= 16) {<br>
>        /* Try a SIMD16 compile */<br>
>        if (min_dispatch_width <= 8)<br>
>           v16.import_uniforms(<wbr>&v8);<br>
> @@ -6843,8 +6842,7 @@ brw_compile_cs(const struct brw_compiler<br>
> *compiler, void *log_data,<br>
>     fs_visitor v32(compiler, log_data, mem_ctx, key, &prog_data-<br>
> >base,<br>
>                   NULL, /* Never used in core profile */<br>
>                   shader, 32, shader_time_index);<br>
> -   if (!fail_msg && v8.max_dispatch_width >= 32 &&<br>
> -       (min_dispatch_width > 16 || (INTEL_DEBUG & DEBUG_DO32))) {<br>
> +   if (!fail_msg && (min_dispatch_width > 16 || (<br>
<br>
</span>Maybe use unlikely() with (INTEL_DEBUG & DEBUG_DO32)?<br></blockquote><div><br></div><div>That doesn't really go along with this change.  I've been meaning to rework DO32 and I'm happy to fix it as part of that. <br></div></div></div></div>