Optimizing Remote Accesses for Offloaded Kernels: Application to High-Level Synthesis for FPGA

Christophe Alias 1 Alain Darte 1 Alexandru Plesco 1
1 COMPSYS - Compilation and embedded computing systems
Inria Grenoble - Rhône-Alpes, LIP - Laboratoire de l'Informatique du Parallélisme
Abstract : Some data- and compute-intensive applications can be accelerated by o oading portions of codes to platforms such as GPGPUs or FPGAs. However, to get high performance for these kernels, it is mandatory to restructure the application, to generate adequate communication mechanisms for the transfer of remote data, and to make good usage of the memory bandwidth. In the context of the high-level synthesis (HLS), from a C program, of hardware accelerators on FPGA, we show how to automatically generate optimized remote accesses for an accelerator communicating to an exter- nal DDR memory. Loop tiling is used to enable block com- munications, suitable for DDR memories. Pipelined communication processes are generated to overlap communications and computations, thereby hiding some latencies, in a way similar to double bu ering. Finally, data reuse among tiles is exploited to avoid remote accesses when data are already available in the local memory. Our rst contribution is to show how to generate the sets of data to be read from (resp. written to) the external mem- ory just before (resp. after) each tile so as to reduce com- munications and reuse data as much as possible in the accelerator. The main di culty arises when some data may be (re)de ned in the accelerator. Our second contribution is an optimized code generation scheme, entirely at source-level, i.e., in C, that allows us to compile all the necessary glue (the communication processes) with the same HLS tool as for the computation kernel. Both contributions use advanced poly-hedral techniques for program analysis and transformation. Experiments with Altera HLS tools demonstrate how to use our techniques to e ciently map C kernels to FPGA.
Type de document :
Communication dans un congrès
2nd International Workshop on Polyhedral Compilation Techniques (IMPACT'12), held with HIPEAC'12, Jan 2012, Paris, France. 2012
Liste complète des métadonnées

https://hal.inria.fr/hal-00761477
Contributeur : Alain Darte <>
Soumis le : mercredi 5 décembre 2012 - 15:33:43
Dernière modification le : samedi 21 avril 2018 - 01:27:13

Identifiants

  • HAL Id : hal-00761477, version 1

Collections

Citation

Christophe Alias, Alain Darte, Alexandru Plesco. Optimizing Remote Accesses for Offloaded Kernels: Application to High-Level Synthesis for FPGA. 2nd International Workshop on Polyhedral Compilation Techniques (IMPACT'12), held with HIPEAC'12, Jan 2012, Paris, France. 2012. 〈hal-00761477〉

Partager

Métriques

Consultations de la notice

193