PolyOpt/HLS: Polyhedral-Based Data Reuse Optimization for FPGA

Software description: 

PolyOpt/HLS is a polyhedral loop optimization framework dedicated to data reuse optimization for High-Level Synthesis, integrated in the ROSE compiler. The main features are:

  • Automatic extraction of regions that can be optimized in the polyhedral model
  • Full support of PoCC (the Polyhedral Compiler Collection) analysis and optimizations
    • Dependence analysis with Candl
    • Program transformations for tiling and parallelism with Pluto
    • Code generation with CLooG
    • Parametric tiling with PTile
    • Data reuse optmization with LMP
    • Numerous under-the-hood functionalities and optimizations

Note, only a subset of C/C++ is currently supported by PolyOpt/HLS.



PolyOpt/HLS is currently under active testing before its public release. In the meantime, we warmly welcome any request to obtain the source code. Please email Louis-Noel Pouchet