# Publications

## Publications about polyhedral compilation

polyhedral.info has a large list of publications related to polyhedral compilation. They are very useful to get an idea of the latest developments in this area of compilation as well as to understand what kind of optimizations can be built on top of Polly.

## Citing Polly

The canonical publication to cite Polly is:

Polly - Performing polyhedral optimizations on a low-level intermediate representation
Tobias Grosser, Armin Groesslinger, Christian Lengauer
Parallel Processing Letters 2012 22:04
Paper

## Publications involving Polly

### 2016

- Loopy: Programmable and Formally Verified Loop Transformations
  Kedar Namjoshi and Nimit Singhania
  23rd Static Analysis Symposium (SAS 2016)
  Paper
- Input Space Splitting for OpenCL
  Simon Moll, Johannes Doerfert and Sebastian Hack
  25th International Conference on Compiler Construction (CC 2016)
- Parallelisation automatique de programmes scientifiques pour systems distribues
  Felix-Antoine Quellet
  Master Thesis, Universite de Sherbrooke
  Thesis

### 2015

- Polyhedral AST generation is more than scanning polyhedra
  Tobias Grosser, Sven Verdoolaege, Albert Cohen
  ACM Transations on Programming Languages and Systems (TOPLAS), 37(4), July 2015
  Paper
- On recovering multi-dimensional arrays in Polly
  Tobias Grosser, Sebastian Pop, J. Ramanujam, P. Sadayappan
  Impact2015 at HiPEAC, Amsterdam, The Netherlands
  Slides & Paper: Impact 2015
- Polly's polyhedral scheduling in the presence of reductions
  Johannes Doerfert, Kevin Streit, Sebastian Hack, Zino Benaissa
  Impact2015 at HiPEAC, Amsterdam, The Netherlands
  Slides & Paper: Impact 2015

### 2014

- Lattice QCD Optimization and Polytopic Representations of Distributed Memory
  Michael Kruse
  Doctoral Thesis, Ecole doctorale Informatique de Paris-Sud
  Thesis

### 2012

- KernelGen - a prototype of auto-parallelizing Fortran/C compiler for NVIDIA GPUs
  Dmitry Mikushin, Nikolay Likhogrud, Hou Yunqing, Sergey Kovylov
  Multi-core Workshop 2012, NCAR, Boulder, CO
  Slides
- KernelGen - a toolchain for automatic GPU-centric applications porting
  Nikolay Likhogrud, Dmitry Mikushin, Andrew Adinets
  Parallel Computational Technologies (PCT) 2012, Novosibirsk
  Slides

### 2011

- Polly - First Successful Optimizations - How to proceed?
  Tobias Grosser, Ragesh A
  LLVM Developer Meeting 2011
  Slides, Video (Computer), Video (Mobile)
- A Framework for Automatic OpenMP Code Generation
  Raghesh A
  Masters Thesis (May 2011)
  Thesis
- Enabling Polyhedral Optimizations in LLVM
  Tobias Grosser
  Diploma Thesis (April 2011)
  Thesis
- Polly - Polyhedral Optimization in LLVM
  Tobias Grosser, Hongbin Zheng, Ragesh Aloor, Andreas Simbürger, Armin Größlinger, Louis-Noël Pouchet
  IMPACT at CGO 2011
  Paper, Slides

### 2010

- Polly - Polyhedral Transformations for LLVM
  Tobias Grosser, Hongbin Zheng
  LLVM Developer Meeting 2010
  Slides, Video (Computer), Video (Mobile)

## Publications used within Polly

### Polyhedral library

- isl: An Integer Set Library for the Polyhedral Model
  Sven Verdoolaege
  ICMS 2010

### Optimization

- A Practical Automatic Polyhedral Parallelizer and Locality Optimizer
  Uday Bondhugula, Alberto Hartono, J. Ramanujam, P. Sadayappan
  PLDI 2008
- Effective Automatic Parallelization and Locality Optimization using the Polyhedral Model
  Uday Bondhugula
  PhD thesis 2008

### Code Generation

- Code Generation in the Polyhedral Model Is Easier Than You Think
  Cédric Bastoul
  PACT 2004

## Interesting Publications

Publications that are not yet used or implemented in Polly, but that are interesting to look at either to understand general concepts or to implement the corresponding ideas. This list is incomplete and papers are added as we hear about them.

### GPGPU

- Automatic C-to-CUDA Code Generation for Affine Programs
  Muthu Manikandan Baskaran, J. Ramanujam and P. Sadayappan
  CC 2010
- Putting Automatic Polyhedral Compilation for GPGPU to Work Soufiane Baghdadi, Armin Größlinger, and Albert Cohen.
  In Proc. of Compilers for Parallel Computers (CPC), 2010.

### Vectorization

- Joint Scheduling and Layout Optimization to Enable Multi-Level Vectorization
  Nicolas Vasilache, Benoit Meister, Muthu Baskaran, Richard Lethin
  IMPACT 2012 (upcoming)

### Iterative Compilation

- Iterative optimization in the polyhedral model: Part I, one-dimensional time.
  Louis-Noël Pouchet, Cédric Bastoul, Albert Cohen and Nicolas Vasilache
  CGO 2007
- Iterative optimization in the polyhedral model: Part II, multidimensional time.
  Louis-Noël Pouchet, Cédric Bastoul, Albert Cohen and John Cavazos
  PLDI 2008

### Non-static Control

- The Polyhedral Model Is More Widely Applicable Than You Think
  Mohamed-Walid Benabderrahmane, Louis-Noël Pouchet, Albert Cohen, Cédric Bastoul.
  CC 2010

### Source to Source Tools

- Polyhedral Extraction Tool
  Sven Verdoolaege, Tobias Grosser
  IMPACT 2012