The REPARA Project aims to deploy software kernels of a sequential application written in C++ in parallel heterogeneous platforms by using static or dynamic scheduling and mapping techniques in order to improve both the performance and the energy efficiency. The run-time system plays a crucial role for both performance and energy efficient execution of kernels. In the REPARA project the selected run-time is the FastFlow framework. An overall description of the FastFlow framework can be found in the REPARA deliverable D6.1 (Static runtimes for coordination in heterogeneous platforms).
In this document we rst describe how the FastFlow framework can be used for the dynamic selection of multiple targets devices, and how HW accelerators such as GPUs, FPGAs and DSPs can be used for ne grain parallel execution of REPARA kernels. Then, the initial integration of the FastFlow run-time with the Dynamic Partitioning Tool (WP3) is described. In particular we describe the API implementing the communication protocol
between the Dynamic Partitioning Engine and the FastFlow parallel patterns. The Partitioning Tools is in charge of providing mapping and scheduling directives to the low-level REPARA run-time in order to optimise both performance and energy consumption. The runtime should be able to support and implement such directives.
Latest software available at: FastFlow website