Improving HLS Generated Accelerators Through Relaxed Memory Access Scheduling

Johanna Rohde, Karsten Muller, Christian Hochberger · 2020

High-Level-Synthesis can be used to generate hardware accelerators for compute intense software parts (so called kernels). For meaningful acceleration, such kernels should be able to autonomously access the memory. Unfortunately, such memory accesses can constitute dependences (e.g. writing an array before reading from it) leading to bottlenecks. The analysis of potential conflicts of memory accesses is often difficult and in many cases not even possible. In order to improve the scheduling of memory accesses, we propose a novel methodology to fully automatically place bypasses and squashes into the data flow graph that is used to generate the hardware accelerator. Evaluating our approach with the Powerstone benchmark suite, we can show that execution time is reduced on average by 6.5%.

Read the paper · More papers on PaperTik