Publications by Author: Garibotti, Rafael

2018
Rafael Garibotti, Brandon Reagen, Yakun Shao, Gu Wei, and David Brooks. 10/2018. “Assisting high-level synthesis improve spmv benchmark through dynamic dependence analysis.” IEEE Transactions on Circuits and Systems II: Express Briefs, 65, 10, Pp. 1440–1444. Publisher's VersionAbstract
Recent advances in high-level synthesis (HLS) have enabled an automatic means of generating register-transfer level from high-level specifications without compromising performance. HLS provides substantial improvements to productivity and is a promising solution to designing future heterogeneous chips consisting of dozens of unique IP blocks (i.e., hardware accelerators). Despite their impressive capabilities, HLS tools today are commonly used to target a small subset of workloads, i.e., ones with inordinately regular control flow and memory access patterns. The challenges of achieving high-quality hardware for irregular workloads stems from HLS relying on static analysis. Static analysis is overly conservative when dealing with non-uniform memory access and imbalanced workloads, and identifying the most appropriate parallelizing strategy. In this brief, we propose the use of dynamic analysis to generate higher quality designs using commercial HLS tools. Our evaluations show that with dynamic dependence analysis, HLS designs achieve 3.3× performance improvement for the sparse matrix-vector multiply benchmark.
Assisting High-Level Synthesis Improve SpMV Benchmark Through Dynamic Dependence Analysis
2017
Rafael Garibotti, Brandon Reagen, Yakun Shao, Gu Wei, and David Brooks. 5/28/2017. “Using dynamic dependence analysis to improve the quality of high-level synthesis designs.” In 2017 IEEE International Symposium on Circuits and Systems (ISCAS), Pp. 1–4. Baltimore, MD, USA: IEEE. Publisher's VersionAbstract
High-Level Synthesis (HLS) tools that compile algorithms written in high-level languages into register-transfer level implementations can significantly improve design productivity and lower engineering cost. However, HLS-generated designs still lag handwritten implementations in a number of areas, particularly in the efficient allocation of hardware resources. In this work, we propose the use of dynamic dependence analysis to generate higher quality designs using existing HLS tools. We focus on resource sharing for compute-intensive workloads, a major limitation of relying only on static analysis. We demonstrate that with dynamic dependence analysis, the synthesized designs can achieve an order of magnitude resource reduction without performance loss over the state-of-the-art HLS solutions.
Using dynamic dependence analysis to improve the quality of high-level synthesis designs