HeteroGen: transpiling C to heterogeneous HLS code with automated test generation and program repair
Qian Zhang, Jiyuan Wang, Guoqing Harry Xu, Miryung Kim
Abstract
Despite the trend of incorporating heterogeneity and specialization in hardware, the development of heterogeneous applications is limited to a handful of engineers with deep hardware expertise. We propose HeteroGen that takes C/C++ code as input and automatically generates an HLS version with test behavior preservation and better performance. Key to the success of HeteroGen is adapting the idea of search-based program repair to the heterogeneous computing domain, while addressing two technical challenges. First, the turn-around time of HLS compilation and simulation is much longer than the usual C/C++ compilation and execution time; therefore, HeteroGen applies pattern-oriented program edits guided by common fix patterns and their dependences. Second, behavior and performance checking requires testing, but test cases are often unavailable. Thus, HeteroGen auto-generates test inputs suitable for checking C to HLS-C conversion errors, while providing high branch coverage for the original C code.
Ask about this paper
Ask your agent about it.
Lune has read the top-tier papers around this one, so every answer names the papers it rests on.
Your agent calls
Lunesearch_papers
Free to start. No credit card required.
Terminal
Install the CLIlune papers get b67acbe0-976b-4b95-957f-015010fad773Cited by top-tier papers4
- SEER: Super-Optimization Explorer for High-Level Synthesis using E-graph RewritingJianyi Cheng, Samuel Coward, Lorenzo Chelini, Rafael Barbalho et al.ASPLOS 2024 · 18 citations
- Rust-lancet: Automated Ownership-Rule-Violation Fixing with Behavior PreservationWenzhang Yang, Linhai Song, Yinxing XueICSE 2024 · 6 citations
- ChatHLS: Towards Systematic Design Automation and Optimization for High-Level SynthesisRunkai Li, Jia Xiong, Xiuyuan He, Jieru Zhao et al.ACL 2026 · 3 citations
- Serving Hybrid LLM Loads with SLO Guarantees Using CPU-GPU Attention PiggybackingZizhao Mo, Junlin Chen, Huanle Xu, ChengZhong XuSIGMOD 2026 · 1 citation
Related papers
- HeteroFuzz: fuzz testing to detect platform dependent divergence for heterogeneous applicationsQian Zhang, Jiyuan Wang, Miryung KimFSE 2021 · 16 citations
- Leveraging Hardware Probes and Optimizations for Accelerating Fuzz Testing of Heterogeneous ApplicationsJiyuan Wang, Qian Zhang, Hongbo Rong, Guoqing Harry Xu et al.FSE 2023 · 3 citations
- Finding Bugs in RTL Descriptions: High-Level Synthesis to the RescueBaharealsadat Parchamdar, Benjamin Carrión SchäferDAC 2024 · 3 citations
- HeteroRefactor: refactoring for heterogeneous computing with FPGAJason Lau, Aishwarya Sivaraman, Qian Zhang, Muhammad Ali Gulzar et al.ICSE 2020 · 12 citations
- HeteroGen: Automatic Synthesis of Heterogeneous Cache Coherence ProtocolsNicolai Oswald, Vijay Nagarajan, Daniel J. Sorin, Vasilis Gavrielatos et al.HPCA 2022 · 15 citations
