Macro Placement by Wire-Mask-Guided Black-Box Optimization

Yunqi Shi, Ke Xue, Lei Song, Chao Qian
6/29/2023
cs.LG

Official code: lamda-bbo/WireMask-BBO (33 stars, MIT, last commit 2025-05-23).

Abstract

The development of very large-scale integration (VLSI) technology has posed new challenges for electronic design automation (EDA) techniques in chip floorplanning. During this process, macro placement is an important subproblem, which tries to determine the positions of all macros with the aim of minimizing half-perimeter wirelength (HPWL) and avoiding overlapping. Previous methods include packing-based, analytical and reinforcement learning methods. In this paper, we propose a new black-box optimization (BBO) framework (called WireMask-BBO) for macro placement, by using a wire-mask-guided greedy procedure for objective evaluation. Equipped with different BBO algorithms, WireMask-BBO empirically achieves significant improvements over previous methods, i.e., achieves significantly shorter HPWL by using much less time. Furthermore, it can fine-tune existing placements by treating them as initial solutions, which can bring up to 50% improvement in HPWL. WireMask-BBO has the potential to significantly improve the quality and efficiency of chip floorplanning, which makes it appealing to researchers and practitioners in EDA and will also promote the application of BBO. Our code is available at https://github.com/lamda-bbo/WireMask-BBO.

View on arXivView PDF

Code Implementations(1)

MIT

Official implementation of NeurIPS'23 paper "Macro Placement by Wire-Mask-Guided Black-Box Optimization"

336Perl, PythonOct 19, 20231 years agoMIT
bayesian-optimizationblack-box-optimizationedaevolutionary-algorithmsmacro-placement

Similar Papers

Cite this paper

@article{shi2023macro,
  title  = {Macro Placement by Wire-Mask-Guided Black-Box Optimization},
  author = {Yunqi Shi and Ke Xue and Lei Song and Chao Qian},
  year   = {2023},
  eprint = {2306.16844},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2306.16844v3},
  journal = {NEURIPS 2023 2023}
}

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/2306.16844.svg)](https://codeofpaper.com/paper/2306.16844)

Discussion