Jason Ekstrand <ja...@jlekstrand.net> writes: > On Tue, Aug 16, 2016 at 1:54 PM, Francisco Jerez <curroje...@riseup.net> > wrote: > >> This may have been the reason people ran into problems with >> non-uniform HALT instructions and ended up using the inefficient >> ANY16H/ANY8H predicates instead of ANY4H or NORMAL in order to prevent >> non-uniform discard. The HALT instruction is able to handle >> non-uniform execution masks just fine. >> > > Do you know why we were setting MASK_DISABLE? Perhaps we were getting the > exec size wrong before?
I have no idea, it seems to have been there since discard jumps were first implemented. If I had to make a wild guess I'd say that perhaps the HALT re-convergence sequence at the end of the program wasn't implemented properly or at all originally, which would normally lead to a EU hang, the BRW_MASK_DISABLE may have prevented divergence in the first place which would have prevented the hang causing people to think it was necessary. > In any case, if there's no piglig problems with patch 2, then I'll > believe it works. > > Reviewed-by: Jason Ekstrand <ja...@jlekstrand.net> > Thanks! > >> --- >> src/mesa/drivers/dri/i965/brw_fs_generator.cpp | 4 ---- >> 1 file changed, 4 deletions(-) >> >> diff --git a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp >> b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp >> index 647950f..22190f8 100644 >> --- a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp >> +++ b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp >> @@ -1053,11 +1053,7 @@ fs_generator::generate_discard_jump(fs_inst *inst) >> * current block (or the program). >> */ >> this->discard_halt_patches.push_tail(new(mem_ctx) >> ip_record(p->nr_insn)); >> - >> - brw_push_insn_state(p); >> - brw_set_default_mask_control(p, BRW_MASK_DISABLE); >> gen6_HALT(p); >> - brw_pop_insn_state(p); >> } >> >> void >> -- >> 2.9.0 >> >> _______________________________________________ >> mesa-dev mailing list >> mesa-dev@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/mesa-dev >>
signature.asc
Description: PGP signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev