Jack Howarth <howa...@bromo.med.uc.edu> wrote on 03/08/2009 17:26:18:
> Ira and Dorit, > Is there any chance that PR33113 will be addressed for > gcc 4.5? If I recall correctly, it was one of the last > major issues with vectorization in gfortran that wasn't > addressed yet. Dorit made the following comment back in > Aug 2008... > Hi Jack, AFAIK this topic has not been addressed (closest thing is Richard Guenther's work on versioning unknown strides http://gcc.gnu.org/ml/gcc-patches/2009-01/msg01174.html) and I don't know about the prospects of this being done for gcc4.5 (I'd definitely lobby for it... do you know which of the polyhedron benchmarks have this issue, and/or which other benchmarks suffer from it?) Thanks for the reminder... dorit > >From: Dorit Nuzman <do...@il.ibm.com> > >Date: Tue, 12 Aug 2008 14:48:07 +0300 > >X-MIMETrack: Serialize by Router on D12MC102/12/M/IBM(Release 8.0. > 1|February 07, 2008) at > > 12/08/2008 14:43:23 > >MIME-Version: 1.0 > >Content-type: text/plain; charset=US-ASCII > >Status: RO > >X-Status: A > >Content-Length: 11751 > >Lines: 335 > > > >Jack Howarth <howa...@bromo.msbb.uc.edu> wrote on 10/08/2008 19:00:08: > > > >> Dorit, > >> I believe the attached email has the most detailed discussion of the > >> issue that I recall seeing. Perhaps Tobias can expand on these previous > >> conversations. > >> Jack > >> ps I was hoping that the graphite code generation would be enabled by > >>default > >> at -O3 in gcc 4.4 and that the vectorization code could be modified to > >utilize > >> its presence to do some optimizations on gfortran flat arrays which will > >now > >> have stride information via graphite. > > > >Hi Jack, > > > >There is currently no connection between the Graphite pass and any passes > >that follow it. We will be looking into how to incorporate vectorization > >with Graphite, but that will not happen during the 4.4 timeframe. However, > >I think that this is not a prerequisite for vectorizing flat arrays; AFAIU, > >Graphite itself is based on the scev analysis, so whichever stride > >information Graphite gets out of scev, the vectorizer can already get it > >too. Following our discussion below I had opened PR33113, where it turned > >out that scev can easily be made to return symbolic stride information > >instead of failing, and the problem is only inside the vectorizer which > >needs to be enhanced to handle symbolic strides. I would actually be > >interested in enabling that - I will try to look into it in the coming > >weeks. > > > >dorit > > I ask because we seem to only get marginal improvements in the Polyhedron > 2005 benchmarks between recent releases and these missed vectorization > opportunities might provide a significant performance increase for those > benchmarks. Thanks in advance for any clarifications. > Jack