---
title: 'BBOPlace-Bench: Chip Placement Benchmark'
url: https://www.emergentmind.com/topics/bboplace-bench
type: topic
---

# BBOPlace-Bench: Chip Placement Benchmark

Searching arXiv for the benchmark paper and closely related formulation paper to ground the article in the latest relevant literature.
BBOPlace-Bench is a benchmark and framework for evaluating and developing black-box optimization (BBO) algorithms for chip placement. It formalizes chip placement as a family of BBO problems, integrates three problem formulations specific to placement, and exposes them through a modular, decoupled, and flexible framework in which problem formulation, optimization algorithm, and evaluation are separated. The benchmark standardizes industrial suites, includes simulated annealing (SA), evolutionary algorithms (EAs), and Bayesian optimization (BO), and supports evaluation at the levels of macro-placement wirelength, global-placement wirelength, and downstream PPA metrics obtained from Cadence Innovus [2510.23472].

## 1. Research context and problem setting

Chip placement is a central stage in physical design after logic synthesis, where physical locations are assigned to modules on a chip canvas. In the formulation used by BBOPlace-Bench, the netlist is a hypergraph $\mathcal{N}=(V,E)$, where $V$ denotes modules and $E$ denotes nets; for $k$ movable modules $\{m_i\}_{i=1}^k$, a placement solution is
$$
\mathbf{s}=\{(x_i,y_i)\}_{i=1}^k \in \mathbb{R}^{2k}.
$$
Placement quality directly affects wirelength, congestion, area, and timing. A standard proxy for routing wirelength is Half-Perimeter Wirelength (HPWL), with the single-objective formulation
$$
\min_{\mathbf{s}} \mathrm{HPWL}(\mathbf{s})=\min_{\mathbf{s}} \sum_{e\in E}\mathrm{HPWL}_e(\mathbf{s})
$$
subject to a density constraint $D(\mathbf{s})\le \epsilon$, where for a net $e$,
$$
\mathrm{HPWL}_e(\mathbf{s})=(\max_{P\in e} P_x-\min_{P\in e} P_x)+(\max_{P\in e} P_y-\min_{P\in e} P_y).
$$
The objective is non-differentiable and optimizing it is NP-complete, which motivates black-box treatments of the problem [2510.23472].

The benchmark is situated against two historical phases of BBO for placement. Early work relied on sequence-pair-based SA and evolutionary methods, but these formulations suffered from huge combinatorial search spaces, expensive decoding, hard constraint handling, and low scalability. More recent work altered the formulation itself. In particular, WireMask-Guided BBO introduced a grid-based continuous representation and a wire-mask-guided greedy decoder that guarantees no overlap and greedily minimizes incremental HPWL, thereby making macro placement substantially more amenable to BBO [2306.16844]. BBOPlace-Bench incorporates that line of development alongside hyperparameter optimization of DREAMPlace and the classical sequence-pair formulation, and thereby turns disparate strands of placement-oriented BBO into a common experimental object [2510.23472].

## 2. Benchmark architecture and problem formulations

BBOPlace-Bench is organized around an explicit decoupling of three components: problem formulation, optimization algorithm, and evaluation. The problem formulation defines the search space and genotype-phenotype mapping; the optimization algorithm interacts through `ask()` and `evaluate()`; the evaluation stage transforms decoded placements into metrics such as MP-HPWL, GP-HPWL, and PPA. This design permits the same optimizer to be tested across heterogeneous placement formulations and, conversely, permits new formulations or evaluators to be inserted without modifying the optimization layer [2510.23472].

| Formulation | Search space | Decoder |
|---|---|---|
| Sequence Pair (SP) | $(\pi^+,\pi^-)$, two permutations | Packing from pairwise order relations |
| Mask-Guided Optimization (MGO) | $\{(x_i,y_i)\}_{i=1}^k \in \mathbb{R}^{2k}$ | Wire-mask-guided greedy decoding on an $n\times n$ grid |
| Hyperparameter Optimization (HPO) | $\bm{\theta}\in\Theta$, mixed configuration space | Run DREAMPlace with hyperparameters $\bm{\theta}$ |

The sequence-pair formulation uses a purely discrete search space of size $(k!)^2$. A solution is $\mathbf{s}=(\pi^+,\pi^-)$, where $\pi^+$ and $\pi^-$ are permutations of the macros. Decoding computes pairwise horizontal and vertical relations, derives orders with longest-common-subsequence-style logic, computes coordinates consistent with those orders, and adjusts coordinates to ensure non-overlap and minimal area. Its principal strengths are a clear combinatorial encoding and legality by construction, but its decoding is $O(k^2)$ and the search space grows super-exponentially, which makes exploration difficult for large designs [2510.23472].

