<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jul 19, 2017 at 2:28 PM, Nanley Chery <span dir="ltr"><<a href="mailto:nanleychery@gmail.com" target="_blank">nanleychery@gmail.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, Jul 19, 2017 at 02:21:52PM -0700, Nanley Chery wrote:<br>
> In this revision:<br>
> * review feedback is incorporated.<br>
> * a couple of bugs caught by a new dEQP version are fixed:<br>
>   - image data could be lost if CCS_D wasn't enabled in render passes<br>
>     before we started doing explicit layout transitions on images with<br>
>     that auxiliary buffer.<br>
>   - subpass resolves with multisampled images ignored CCS_D.<br>
> * the Haswell boxes in jenkins start to GPU hang, but the don't do so<br>
>   on my local machine.<br>
<br>
</span>To be more specific, hanging is observed sporadically but each run<br>
returns failures. I'm not sure if the failure list is the same every<br>
time. Here's the list of failures from my last run:<br>
<br>
dEQP-VK.api.copy_and_blit.<wbr>core.blit_image.all_formats.<wbr>color.a2b10g10r10_unorm_<wbr>pack32.r16_unorm.optimal_<wbr>optimal_nearest.hswm64<br>
dEQP-VK.api.copy_and_blit.<wbr>core.blit_image.all_formats.<wbr>color.r16_unorm.r8g8b8a8_<wbr>unorm.general_general_linear.<wbr>hswm64<br>
dEQP-VK.api.copy_and_blit.<wbr>core.blit_image.all_formats.<wbr>color.r16g16b16_snorm.<wbr>a2b10g10r10_unorm_pack32.<wbr>optimal_general_linear.hswm64<br>
dEQP-VK.api.copy_and_blit.<wbr>core.blit_image.all_formats.<wbr>color.r16g16b16a16_sfloat.<wbr>a2r10g10b10_unorm_pack32.<wbr>optimal_optimal_linear.hswm64<br>
dEQP-VK.api.copy_and_blit.<wbr>core.blit_image.all_formats.<wbr>color.r32g32_sfloat.r8_unorm.<wbr>general_general_linear.hswm64<br>
dEQP-VK.api.copy_and_blit.<wbr>core.blit_image.all_formats.<wbr>color.r8_snorm.b8g8r8a8_unorm.<wbr>optimal_general_linear.hswm64<br>
dEQP-VK.api.copy_and_blit.<wbr>core.blit_image.all_formats.<wbr>color.r8g8b8_unorm.r8g8b8a8_<wbr>snorm.general_general_linear.<wbr>hswm64<br>
dEQP-VK.api.copy_and_blit.<wbr>dedicated_allocation.image_to_<wbr>image.all_formats.color.<wbr>a8b8g8r8_srgb_pack32.r8g8b8a8_<wbr>unorm.optimal_general.hswm64<br>
dEQP-VK.api.image_clearing.<wbr>core.clear_color_image.2d_r32_<wbr>sint_multiple_layers.hswm64<br>
dEQP-VK.api.image_clearing.<wbr>core.clear_color_image.2d_<wbr>r32g32b32_uint_multiple_<wbr>layers.hswm64<br></blockquote><div><br></div><div>I pointed out one more issue with not subtracting base_layer.  Maybe this is related and we're accidentally trying to resolve non-existant layers on HSW?  I kind-of doubt it.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
dEQP-VK.api.image_clearing.<wbr>dedicated_allocation.clear_<wbr>color_image.2d_r32g32b32_uint_<wbr>multiple_layers.hswm64<br><div class="HOEnZb"><div class="h5"></div></div></blockquote><div><br></div><div>And you didn't see any hangs with Haswell before?  Ugh...  One guess would be to try implementing full end-of-pipe sync operations like we did in GL.  I have no idea if that will help but it seemed to help HSW on GL.<br><br></div><div>I left a couple of comments here and there but, other than those, The series is<br><br></div><div>Reviewed-by: Jason Ekstrand <<a href="mailto:jason@jlekstrand.net">jason@jlekstrand.net</a>><br><br></div><div>That said, I really don't want to torch haswell so I'd like to get that sorted out before we land anything.  I'd like this to make 17.2 but losing stability isn't worth it to gain a couple FPS.  If we can get the HSW issues resolved quickly enough, we may land and have Emil back-port it.<br></div><div><br></div><div>--Jason<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">
><br>
> Nanley Chery (18):<br>
>   anv: Transition MCS buffers from the undefined layout<br>
>   intel/isl: Add surface state clear value information<br>
>   anv/image: Disable CCS if the image doesn't support rendering<br>
>   anv/image: Append CCS/MCS with a fast-clear state buffer<br>
>   anv/cmd_buffer: Initialize the clear values buffer<br>
>   anv/cmd_buffer: Don't partially fast clear image layers<br>
>   anv/cmd_buffer: Restrict fast clears in the GENERAL layout<br>
>   anv/gpu_memcpy: Add a lighter-weight GPU memcpy function<br>
>   anv/cmd_buffer: Ensure fast-clear values are current<br>
>   anv/cmd_buffer: Disable CCS on gen7 color attachments upfront<br>
>   anv/cmd_buffer: Always enable CCS_D in render passes<br>
>   anv/cmd_buffer: Move aux_usage assignment up<br>
>   anv/cmd_buffer: Warn about not enabling CCS_E<br>
>   anv: Transition more color buffer layouts<br>
>   anv: Stop resolving CCS implicitly<br>
>   anv/cmd_buffer: Skip some input attachment transitions<br>
>   intel/blorp: Allow BLORP calls to be predicated<br>
>   anv: Predicate fast-clear resolves<br>
><br>
>  src/intel/blorp/blorp.h            |   3 +<br>
>  src/intel/blorp/blorp_genX_<wbr>exec.h  |   3 +<br>
>  src/intel/isl/isl.c                |   9 +<br>
>  src/intel/isl/isl.h                |   4 +<br>
>  src/intel/vulkan/anv_blorp.c       | 183 ++---------<br>
>  src/intel/vulkan/anv_genX.h        |   5 +<br>
>  src/intel/vulkan/anv_image.c       |  93 ++++++<br>
>  src/intel/vulkan/anv_pass.c        |  36 ++-<br>
>  src/intel/vulkan/anv_private.h     |  37 ++-<br>
>  src/intel/vulkan/genX_cmd_<wbr>buffer.c | 626 ++++++++++++++++++++++++++++++<wbr>++-----<br>
>  src/intel/vulkan/genX_gpu_<wbr>memcpy.c |  40 +++<br>
>  11 files changed, 783 insertions(+), 256 deletions(-)<br>
><br>
> --<br>
> 2.13.3<br>
><br>
</div></div></blockquote></div><br></div></div>