Polyhedral Bubble Insertion: A Method to Improve Nested Loop Pipelining for High-Level Synthesis - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Article Dans Une Revue IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems Année : 2013

Polyhedral Bubble Insertion: A Method to Improve Nested Loop Pipelining for High-Level Synthesis

Résumé

High-level synthesis (HLS) allows hardware to be directly produced from behavioral description in C/C++, thus accelerating the design process. Loop pipelining is a key transformation of HLS, as it improves the throughput of the design at the price of a small hardware overhead. However, for small loops, its use often results in a poor hardware utilization due to the pipeline latency overhead. Overlapping the iterations of the whole loop nest instead of only overlapping the innermost loop is a way to overcome this difficulty, but currently available techniques are restricted to perfectly nested loops with constant bounds, involving uniform dependences only. Using the polyhedral model, we extend the applicability of the nested loop pipelining transformation by proposing a new legality check and a new loop correction technique, called polyhedral bubble insertion. This method was implemented in a source-to-source compiler targeting HLS, and results on benchmark kernels show that polyhedral bubble insertion is effective in practice on a much larger class of loop nests.
Fichier non déposé

Dates et versions

hal-00921424 , version 1 (20-12-2013)

Identifiants

Citer

Antoine Morvan, Steven Derrien, Patrice Quinton. Polyhedral Bubble Insertion: A Method to Improve Nested Loop Pipelining for High-Level Synthesis. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 2013, 32 (3), pp.339-352. ⟨10.1109/TCAD.2012.2228270⟩. ⟨hal-00921424⟩
157 Consultations
0 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More