The MGO formulation uses a continuous coordinate representation of dimension $2k$ and decodes candidates by discretizing the canvas into an $n\times n$ grid, ordering macros by the total area of all modules connected to each macro, constructing a wire mask for each macro, removing infeasible grids, and placing each macro on a grid with minimal incremental HPWL that is nearest to the original candidate coordinate. The resulting decoded placement is legal, non-overlapping, and greedily improves HPWL at each placement step. This formulation inherits the essential logic of WireMask-BBO, where the genotype is unconstrained continuous coordinates and the phenotype is a legal grid-aligned placement returned by a wire-mask-guided greedy evaluator [2306.16844].

The HPO formulation does not optimize placements directly. Instead, it tunes the hyperparameters of an analytical placer, specifically DREAMPlace. A candidate is
$$
\bm{\theta}=(\theta_1,\ldots,\theta_N)\in\Theta,
$$
and decoding consists of configuring the analytical placer $\mathcal{P}_{\bm{\theta}}$ and running it on the netlist. The search dimensions listed in the benchmark include `GP_num_bins_x`, `GP_num_bins_y`, `GP_optimizer`, `GP_wirelength`, `GP_learning_rate`, `GP_Llambda_density_weight_iteration`, `GP_Lsub_iteration`, `GP_learning_rate_decay`, `stop_overflow`, `target_density`, `RePlAce_LOWER_PCOF`, `RePlAce_UPPER_PCOF`, `RePlAce_ref_hpwl`, `density_weight`, and `gamma`; the search space dimension is fixed at around $\sim 15$ variables and is independent of macro count [2510.23472].

## 3. Black-box interface and integrated optimization algorithms

The benchmark models placement strictly as black-box optimization. The optimizer sees only query-response pairs: a candidate in the formulation-specific search space is decoded into a placement, and an objective such as MP-HPWL, GP-HPWL, or optionally downstream PPA is returned. No gradients, analytic structure, or internal solver state are exposed. For MP-HPWL, the benchmark uses a budget of 10,000 function evaluations; for GP-HPWL, it uses a budget of 200 evaluations because each evaluation requires placing standard cells via DREAMPlace and is therefore much more expensive [2510.23472].

SA is implemented as a single-solution stochastic search with initial temperature 100, cooling schedule decay 0.99 every 100 steps, and the standard Metropolis acceptance rule. Its mutation operator depends on the formulation: inversion for SP, shuffle for MGO, and random resetting for HPO. As configured in the benchmark, SA functions primarily as a baseline against population-based methods [2510.23472].

The principal EA baseline is a standard generational algorithm with population size $50$ in most experiments. For SP it uses order crossover; for MGO and HPO it uses uniform crossover with probability $0.5$ per coordinate or hyperparameter; mutation follows the same formulation-dependent operators used by SA. The benchmark also includes Evolution Strategies through CMA-ES for continuous spaces, with initial sigma $0.5$, and PSO for continuous spaces via PyPop7, configured with cognitive learning rate $c_1=2.0$, social learning rate $c_2=2.0$, and max velocity ratio $0.2$. The PSO update follows
$$
v_i^{(t+1)}=\omega v_i^{(t)}+c_1r_1(p_i-x_i^{(t)})+c_2r_2(g-x_i^{(t)}),
$$
$$
x_i^{(t+1)}=x_i^{(t)}+v_i^{(t+1)}.
$$
Bayesian optimization is integrated through BoTorch with a Gaussian Process surrogate using a Matern-5/2 kernel and Expected Improvement as the acquisition function [2510.23472].

The framework for new algorithms is intentionally minimal. The benchmark provides an `Evaluator` object exposing `n_dim`, `xl`, `xu`, and `evaluate(solutions)`, and algorithms are expected to implement the standard `ask()`/`tell()` loop. This API is the mechanism by which BBOPlace-Bench treats SP, MGO, and HPO as interchangeable black-box tasks, despite their radically different search spaces and decoders [2510.23472].

## 4. Datasets, preprocessing, and evaluation protocol

BBOPlace-Bench supports two industrial benchmark suites. ISPD 2005 uses the Bookshelf format and includes the `adaptec` and `bigblue` series. ICCAD 2015 uses LEF/DEF and ancillary files and includes the `superblue` series. The benchmark preprocesses both formats into a unified internal representation comprising module dimensions, nets and pins, canvas dimensions, blockages, and densities. For ICCAD 2015, where macros are not predefined, BBOPlace-Bench defines macros as the 512 largest modules by area, with this threshold being configurable [2510.23472].

