Tiling arbitrarily nested loops by means of the transitive
Autor: | Wlodzimierz Bielecki, Marek Palkowski |
---|---|
Rok vydání: | 2016 |
Předmět: |
Code (set theory)
Loop (graph theory) iteration space slicing 02 engineering and technology polyhedral model Combinatorics transitive closure source-to-source compiler QA1-939 0202 electrical engineering electronic engineering information engineering Computer Science (miscellaneous) Polytope model Engineering (miscellaneous) Mathematics Discrete mathematics 020203 distributed computing Transitive relation Applied Mathematics Transitive closure QA75.5-76.95 Electronic computers. Computer science tiling Graph (abstract data type) 020201 artificial intelligence & image processing Affine transformation Nested loop join |
Zdroj: | International Journal of Applied Mathematics and Computer Science, Vol 26, Iss 4, Pp 919-939 (2016) |
ISSN: | 2083-8492 |
DOI: | 10.1515/amcs-2016-0065 |
Popis: | A novel approach to generation of tiled code for arbitrarily nested loops is presented. It is derived via a combination of the polyhedral and iteration space slicing frameworks. Instead of program transformations represented by a set of affine functions, one for each statement, it uses the transitive closure of a loop nest dependence graph to carry out corrections of original rectangular tiles so that all dependences of the original loop nest are preserved under the lexicographic order of target tiles. Parallel tiled code can be generated on the basis of valid serial tiled code by means of applying affine transformations or transitive closure using on input an inter-tile dependence graph whose vertices are represented by target tiles while edges connect dependent target tiles. We demonstrate how a relation describing such a graph can be formed. The main merit of the presented approach in comparison with the well-known ones is that it does not require full permutability of loops to generate both serial and parallel tiled codes; this increases the scope of loop nests to be tiled. |
Databáze: | OpenAIRE |
Externí odkaz: |