Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3489517.3530408acmconferencesArticle/Chapter ViewAbstractPublication PagesdacConference Proceedingsconference-collections
research-article
Open access

High-level synthesis performance prediction using GNNs: benchmarking, modeling, and advancing

Published: 23 August 2022 Publication History

Abstract

Agile hardware development requires fast and accurate circuit quality evaluation from early design stages. Existing work of high-level synthesis (HLS) performance prediction usually requires extensive feature engineering after the synthesis process. To expedite circuit evaluation from as early design stage as possible, we propose rapid and accurate performance prediction methods, which exploit the representation power of graph neural networks (GNNs) by representing C/C++ programs as graphs. The contribution of this work is three-fold. (1) Benchmarking. We build a standard benchmark suite with 40k C programs, which includes synthetic programs and three sets of real-world HLS benchmarks. Each program is synthesized and implemented on FPGA to obtain post place-and-route performance metrics as the ground truth. (2) Modeling. We formally formulate the HLS performance prediction problem on graphs and propose multiple modeling strategies with GNNs that leverage different trade-offs between prediction timeliness (early/late prediction) and accuracy. (3) Advancing. We further propose a novel hierarchical GNN that does not sacrifice timeliness but largely improves prediction accuracy, significantly outperforming HLS tools. We apply extensive evaluations for both synthetic and unseen real-case programs; our proposed predictor largely outperforms HLS by up to 40X and excels existing predictors by 2X to 5X in terms of resource usage and timing prediction. The benchmark and explored GNN models are publicly available at https://github.com/lydiawunan/HLS-Perf-Prediction-with-GNNs.

References

[1]
Alfred V Aho et al. 2007. Compilers: Principles, Techniques and Tools. Addison wesley (2007).
[2]
Gergö Barany. 2017. Liveness-driven random program generation. In International Symposium on Logic-Based Program Synthesis and Transformation. Springer.
[3]
Filippo Maria Bianchi et al. 2021. Graph neural networks with convolutional arma filters. IEEE TPAMI (2021).
[4]
Marc Brockschmidt. 2020. Gnn-film: Graph neural networks with feature-wise linear modulation. In 2020 ICML.
[5]
Gabriele Corso et al. 2020. Principal neighbourhood aggregation for graph nets. 2020 NeurIPS (2020).
[6]
Matthias Fey and Jan Eric Lenssen. 2019. Fast graph representation learning with PyTorch Geometric. arXiv preprint arXiv:1903.02428 (2019).
[7]
Hongyang Gao and Shuiwang Ji. 2019. Graph u-nets. In 2019 ICML.
[8]
Justin Gilmer et al. 2017. Neural message passing for quantum chemistry. In International conference on machine learning.
[9]
Will Hamilton et al. 2017. Inductive representation learning on large graphs. 2017 NeurIPS (2017).
[10]
Yuko Hara et al. 2009. Proposal and quantitative analysis of the CHStone benchmark program suite for practical C-based high-level synthesis. JIP (2009).
[11]
John L Hennessy and David A Patterson. 2011. Computer architecture: a quantitative approach. Elsevier.
[12]
Thomas N Kipf and Max Welling. 2016. Semi-supervised classification with graph convolutional networks. arXiv preprint arXiv:1609.02907 (2016).
[13]
Florent Kirchner et al. 2015. Frama-C: A software analysis perspective. Formal Aspects of Computing 27, 3 (2015), 573--609.
[14]
Yujia Li et al. 2016. Gated Graph Sequence Neural Networks. In 2016 ICLR.
[15]
Zheng Ma et al. 2020. Path integral based convolution and pooling for graph neural networks. 2020 NeurIPS (2020).
[16]
Hosein Mohammadi Makrani et al. 2019. Pyramid: Machine learning framework to estimate the optimal timing and resource usage of a high-level synthesis design. In 2019 FPL. IEEE.
[17]
Hosein Mohammadi Makrani et al. 2019. XPPE: cross-platform performance estimation of hardware accelerators using machine learning. In 2019 ASP-DAC.
[18]
Haggai Maron et al. 2019. Provably powerful graph networks. 2019 NeurIPS (2019).
[19]
Kenneth O'Neal et al. 2018. Hlspredict: Cross platform performance prediction for fpga high-level synthesis. In 2018 ICCAD. IEEE.
[20]
André Bannwart Perina et al. 2019. Lina: Timing-constrained high-level synthesis performance estimator for fast DSE. In 2019 ICFPT. IEEE.
[21]
Louis-Noël Pouchet and Tomofumi Yuki. 2016. Polyhedral Benchmark suite. http://web.cs.ucla.edu/~pouchet/software/polybench/.
[22]
Brandon Reagen et al. 2014. Machsuite: Benchmarks for accelerator design and customized architectures. In 2014 IISWC.
[23]
Michael Schlichtkrull et al. 2018. Modeling relational data with graph convolutional networks. In 2018 ESWC. Springer.
[24]
Ecenur Ustun et al. 2020. Accurate operation delay prediction for FPGA HLS using graph neural networks. In 2020 ICCAD.
[25]
Petar Veličković et al. 2017. Graph attention networks. arXiv preprint arXiv:1710.10903 (2017).
[26]
Vitis. Accessed: 2022. Vitis High-Level Synthesis User Guide (UG1399). https://docs.xilinx.com/r/en-US/ug1399-vitis-hls.
[27]
Felix Wu et al. 2019. Simplifying graph convolutional networks. In 2019 ICML.
[28]
Nan Wu et al. 2021. Ironman: Gnn-assisted design space exploration in high-level synthesis via reinforcement learning. In 2021 GLSVLSI.
[29]
Nan Wu et al. 2021. Program-to-Circuit: Exploiting GNNs for Program Representation and Circuit Translation. arXiv preprint arXiv:2109.06265 (2021).
[30]
Nan Wu and Yuan Xie. 2022. A survey of machine learning for computer architecture and systems. ACM Computing Surveys (CSUR) 55, 3 (2022), 1--39.
[31]
Xilinx. Accessed: 2022. Xilinx Vivado. https://www.xilinx.com/products/design-tools/vivado.html.
[32]
Keyulu Xu et al. 2018. How Powerful are Graph Neural Networks?. In 2018 ICLR.
[33]
Jieru Zhao et al. 2017. COMBA: A comprehensive model-based analysis framework for high level synthesis of real applications. In 2017 ICCAD. IEEE.
[34]
Jieru Zhao et al. 2019. Performance modeling and directives optimization for high-level synthesis on FPGA. IEEE TCAD (2019).