The benchmark spans substantial placement scales. For ISPD 2005, the reported chips `adaptec1-4`, `bigblue1`, and `bigblue3` contain 543–1329 macros, approximately $210$k–$1.1$M cells, 221k–1.1M nets, and approximately 944k–3.8M pins. For ICCAD 2015, the chips `superblue1,3,4,5,7,10,16,18` fix macro count at 512 and contain approximately 768k–1.93M cells, approximately 771k–1.93M nets, and approximately 2.5M–6.37M pins. These scales directly determine the effective dimensionality of SP and MGO, while HPO remains fixed-dimensional [2510.23472].

Evaluation is multi-level. MP-HPWL measures macro-only wirelength and is comparatively cheap. GP-HPWL measures wirelength after macro placement and subsequent standard-cell placement through DREAMPlace, making it more accurate but more expensive. Downstream PPA is measured with Cadence Innovus and includes routed wirelength `rWL`, congestion overflow `rO-H` and `rO-V`, worst negative slack `WNS`, total negative slack `TNS`, and number of violation paths `NVP`. Results are reported over 5 independent runs as mean $\pm$ standard deviation; significance is assessed with a Wilcoxon rank-sum test at the $0.05$ level, using “≈” for statistically not worse than best and “-” otherwise. Analytical and reinforcement-learning baselines include DREAMPlace, AlphaChip, MaskPlace, and EfficientPlace [2510.23472].

## 5. Empirical findings across formulations and algorithm families

The benchmark’s principal empirical result is that problem formulation matters as much as optimizer choice. On ISPD 2005 for MP-HPWL, SP-based methods are uncompetitive: SP-SA and SP-Vanilla-EA have the worst overall average ranks, 15 and 16, respectively, and on `adaptec3` they report $655.61 \pm 20.30$ and $486.91 \pm 10.24$ in units of MP-HPWL $\times 10^5$. MGO improves substantially, with examples on `adaptec3` such as $64.05 \pm 0.73$ for MGO-SA and $56.13 \pm 0.81$ for MGO-Vanilla-EA. HPO is strongest on ISPD for macro-only wirelength, with HPO-Vanilla-EA achieving average rank $3.5$ and HPO-PSO $4.5$, and on `adaptec3` values such as $52.70 \pm 0.89$ for HPO-Vanilla-EA [2510.23472].

For GP-HPWL, HPO is consistently dominant because it optimizes through DREAMPlace and therefore considers macros, standard cells, and density within the underlying analytical placement flow. On ISPD 2005, HPO-Vanilla-EA attains average rank $2.0$ and HPO-BO $2.33$; on `adaptec1`, HPO-Vanilla-EA yields $6.05 \pm 0.03$ and HPO-BO yields $6.09 \pm 0.04$ in units of GP-HPWL $\times 10^7$, whereas MGO-Vanilla-EA is much worse at $8.49 \pm 0.08$ [2510.23472].

On ICCAD 2015, the pattern bifurcates according to objective. For MP-HPWL, MGO is dominant: MGO-PSO achieves average rank $1.12$ and MGO-Vanilla-EA $1.75$; on `superblue4`, MGO-PSO attains $0.94 \pm 0.01$ and MGO-Vanilla-EA $0.95 \pm 0.01$, while HPO-Vanilla-EA is markedly worse at $2.35 \pm 0.10$ in units of MP-HPWL $\times 10^5$. For GP-HPWL, HPO again becomes best: HPO-PSO attains average rank $1.38$ and HPO-Vanilla-EA $1.88$; on `superblue1`, HPO-BO, HPO-Vanilla-EA, and HPO-PSO report $36.64 \pm 0.25$, $36.91 \pm 0.88$, and $37.02 \pm 0.66$, respectively, while MGO-Vanilla-EA reports $55.35 \pm 1.24$ in units of GP-HPWL $\times 10^7$ [2510.23472].

Across algorithm families, EAs demonstrate better overall performance than SA and BO, especially in high-dimensional search spaces. Vanilla-EA and PSO are most often best or near-best; CMA-ES is competitive but not dominant; SA is generally weaker because of single-point exploration; and BO is strongly formulation-dependent. Under high-dimensional MGO, BO underperforms, with average ranks around 8–10, which aligns with the benchmark’s observation that GP-based BO scales poorly in high dimensions. Under low-dimensional, expensive HPO, however, BO becomes very competitive and is often runner-up for GP-HPWL [2510.23472].

These results also revise a common historical expectation that BBO for placement is intrinsically too slow or too poorly structured to compete with analytical and reinforcement-learning methods. A more precise reading of the evidence is that older formulations such as sequence pair are slow and hard to scale, whereas formulation changes such as wire-mask-guided decoding and low-dimensional HPO materially alter the optimization landscape. That interpretation is consistent with the earlier WireMask-BBO finding that a wire-mask-guided evaluator can outperform packing-based, analytical, and RL baselines in macro placement by making legality and incremental HPWL optimization part of the evaluator rather than the optimizer [2306.16844].

