Title :
Compiler-directed design space exploration for caching and prefetching data in high-level synthesis
Author :
Baradaran, Nastaran ; Diniz, Pedro C.
Author_Institution :
Inf. Sci. Inst., Southern California Univ., Marina del Rey, CA, USA
Abstract :
Emerging computing architectures exhibit a rich variety of controllable storage resources. Allocation and management of these resources critically affect the performance of data intensive applications. In this paper we describe a synergistic collaboration between compiler data dependence analysis and execution modeling techniques to explore the application of data caching and software prefetching for hardware designs in high-level synthesis. We describe a design space exploration algorithm that selects between data caching and prefetching of array references along the critical paths of the computation with the objective of minimizing the overall execution time, while meeting the architecture´s storage and bandwidth constraints. We present preliminary results of the application of the algorithm for a set of image/signal processing kernels on a commercial FPGA. The high precision of our execution model (average 94%) results in the selection of the fastest design in every case.
Keywords :
cache storage; field programmable gate arrays; logic design; resource allocation; storage management; FPGA; compiler data dependence analysis; compiler-directed design space exploration; controllable storage resources; data caching; data prefetching; execution modeling techniques; high level synthesis; image processing kernel; signal processing kernel; Application software; Collaborative software; Computer architecture; Data analysis; Hardware; High level synthesis; Prefetching; Resource management; Signal processing algorithms; Space exploration;
Conference_Titel :
Field-Programmable Technology, 2005. Proceedings. 2005 IEEE International Conference on
Print_ISBN :
0-7803-9407-0
DOI :
10.1109/FPT.2005.1568552