[Beignet] [patch v2] don't merge serial blocks with barrier.

Yang, Rong R rong.r.yang at intel.com
Mon Jun 29 23:08:28 PDT 2015


Pushed.

> -----Original Message-----
> From: Beignet [mailto:beignet-bounces at lists.freedesktop.org] On Behalf Of
> Song, Ruiling
> Sent: Tuesday, June 30, 2015 13:39
> To: Luo, Xionghu; beignet at lists.freedesktop.org
> Cc: Luo, Xionghu
> Subject: Re: [Beignet] [patch v2] don't merge serial blocks with barrier.
> 
> LGTM
> We need to remove the limitation that barrier block could not be enclosed in
> structured block.
> 
> > -----Original Message-----
> > From: Beignet [mailto:beignet-bounces at lists.freedesktop.org] On Behalf
> > Of xionghu.luo at intel.com
> > Sent: Tuesday, June 30, 2015 10:37 AM
> > To: beignet at lists.freedesktop.org
> > Cc: Luo, Xionghu
> > Subject: [Beignet] [patch v2] don't merge serial blocks with barrier.
> >
> > From: Luo Xionghu <xionghu.luo at intel.com>
> >
> > this could fix the piglit and opencv fail on IVB_x86 platform.
> > 1) opencv_test_core/OCL_Arithm/CountNonZero
> > 2) opencv_test_core/OCL_Arithm/MeanStdDev
> > 3) piglit case program/execute/atomic_cmpxchg-local.
> > v2: update comments: As our barrier implementation doen't support
> > structured barrier operation, exclude all the barrier blocks from
> > serialPatternMatch.
> >
> > Signed-off-by: Luo Xionghu <xionghu.luo at intel.com>
> > ---
> >  backend/src/ir/structurizer.cpp | 4 +++-
> >  1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/backend/src/ir/structurizer.cpp
> > b/backend/src/ir/structurizer.cpp index cb8e11b..82bb56b 100644
> > --- a/backend/src/ir/structurizer.cpp
> > +++ b/backend/src/ir/structurizer.cpp
> > @@ -738,7 +738,9 @@ namespace ir {
> >        return 0;
> >
> >      Block *childBlk = *block->succ_begin();
> > -    if (childBlk->pred_size() != 1 )
> > +    //FIXME, As our barrier implementation doen't support structured
> > barrier
> > +    //operation, exclude all the barrier blocks from serialPatternMatch.
> > +    if (childBlk->pred_size() != 1 || childBlk->hasBarrier() )
> >        return 0;
> >
> >      BlockList serialBBs;//childBBs
> > --
> > 1.9.1
> >
> > _______________________________________________
> > Beignet mailing list
> > Beignet at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/beignet
> _______________________________________________
> Beignet mailing list
> Beignet at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/beignet


More information about the Beignet mailing list