Performance Estimation for the Exploration of CPU-Accelerator Architectures

In this paper we present an approach for studying the design space when interfacing reconfigurable accelerators with a CPU. For this purpose we introduce a framework based on the LLVM infrastructure that performs hardware/software partitioning with runtime estimation utilizing profiling information and code analysis. We apply it to reconfigurable accelerators that are controlled by a CPU via a direct low-latency interface but also have direct access to the memory hierarchy. Our results show that a shared L2 cache for CPU and accelerator seems to be the most promising design point for a range of applications.

[1]  Vikram S. Adve,et al.  LLVM: a compilation framework for lifelong program analysis & transformation , 2004, International Symposium on Code Generation and Optimization, 2004. CGO 2004..

[2]  Daniel Kuhn,et al.  Rapid Design Space visualisation through hardware/software partitioning , 2009, 2009 5th Southern Conference on Programmable Logic (SPL).

[3]  Katherine Compton,et al.  A Reconfigurable Hardware Interface for a Modern Computing System , 2007, 15th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM 2007).

[4]  Scott Hauck,et al.  Reconfigurable computing: a survey of systems and software , 2002, CSUR.

[5]  Alan D. George,et al.  RAT: RC Amenability Test for Rapid Performance Prediction , 2009, TRETS.