PoCC - the Polyhedral Compiler Collection

PoCC, the Polyhedral Compiler Collection, is a flexible source-to-source platform to quickly prototype and develop loop nest optimizations in the polyhedral model. It features iterative and model-driven heuristics for parallelization and locality optimization, including an enhanced version of Pluto, the state-of-the-art automatic parallelization algorithm for static control loop nests. It handles a large subset of C and can generate parallelization and vectorization pragmas and builtins for the GCC and ICC backend compilers. Many state-of-the art techniques in polyhedral optimization are available and distributed over small, single-purpose tools. This design greatly eases research and development and smooths the learning curve for recent converts. Recent and ongoing developments include support for data-dependent control flow and integrated handling of vectorization constraints.

Find more about PoCC.