[<< home] [Lecture 1] [Lecture 2] [Lecture 3] [Lecture 4] [Lecture 5] |

Download the slides here

Note: we will go back on Z-polyhedra next class, and talk about image of a polyhedron by an affine function. This is indeed required to compute the set of array cells accessed during a computation.

- PolyLib manual (read the "Theoretical background" sections)
- Cedric Bastoul's thesis (read Chapter 2)
- Ask me for more advanced papers, Loechner and Wilde's paper Parametrized Polyhedra and Enumerating their Vertices give a good set of useful definitions.

- Write the (most generalized) algorithm to normalize loops such that iteration domains are represented with polyhedra.
- Write an algorithm to compute the footprint of array A, for multiple affine references of A in the program.
- You can email me for other topics of interest

Download the slides here

The latest build of PoCC, the Polyhedral Compiler Collection, can be downloaded here.

To install PoCC:

$> tar xzf pocc-1.0-rc1-201021-full.tar.gz $> cd pocc-1.0-rc1-201021-full $> ./install.sh $> make check

To compute and display the dependence polyhedra for a
program `test.c`

(only the part delimited by ```
#pragma
scop
```

and `#pragma endscop`

will be analyzed):

$> analyzers/install-clan/bin/clan test.c | analyzers/install-candl/bin/candl -inscop -structure stdin

- Dataflow Analysis of Scalar Array References, Paul Feautrier, IJPP'91
- Cedric Bastoul's thesis (read Section 3.3)
- Ask me for more advanced papers, Meister's Projecting Periodic Polyhedra for Loop Nest Analysis paper gives an exact solution to computing the footprint, and Irigoin and Triolet Supernode Partitioning paper (POPL'88) can be read to prepare next week's class.

- Write the dependence polyhedra for the matrice-vector product example.
- You can email me for other topics of interest

Download the slides here

Note: we will go back on 1-d schedules next class, then move to the general case of multidimensional schedules

- Some efficient solutions to the affine scheduling problem. I. One-dimensional time, Paul Feautrier (IJPP'92)
- Cedric Bastoul's thesis (read Chapter 3)
- Ask me for more advanced papers.

**Do the exercise on slide 23**

Download the slides here

Note: For Monday, March 1st I'd like to have a student present one of the following papers (in of preference):

- Automatic Transformations for Communication-Minimized Parallelization and Locality Optimization in the Polyhedral Model, Uday Bondhugula et al. (CC'08)
- Code Generation in the Polyhedral Model Is Easier Than You Think, Cedric Bastoul (PACT'04)
- Polyhedral-Model Guided Loop-Nest Auto-Vectorization, Konrad Trifunovic et al. (PACT'09)
- Supernode Partitioning, Francois Irigoin and Remi Triolet (POPL'88)

- Some efficient solutions to the affine scheduling problem. I. One-dimensional time, Paul Feautrier (IJPP'92)
- Some efficient solutions to the affine scheduling problem. II. Multidimensional time, Paul Feautrier (IJPP'92)
- Ask me for more advanced papers.

- Start doing some bibliography effort, read some papers

Download the slides here

Note: For Monday, March 1st we have Sanket presenting *Supernode Partitioning*.

- Automatic Transformations for Communication-Minimized Parallelization and Locality Optimization in the Polyhedral Model, Uday Bondhugula et al. (CC'08)
**Ask me for more advanced papers**

- See some projects ideas at the end of the slides