## 6. Ablations, runtime behavior, and landscape implications

BBOPlace-Bench includes an ablation on the number of macros in MGO, directly linking placement scale to black-box difficulty. On ICCAD 2015, the authors vary macro count as 128, 256, 512, and 1024 for MGO-Vanilla-EA and MGO-PSO. GP-HPWL generally worsens as the number of macros increases; for example, on `superblue1`, MGO-Vanilla-EA reports $52.07 \pm 0.37$, $53.91 \pm 0.52$, $55.35 \pm 1.24$, and $60.27 \pm 0.68$ as macro count increases from 128 to 1024. The stated interpretation is that, at fixed evaluation budget, increasing dimensionality makes optimization harder, while smaller macro sets concentrate optimization effort on the macros deemed most important by the formulation [2510.23472].

Runtime analysis on `adaptec3` distinguishes optimization overhead from evaluation cost. Per-iteration optimization time is approximately $0.01$–$0.7$ s for SA, $0.03$–$0.7$ s for Vanilla-EA, $0.002$–$0.04$ s for PSO, $0.25$–$1.0$ s for ES, and $1$–$9$ s for BO. Evaluation time for MP-HPWL is $0.3870$ s for SP, $2.5114$ s for MGO, and $62.9666$ s for HPO; for GP-HPWL it is $18.5297$ s for SP, $20.3188$ s for MGO, and $81.5007$ s for HPO. The resulting characterization is that HPO is evaluation-dominated, SP and MGO permit much larger budgets under MP-HPWL, and BO’s optimization overhead is relatively acceptable only when the evaluation budget is small and each evaluation is expensive [2510.23472].

The benchmark also articulates representation-level differences in search landscape. SP is described as a very rugged, high-dimensional discrete landscape with complex decoding; MGO as a continuous landscape whose wire-mask decoder enforces legality and locally meaningful incremental HPWL improvement; and HPO as a low-dimensional, heavily structured hyperparameter landscape that is smoother but still non-convex. This suggests that BBOPlace-Bench is not a single optimization problem but a set of regimes: high-dimensional combinatorial search, high-dimensional continuous search with hard geometric constraints, and low-dimensional expensive mixed search [2510.23472].

## 7. Software organization, practical usage, and limitations

The implementation is in Python and is organized into a preprocessing layer, problem formulations, an `Evaluator`, separate optimization algorithms, and evaluation and logging modules. The preprocessing layer converts Bookshelf and LEF/DEF data into a unified representation. The formulation layer contains `sequence_pair_formulation`, `wiremask_guided`, and `hpo_algorithm`. The evaluator holds chip data, the selected formulation, problem dimension, and bounds, and provides `evaluate(solutions)`. The optimization layer includes SA, Vanilla-EA, ES via `pycma`, PSO via `pypop7`, and BO via `botorch` and PyTorch. DREAMPlace provides analytical placement and GP-HPWL evaluation, and Cadence Innovus provides PPA metrics. The code is publicly available at `https://github.com/lamda-bbo/BBOPlace-Bench` [2510.23472].

The framework is intended to support several distinct research modes. SP is suitable for permutation-specific BBO in a classic representation. MGO is the natural choice for high-dimensional continuous BBO with geometric constraints and relatively cheap macro-only evaluations. HPO is the preferred choice when the objective is full-chip GP-HPWL or downstream PPA, since it tunes a deterministic analytical placer directly. The benchmark further notes algorithm-selection heuristics: Vanilla-EA and PSO are preferred for high-dimensional MGO under large budgets; BO becomes competitive in the low-dimensional, expensive HPO setting; and PSO has especially low optimization overhead under tight runtime constraints [2510.23472].

The benchmark’s limitations are also explicit. PPA evaluation depends on Cadence Innovus, a commercial tool, which restricts accessibility. The supported circuit suites are ISPD 2005 and ICCAD 2015, which are substantial but limited in variety. Optimization is primarily centered on scalar HPWL even though the downstream design problem is inherently multi-objective and constrained. The BO integration is generic rather than specialized for high-dimensional or highly structured placement problems. The proposed future directions are correspondingly specific: multi-objective optimization over wirelength, congestion, timing, power, and area; surrogate-assisted expensive optimization for GP-HPWL and PPA; high-dimensional optimization using clustering and hierarchical placement; learning-enhanced optimization and hyper-heuristics; and exploratory landscape analysis for SP, MGO, and HPO [2510.23472].

Source: https://www.emergentmind.com/topics/bboplace-bench