Hi,

some short note on coupling loop tiling and gloog code generator.
I will need to extend mapping of old induction variables <-> new
induction variables. Until now I assume preserved one-to-one
relationship. But, this does not allow many of the loop
transformations (like loop inversion). I will implement an
mechanism to express old induction variable as the function (gimple
expression) of new induction variables. Ideally it should
handle functional relationship of any complexity.
I also think this is necessary to enable code generation for tiled loops.
Let me work on this ;)

regards,
Konrad


2008/6/11 Cédric Bastoul <[EMAIL PROTECTED]>:
> I started to write the following message two days ago but I wished to
> send a .cloog which is not easy since I changed my laptop just before
> the trip I'm still on ! I need to finish installing all the tools...
> Here is the message, just a follow-up of Albert's one.
>
> Ced.
>
> ---
> Hi Tobi,
> Sebastian gave you the right pointers, you should also have a look at
> examples in the CLooG test directory called tilingX.cloog. However to
> be honest I'm not fond of the second solution you suggested. The
> reason is the scattering is supposed to only drive the way the
> polyhedra are scanned. Adding new dimensions there is against this
> (well, I designed scattering this way -allowing inequalities- because
> I wished to do that, but I changed my mind and now I think it's
> dirty...). The right solution to me is acting both on the domain and
> in the scattering (in the end, something similar to your second
> solution).
>
> By the way we are incorporating directly inside CLooG the tiling
> scheme described there
> http://www.cs.colostate.edu/~ln/publications/pldi07.pdf (a student is
> working on this at this moment).
> ---
>
> On Mon, Jun 9, 2008 at 7:25 PM, Sebastian Pop <[EMAIL PROTECTED]> wrote:
>> Hi Tobi,
>>
>> Thanks for working on this.
>>
>> Solution 2 is the right one.
>>
>> On Mon, Jun 9, 2008 at 11:58 AM, Tobias Grosser
>> <[EMAIL PROTECTED]> 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
>>
>

Reply via email to