ABSTRACT
Synthesis and place & route tools are highly leveraged for modern digital design. But, despite continuous improvement in CAD tool performance, products in competitive markets often set PPA (performance, power, area) targets beyond what the tools can natively deliver. These aggressive targets lead to circuit designers attempting to tune a vast number of design flow parameters in search of near-optimal design specific flow recipes. Compounding the complex design flow parameter tuning problem is that many digital design tools exhibit nondeterminism, i.e., run-to-run variation. While CAD tool nondeterminism is typically considered an undesirable behavior, this paper proposes design flow tuning methodologies that take advantage of nondeterminism. We propose techniques that employ a combination of running targeted scenarios multiple times to exploit positive deviations nondeterminism can produce and leverage the best observed runs as seeds for multi-phase tuning. We introduce three seed variants for multi-phase tuning that have a spectrum of characteristics, trading off PPA improvement and reduce run-to-run variation. Our experimental analysis using high-performance industrial designs show that the proposed novel techniques outperform an existing state-of-the-art industrial design flow tuning program across all PPA metrics. Furthermore, our proposed approaches reduce run-to-run variation of the best scenarios, leading to a more predictable design flow.
- Anthony Agnesina, Kyungwook Chang, and Sung Kyu Lim. 2020. VLSI placement parameter optimization using deep reinforcement learning. In International Conference on Computer-Aided Design (ICCAD) .Google ScholarDigital Library
- Hao Geng, Tinghuan Chen, Qi Sun, and Bei Yu. 2022. Techniques for CAD Tool Parameter Auto-tuning in Physical Synthesis: A Survey. In Asia and South Pacific Design Automation Conference (ASP-DAC) .Google Scholar
- Abdelrahman Hosny, Soheil Hashemi, Mohamed Shalan, and Sherief Reda. 2020. DRiLLS: Deep reinforcement learning for logic synthesis. In Asia and South Pacific Design Automation Conference (ASP-DAC) .Google ScholarDigital Library
- Chau-Chin Huang, Gustavo Tellez, Gi-Joon Nam, and Yao-Wen Chang. 2020. Latch Clustering for Timing-Power Co-Optimization. In Design Automation Conference (DAC) .Google Scholar
- Kwangok Jeong and Andrew B. Kahng. 2010. Methodology from chaos in IC implementation. In International Symposium on Quality Electronic Design (ISQED) .Google Scholar
- A.B. Kahng and S. Mantik. 2002. Measurement of inherent noise in EDA tools. In Proceedings International Symposium on Quality Electronic Design (ISQED) .Google Scholar
- Nachiket Kapre et almbox. 2015. Driving timing convergence of FPGA designs through machine learning and cloud computing. In International Symposium on Field-Programmable Custom Computing Machines (FCCM) .Google Scholar
- Jihye Kwon, Matthew M. Ziegler, and Luca P. Carloni. 2019. A learning-based recommender system for autotuning design fiows of industrial high-performance processors. In Design Automation Conference (DAC) .Google Scholar
- Yuzhe Ma, Ziyang Yu, and Bei Yu. 2019. CAD Tool Design Space Exploration via Bayesian Optimization. In Workshop on Machine Learning for CAD (MLCAD) .Google ScholarCross Ref
- Ecenur Ustun et almbox. 2019. LAMDA: Learning-Assisted Multi-stage Autotuning for FPGA Design Closure. In International Symposium on Field-Programmable Custom Computing Machines (FCCM) .Google Scholar
- Yaoguang Wei et almbox. 2012. GLARE: Global and local wiring aware routability evaluation. In DAC Design Automation Conference (DAC) .Google Scholar
- Zhiyao Xie et almbox. 2020. FIST: A feature-importance sampling and tree-based method for automatic design flow parameter tuning. In Asia and South Pacific Design Automation Conference (ASP-DAC) .Google Scholar
- Cunxi Yu, Houping Xiao, and Giovanni De Micheli. 2018. Developing Synthesis Flows without Human Knowledge. In Design Automation Conference (DAC) .Google Scholar
- Shuhan Zhang, Fan Yang, Dian Zhou, and Xuan Zeng. 2020. An Efficient Asynchronous Batch Bayesian Optimization Approach for Analog Circuit Synthesis. In Design Automation Conference (DAC) .Google Scholar
- Matthew M. Ziegler, Jihye Kwon, Hung-Yi Liu, and Luca P. Carloni. 2021. Online and Offline Machine Learning for Industrial Design Flow Tuning. In International Conference on Computer-Aided Design (ICCAD) .Google Scholar
- Matthew M. Ziegler, Hung-Yi Liu, and Luca P. Carloni. 2016a. Scalable auto-tuning of synthesis parameters for optimizing high-performance processors. In International Symposium on Low Power Electronics and Design (ISPLED) .Google Scholar
- Matthew M. Ziegler, Hung-Yi Liu, George Gristede, Bruce Owens, Ricardo Nigaglioni, and Luca P. Carloni. 2016b. A synthesis-parameter tuning system for autonomous design-space exploration. In Design, Automation & Test in Europe Conference & Exhibition (DATE) .Google Scholar
Index Terms
- Design Flow Parameter Optimization with Multi-Phase Positive Nondeterministic Tuning
Recommendations
When parameter tuning actually is parameter control
GECCO '11: Proceedings of the 13th annual conference on Genetic and evolutionary computationIn this paper, we show that sequential parameter optimization (SPO), a method that was designed for (offline) parameter tuning, can be successfully used as a controller for multistart approaches of evolutionary algorithms (EA). We demonstrate this by ...
Research on PID Control Parameters Tuning Based on Election-Survey Optimization Algorithm
CCIE '10: Proceedings of the 2010 International Conference on Computing, Control and Industrial Engineering - Volume 02According to the tuning rule of PID control parameters, IAE, ISE, ITAE, ITSE performance criteria are chosen to be optimization object, a new optimization method of PID control parameters tuning based on Election-survey Optimization Algorithm is ...
Meta-optimization for parameter tuning with a flexible computing budget
GECCO '12: Proceedings of the 14th annual conference on Genetic and evolutionary computationMeta-optimization techniques for tuning algorithm parameters usually try to find optimal parameter settings for a given computational budget allocated to the lower-level algorithm. If the available computational budget changes, parameters have to be ...
Comments