DAPO: Design Structure-Aware Pass Ordering in High-Level Synthesis with Graph Contrastive and Reinforcement Learning

Jinming Ge, Linfeng Du, Likith Anaparty, Shangkun Li, Tingyuan Liang +6 more
12/12/2025
cs.LG

No confident code implementation found for this paper. 1 possible match can be shown below.

Abstract

High-Level Synthesis (HLS) tools are widely adopted in FPGA-based domain-specific accelerator design. However, existing tools rely on fixed optimization strategies inherited from software compilations, limiting their effectiveness. Tailoring optimization strategies to specific designs requires deep semantic understanding, accurate hardware metric estimation, and advanced search algorithms -- capabilities that current approaches lack. We propose DAPO, a design structure-aware pass ordering framework that extracts program semantics from control and data flow graphs, employs contrastive learning to generate rich embeddings, and leverages an analytical model for accurate hardware metric estimation. These components jointly guide a reinforcement learning agent to discover design-specific optimization strategies. Evaluations on classic HLS designs demonstrate that our end-to-end flow delivers a 2.36 speedup over Vitis HLS on average.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. 1 weaker match is hidden by default — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{ge2025dapo,
  title  = {DAPO: Design Structure-Aware Pass Ordering in High-Level Synthesis with Graph Contrastive and Reinforcement Learning},
  author = {Jinming Ge and Linfeng Du and Likith Anaparty and Shangkun Li and Tingyuan Liang and Afzal Ahmad and Vivek Chaturvedi and Sharad Sinha and Zhiyao Xie and Jiang Xu and Wei Zhang},
  year   = {2025},
  eprint = {2512.11342},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2512.11342v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2512.11342.svg)](https://codeofpaper.com/paper/2512.11342)

Discussion