Validation of Performance Estimation, Channel Sizing and Automatic Loop Transformations of High Level Specifications for Polyhedral Process Network

More Info
expand_more

Abstract

In this thesis, we present Cprof+, an upgraded version of Cprof. Cprof+ is a lightweight profiling tool for Polyhedral Process Networks (PPN) that can estimate the performance of a C-program as a PPN implemented in hardware. Cprof+ improves the set of possible programs that can be successfully profiled, by increasing the performance estimation accuracy to within 94% of RTL simulations. Using the Compaan Compiler and the Xilinix Vivado RTL simulator, Cprof+ was verified against all 29 Polybench Suite benchmarks. The purpose of Cprof+ is to provide a lightweight and rapid performance estimation tool for PPN applications. The simulation run-time of Cprof+ shows on average an execution time of 121 seconds compared to 598 seconds with Vivado RTL simulations. Cprof+ can also estimate channel sizes of the PPN interconnect based on execution proles of the processes. The estimated channel sizes achieved on average a 77% reduction in communication memory when compared to Compaan. The Cprof+ profiler can also aid the designer of PPN applications by applying automated source-to-source transformations on C-programs to assist in the design space exploration. These transformations are applied using an optimization technique based on channel sizes of the network interconnect. This technique yields on average a 64% increase in performance of the network latency with a 6x factor increase in hardware resources required.