The increasing demand for computing power in fields such as biology, finance, machine learning is pushing the adoption of reconfigurable hardware in order to keep up with the required performance level at a sustainable power consumption. Within this context, FPGA devices represent an interesting solution as they combine the benefits of power efficiency, performance and flexibility. Nevertheless, the steep learning curve and experience needed to develop efficient FPGA-based systems represents one of the main limiting factor for a broad utilization of such devices.

CAOS (CAD as an Adaptive OpenPlatform Service), is a framework which helps the application designer in identifying acceleration opportunities and guides through the implementation of the final FPGA-based system. The CAOS platform targets the full stack of the application optimization process, starting from the identification of the kernel functions to accelerate, to the optimization of such kernels and to the generation of the runtime management and the configuration files needed to program the FPGA.

CAOS is available at:


FPL 2018 workshop: The EXTRA Platform for the Design of HPC Reconfigurable Accelerators

> CAOS example applications and modules
> CAOS tutorial slides

ICCD 2017 tutorial: Cloud-FPGA Programming with AWS F1, SDAccel and the CAOS Framework

> CAOS demo applications repository
> CAOS tutorial slides

Additional video tutorial available here.