Cited By

View all
  • (2025)Transferable Presynthesis PPA Estimation for RTL Designs With Data Augmentation TechniquesIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2024.342090444:1(200-213)Online publication date: Jan-2025
  • (2024)Hierarchical Source-to-Post-Route QoR Prediction in High-Level Synthesis with GNNs2024 Design, Automation & Test in Europe Conference & Exhibition (DATE)10.23919/DATE58400.2024.10546555(1-6)Online publication date: 25-Mar-2024
  • (2024)Cross-Modality Program Representation Learning for Electronic Design Automation with High-Level SynthesisProceedings of the 2024 ACM/IEEE International Symposium on Machine Learning for CAD10.1145/3670474.3685952(1-12)Online publication date: 9-Sep-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
DAC '22: Proceedings of the 59th ACM/IEEE Design Automation Conference
July 2022
1462 pages
ISBN:9781450391429
DOI:10.1145/3489517
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 August 2022

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Conference

DAC '22
Sponsor:
DAC '22: 59th ACM/IEEE Design Automation Conference
July 10 - 14, 2022
California, San Francisco

Acceptance Rates

Overall Acceptance Rate 1,770 of 5,499 submissions, 32%

Upcoming Conference

DAC '25
62nd ACM/IEEE Design Automation Conference
June 22 - 26, 2025
San Francisco , CA , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)693
  • Downloads (Last 6 weeks)58
Reflects downloads up to 31 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2025)Transferable Presynthesis PPA Estimation for RTL Designs With Data Augmentation TechniquesIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2024.342090444:1(200-213)Online publication date: Jan-2025
  • (2024)Hierarchical Source-to-Post-Route QoR Prediction in High-Level Synthesis with GNNs2024 Design, Automation & Test in Europe Conference & Exhibition (DATE)10.23919/DATE58400.2024.10546555(1-6)Online publication date: 25-Mar-2024
  • (2024)Cross-Modality Program Representation Learning for Electronic Design Automation with High-Level SynthesisProceedings of the 2024 ACM/IEEE International Symposium on Machine Learning for CAD10.1145/3670474.3685952(1-12)Online publication date: 9-Sep-2024
  • (2024)Learning to Compare Hardware Designs for High-Level SynthesisProceedings of the 2024 ACM/IEEE International Symposium on Machine Learning for CAD10.1145/3670474.3685940(1-7)Online publication date: 9-Sep-2024
  • (2024)FADO: Floorplan-Aware Directive Optimization Based on Synthesis and Analytical Models for High-Level Synthesis Designs on Multi-Die FPGAsACM Transactions on Reconfigurable Technology and Systems10.1145/365345817:3(1-33)Online publication date: 20-Mar-2024
  • (2024)A Unified CPU-GPU Protocol for GNN TrainingProceedings of the 21st ACM International Conference on Computing Frontiers10.1145/3649153.3649191(155-163)Online publication date: 7-May-2024
  • (2024)Harnessing GNNs for Robust Representation Learning in High-Level SynthesisIEEE Transactions on Circuits and Systems for Artificial Intelligence10.1109/TCASAI.2024.34855221:2(114-127)Online publication date: Dec-2024
  • (2024)Learning to Compare Hardware Designs for High-Level Synthesis2024 ACM/IEEE 6th Symposium on Machine Learning for CAD (MLCAD)10.1109/MLCAD62225.2024.10740257(1-7)Online publication date: 9-Sep-2024
  • (2024)VGV: Verilog Generation using Visual Capabilities of Multi-Modal Large Language Models2024 IEEE LLM Aided Design Workshop (LAD)10.1109/LAD62341.2024.10691753(1-5)Online publication date: 28-Jun-2024
  • (2024)FastPASE: An AI-Driven Fast PPA Speculation Engine for RTL Design Space Optimization2024 25th International Symposium on Quality Electronic Design (ISQED)10.1109/ISQED60706.2024.10528750(1-8)Online publication date: 3-Apr-2024
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media