This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [graphite] Loop tiling
- From: "Sebastian Pop" <sebpop at gmail dot com>
- To: "Tobias Grosser" <grosser at fim dot uni-passau dot de>
- Cc: "Cedric Bastoul" <cedric dot bastoul at inria dot fr>, "GCC Patches" <GCC at gcc dot gnu dot org>, "Albert Cohen" <Albert dot Cohen at inria dot fr>, "Konrad Trifunovic" <konrad dot trifunovic at gmail dot com>, louis-noel dot pouchet at inria dot fr, "Karthik A" <chill dot shanky at gmail dot com>, "Harle Christophe" <christophe dot harle at amd dot com>, "Adrien ELICHE" <aeliche at isty dot uvsq dot fr>
- Date: Mon, 9 Jun 2008 12:25:14 -0500
- Subject: Re: [graphite] Loop tiling
- References: <1213030724.1133.73.camel@tobilaptop>
Hi Tobi,
Thanks for working on this.
Solution 2 is the right one.
On Mon, Jun 9, 2008 at 11:58 AM, Tobias Grosser
<grosser@fim.uni-passau.de> wrote:
> 1. It is not very efficient. As we have many multiplications in the
> code.
> Will later gcc optimization passes convert these multiplications to
> additions?
>
Yes, you should not worry about scalar optimizations at all.
> 2. I could not find any documentation about scattering functions, that
> describe this way of using the scattering functions.
>
I think that the best place to look at this is:
page 4 of http://www.lri.fr/~girbal/publi/ics05_facilitating.ps
also have a look at the other reports from:
http://www.lri.fr/~girbal/site_wrapit/
Albert probably has some other pointers for reports that describe how
to do loop tiling.
> Another graphite specific problem is, how we connect the real loop
> variables to the cloog variables. Before loop tiling this was easy.
> Loops of the same depth in the cloog output correspond to the loops of
> the same depth in the original gimple loop nest. But know we have to add
> some data structure, that connects the gimple loops, with the cloog
> loops.
>
This was also the case before: we needed a map between the old
induction variable and the new ones.
Sebastian Pop
--
AMD - GNU Tools