The-OpenROAD-Project / The-OpenROAD-Project/OpenROAD

[DPL-0701] NegotiationLegalizer did not fully converge on ispd15 mgc_superblue12

Open
#10,951 5 comments 0 reactions 1 assignee View on GitHub

@gudeh is already working on this.

Since Jul 20, 2026.

dpl
Dominant language
Verilog
Stars
3.1k
Forks
1k
Avg merge
2d 23h
Merged PRs (30d)
136

Description

Describe the bug

ispd15 Blockage-Aware Detailed Routing-Driven Placement Contest: mgc_superblue12

[WARNING DPL-0701] NegotiationLegalizer did not fully converge. Violations remain: 146
[INFO DPL-0500] Runtime: 624.35s
Expected Behavior

legal detailed placement

Environment
macOS M1 bazel build July 19 2026
To Reproduce

https://www.ispd.cc/contests/15/web/downloads.html

read_lef tech.lef.gz
read_lef cells.lef.gz
read_verilog design.v.gz
read_def floorplan.def.gz
global_placement
detailed_placement

Relevant log output
OpenROAD bazel-nostamp 
Features included (+) or not (-): -GPU +GUI -Python
This program is licensed under the BSD-3 license. See the LICENSE file for details.
Components of this program may be licensed under more restrictive licenses which must be honored.
[INFO ORD-0030] Using 8 thread(s).
[INFO ODB-0388] unsupported LEF57_SPACING property for layer metal1 :"SPACING 0.065 ENDOFLINE 0.056 WITHIN 0.045 PARALLELEDGE 0.11 WITHIN 0.11 ;"
[INFO ODB-0388] unsupported LEF57_SPACING property for layer metal2 :"SPACING 0.065 ENDOFLINE 0.056 WITHIN 0.045 PARALLELEDGE 0.11 WITHIN 0.11 ;"
[INFO ODB-0388] unsupported LEF57_SPACING property for layer metal3 :"SPACING 0.065 ENDOFLINE 0.056 WITHIN 0.045 PARALLELEDGE 0.11 WITHIN 0.11 ;"
[INFO ODB-0388] unsupported LEF57_SPACING property for layer metal4 :"SPACING 0.065 ENDOFLINE 0.056 WITHIN 0.045 PARALLELEDGE 0.11 WITHIN 0.11 ;"
[INFO ODB-0227] LEF file: tech.lef.gz, created 17 layers, 276 vias
[INFO ODB-0227] LEF file: cells.lef.gz, created 2081 library cells
[INFO ODB-0127] Reading DEF file: floorplan.def.gz
[INFO ODB-0128] Design: superblue12
[INFO ODB-0094] 		Created 100000 Insts
[INFO ODB-0094] 		Created 200000 Insts
[INFO ODB-0094] 		Created 300000 Insts
[INFO ODB-0094] 		Created 400000 Insts
[INFO ODB-0094] 		Created 500000 Insts
[INFO ODB-0094] 		Created 600000 Insts
[INFO ODB-0094] 		Created 700000 Insts
[INFO ODB-0094] 		Created 800000 Insts
[INFO ODB-0094] 		Created 900000 Insts
[INFO ODB-0094] 		Created 1000000 Insts
[INFO ODB-0094] 		Created 1100000 Insts
[INFO ODB-0094] 		Created 1200000 Insts
[INFO ODB-0097] 		Created 100000 Nets
[INFO ODB-0097] 		Created 200000 Nets
[INFO ODB-0097] 		Created 300000 Nets
[INFO ODB-0097] 		Created 400000 Nets
[INFO ODB-0097] 		Created 500000 Nets
[INFO ODB-0097] 		Created 600000 Nets
[INFO ODB-0097] 		Created 700000 Nets
[INFO ODB-0097] 		Created 800000 Nets
[INFO ODB-0097] 		Created 900000 Nets
[INFO ODB-0097] 		Created 1000000 Nets
[INFO ODB-0097] 		Created 1100000 Nets
[INFO ODB-0097] 		Created 1200000 Nets
[INFO ODB-0130]     Created 5908 pins.
[INFO ODB-0131]     Created 1287037 components and 4772738 component-terminals.
[INFO ODB-0132]     Created 2 special nets and 0 connections.
[INFO ODB-0133]     Created 1293413 nets and 4767082 connections.
[INFO ODB-0134] Finished DEF file: floorplan.def.gz
[INFO GPL-0001] ---- Initialize GPL Main Data Structures
[INFO GPL-0002] DBU: 1000
[INFO GPL-0003] SiteSize: (  0.100  0.900 ) um
[INFO GPL-0004] CoreBBox: (  1.800  1.800 ) ( 1419.000 2066.400 ) um
[INFO GPL-0036] Movable instances area:     1008485.910 um^2
[INFO GPL-0037] Total instances area:       1685960.730 um^2
[INFO GPL-0035] Pin density area adjust:    135925.669 um^2
[INFO GPL-0032] ---- Initialize Region: Top-level
[INFO GPL-0006] Number of instances:           1287037
[INFO GPL-0007] Movable instances:             1286948
[INFO GPL-0008] Fixed instances:                    89
[INFO GPL-0009] Dummy instances:                     0
[INFO GPL-0010] Number of nets:                1293413
[INFO GPL-0011] Number of pins:                4772990
[INFO GPL-0012] Die BBox:  (  0.000  0.000 ) ( 1420.800 2072.000 ) um
[INFO GPL-0013] Core BBox: (  1.800  1.800 ) ( 1419.000 2066.400 ) um
[INFO GPL-0016] Core area:                  2925951.120 um^2
[INFO GPL-0014] Region name: top-level.
[INFO GPL-0015] Region area:                2925951.120 um^2
[INFO GPL-0017] Fixed instances area:       677474.820 um^2
[INFO GPL-0018] Movable instances area:     1144411.579 um^2
[INFO GPL-0019] Utilization:                    50.897 %
[INFO GPL-0020] Standard cells area:        1144411.579 um^2
[INFO GPL-0021] Large instances area:            0.000 um^2
[INFO GPL-0005] ---- Execute Conjugate Gradient Initial Placement.
[INFO GPL-0051] Source of initial instance position counters:
	Odb location = 0	Core center = 1286948	Region center = 0
[InitialPlace]  Iter: 1 conjugate gradient residual: 0.00577552 HPWL: 20652887500
[InitialPlace]  Iter: 2 conjugate gradient residual: 0.00134655 HPWL: 15945067400
[InitialPlace]  Iter: 3 conjugate gradient residual: 0.00038552 HPWL: 15546039950
[InitialPlace]  Iter: 4 conjugate gradient residual: 0.00034417 HPWL: 15305325829
[InitialPlace]  Iter: 5 conjugate gradient residual: 0.00039616 HPWL: 14976627469
[InitialPlace]  Iter: 6 conjugate gradient residual: 0.00033215 HPWL: 14710889554
[InitialPlace]  Iter: 7 conjugate gradient residual: 0.00029287 HPWL: 14496288110
[InitialPlace]  Iter: 8 conjugate gradient residual: 0.00028070 HPWL: 14376093210
[InitialPlace]  Iter: 9 conjugate gradient residual: 0.00029926 HPWL: 14283319854
[InitialPlace]  Iter: 10 conjugate gradient residual: 0.00026297 HPWL: 14214787526
[InitialPlace]  Iter: 11 conjugate gradient residual: 0.00022780 HPWL: 14116251620
[InitialPlace]  Iter: 12 conjugate gradient residual: 0.00025895 HPWL: 14046825989
[InitialPlace]  Iter: 13 conjugate gradient residual: 0.00023871 HPWL: 13957641180
[InitialPlace]  Iter: 14 conjugate gradient residual: 0.00026336 HPWL: 13918098339
[InitialPlace]  Iter: 15 conjugate gradient residual: 0.00020391 HPWL: 13859237560
[InitialPlace]  Iter: 16 conjugate gradient residual: 0.00018656 HPWL: 13871239554
[InitialPlace]  Iter: 17 conjugate gradient residual: 0.00020209 HPWL: 13829787331
[InitialPlace]  Iter: 18 conjugate gradient residual: 0.00044507 HPWL: 13838152023
[InitialPlace]  Iter: 19 conjugate gradient residual: 0.00014926 HPWL: 13848056232
[InitialPlace]  Iter: 20 conjugate gradient residual: 0.00021224 HPWL: 13847053196
[INFO GPL-0033] ---- Initialize Nesterov Region: Top-level
[INFO GPL-0023] Placement target density:       0.7000
[INFO GPL-0024] Movable insts average area:      0.889 um^2
[INFO GPL-0025] Ideal bin area:                  1.270 um^2
[INFO GPL-0026] Ideal bin count:               2303265
[INFO GPL-0027] Total bin area:             2925951.120 um^2
[INFO GPL-0028] Bin count (X, Y):        1024 ,   1024
[INFO GPL-0029] Bin size (W * H):       1.384 *  2.016 um
[INFO GPL-0030] Number of bins:                1048576
[INFO GPL-0084] ---- Execute Nesterov Global Placement.
[INFO GPL-0031] HPWL: Half-Perimeter Wirelength
Iteration | Overflow |     HPWL (um) |  HPWL(%) |   Penalty | Group
---------------------------------------------------------------
        0 |   0.9870 |  8.749651e+06 |   +0.00% |  2.47e-16 |      
       10 |   0.9709 |  9.790872e+06 |  +11.90% |  3.51e-16 |      
       20 |   0.9627 |  1.042097e+07 |   +6.44% |  5.33e-16 |      
       30 |   0.9562 |  1.091506e+07 |   +4.74% |  8.22e-16 |      
       40 |   0.9511 |  1.129300e+07 |   +3.46% |  1.28e-15 |      
       50 |   0.9476 |  1.158404e+07 |   +2.58% |  2.02e-15 |      
       60 |   0.9449 |  1.182875e+07 |   +2.11% |  3.21e-15 |      
       70 |   0.9429 |  1.204221e+07 |   +1.80% |  5.10e-15 |      
       80 |   0.9408 |  1.223119e+07 |   +1.57% |  8.14e-15 |      
       90 |   0.9391 |  1.239216e+07 |   +1.32% |  1.30e-14 |      
      100 |   0.9378 |  1.253065e+07 |   +1.12% |  2.09e-14 |      
      110 |   0.9365 |  1.265151e+07 |   +0.96% |  3.36e-14 |      
      120 |   0.9353 |  1.275751e+07 |   +0.84% |  5.41e-14 |      
      130 |   0.9344 |  1.285534e+07 |   +0.77% |  8.71e-14 |      
      140 |   0.9337 |  1.294311e+07 |   +0.68% |  1.41e-13 |      
      150 |   0.9330 |  1.302096e+07 |   +0.60% |  2.27e-13 |      
      160 |   0.9323 |  1.308777e+07 |   +0.51% |  3.67e-13 |      
      170 |   0.9317 |  1.314224e+07 |   +0.42% |  5.94e-13 |      
      180 |   0.9308 |  1.319075e+07 |   +0.37% |  9.62e-13 |      
      190 |   0.9298 |  1.324343e+07 |   +0.40% |  1.56e-12 |      
      200 |   0.9284 |  1.330387e+07 |   +0.46% |  2.52e-12 |      
      210 |   0.9264 |  1.338396e+07 |   +0.60% |  4.07e-12 |      
      220 |   0.9236 |  1.350463e+07 |   +0.90% |  6.55e-12 |      
      230 |   0.9199 |  1.368184e+07 |   +1.31% |  1.05e-11 |      
      240 |   0.9143 |  1.393582e+07 |   +1.86% |  1.66e-11 |      
      250 |   0.9063 |  1.429431e+07 |   +2.57% |  2.61e-11 |      
      260 |   0.8958 |  1.477882e+07 |   +3.39% |  4.03e-11 |      
      270 |   0.8819 |  1.541525e+07 |   +4.31% |  6.14e-11 |      
      280 |   0.8650 |  1.621918e+07 |   +5.22% |  9.17e-11 |      
      290 |   0.8457 |  1.721935e+07 |   +6.17% |  1.34e-10 |      
      300 |   0.8242 |  1.882108e+07 |   +9.30% |  1.85e-10 |      
      310 |   0.8026 |  2.115345e+07 |  +12.39% |  2.34e-10 |      
      320 |   0.7866 |  2.316679e+07 |   +9.52% |  3.04e-10 |      
      330 |   0.7719 |  2.479021e+07 |   +7.01% |  4.13e-10 |      
      340 |   0.7527 |  2.640549e+07 |   +6.52% |  5.67e-10 |      
      350 |   0.7286 |  2.845555e+07 |   +7.76% |  7.40e-10 |      
      360 |   0.7095 |  3.003853e+07 |   +5.56% |  1.01e-09 |      
      370 |   0.6882 |  3.127161e+07 |   +4.10% |  1.44e-09 |      
      380 |   0.6620 |  3.219879e+07 |   +2.96% |  2.08e-09 |      
      390 |   0.6278 |  3.299906e+07 |   +2.49% |  3.12e-09 |      
      400 |   0.5919 |  3.437100e+07 |   +4.16% |  4.39e-09 |      
      410 |   0.5586 |  3.520577e+07 |   +2.43% |  6.47e-09 |      
      420 |   0.5287 |  3.526219e+07 |   +0.16% |  1.03e-08 |      
      430 |   0.4896 |  3.497554e+07 |   -0.81% |  1.65e-08 |      
      440 |   0.4456 |  3.556914e+07 |   +1.70% |  2.47e-08 |      
      450 |   0.4077 |  3.525105e+07 |   -0.89% |  4.02e-08 |      
      460 |   0.3582 |  3.540388e+07 |   +0.43% |  6.36e-08 |      
      470 |   0.3223 |  3.476851e+07 |   -1.79% |  9.66e-08 |      
      480 |   0.3033 |  3.371292e+07 |   -3.04% |  1.42e-07 |      
      490 |   0.2839 |  3.280788e+07 |   -2.68% |  2.10e-07 |      
      500 |   0.2674 |  3.193248e+07 |   -2.67% |  3.09e-07 |      
      510 |   0.2496 |  3.118121e+07 |   -2.35% |  4.55e-07 |      
      520 |   0.2271 |  3.065823e+07 |   -1.68% |  6.70e-07 |      
      530 |   0.2209 |  2.872676e+07 |   -6.30% |  9.83e-07 |      
      540 |   0.1747 |  3.000746e+07 |   +4.46% |  1.35e-06 |      
      550 |   0.1755 |  4.364612e+07 |  +45.45% |  1.10e-06 |      
[WARNING GPL-0323] Divergence detected between consecutive iterations
Divergence occured in 1 regions.
[WARNING GPL-0998] Divergence detected, reverting to snapshot with min hpwl.
[WARNING GPL-0999] Revert to iter:  537 overflow: 0.202 HPWL: 28196402729
[INFO GPL-1014] Final placement area: 1144411.58 (+0.00%)
[INFO DPL-0006] Core area: 2925951.12 um^2
[INFO DPL-0007] Movable instances area: 1008485.91 um^2
[INFO DPL-0008] Fixed instances area within core: 677474.82 um^2
[INFO DPL-0009] Utilization: 57.6%
[INFO DPL-0005] Diamond search max displacement: +/- 500 sites horizontally, +/- 100 rows vertically.
[INFO DPL-1102] Legalizing using negotiation legalizer.
[INFO DPL-1103] Negotiation base search window: +/-20 sites horizontally, +/-5 rows vertically 
	Automatic search window extension enabled.
	Search window extendable up to the max displacement cap of +/-500 sites, +/-100 rows near walls.
[INFO DPL-1104] NegotiationLegalizer DRC penalty: 5.
[INFO DPL-0392] Negotiation cell height distribution (18 unique row-count(s)):
[INFO DPL-0393]   height 1 row(s): 1286948 cells
[INFO DPL-0393]   height 8 row(s): 2 cells
[INFO DPL-0393]   height 16 row(s): 41 cells
[INFO DPL-0393]   height 40 row(s): 2 cells
[INFO DPL-0393]   height 41 row(s): 4 cells
[INFO DPL-0393]   height 66 row(s): 1 cells
[INFO DPL-0393]   height 76 row(s): 2 cells
[INFO DPL-0393]   height 91 row(s): 1 cells
[INFO DPL-0393]   height 126 row(s): 3 cells
[INFO DPL-0393]   height 234 row(s): 17 cells
[INFO DPL-0393]   height 241 row(s): 2 cells
[INFO DPL-0393]   height 251 row(s): 5 cells
[INFO DPL-0393]   height 267 row(s): 1 cells
[INFO DPL-0393]   height 295 row(s): 3 cells
[INFO DPL-0393]   height 296 row(s): 1 cells
[INFO DPL-0393]   height 312 row(s): 1 cells
[INFO DPL-0393]   height 681 row(s): 1 cells
[INFO DPL-0393]   height 850 row(s): 2 cells
          |      Total |  Illegal |  Illegal
Iteration | Violations |    Cells |    Sites
---------------------------------------------
        0 |     212223 |     68051 |    129966
        1 |      76055 |     16159 |     45708
        2 |      40958 |      5316 |     21667
        3 |      32144 |      3038 |     15164
        4 |      29693 |      2399 |     13358
        5 |      28946 |      2232 |     12778
        6 |      28700 |      2164 |     12600
        7 |      28550 |      2132 |     12482
        8 |      28553 |      2129 |     12488
        9 |      28482 |      2122 |     12424
       10 |      28449 |      2119 |     12394
       20 |      28449 |      2119 |     12394
       30 |      28449 |      2119 |     12394
       40 |      28543 |      2127 |     12480
       50 |      28449 |      2119 |     12394
       60 |      28449 |      2119 |     12394
       70 |      28502 |      2122 |     12444
       80 |      28505 |      2125 |     12444
       90 |      28481 |      2121 |     12424
      100 |      28449 |      2119 |     12394
      110 |      28491 |      2123 |     12432
      120 |      28484 |      2124 |     12424
      130 |      28449 |      2119 |     12394
      140 |      28517 |      2125 |     12456
      150 |      28514 |      2124 |     12454
      160 |      28507 |      2123 |     12448
      170 |      28449 |      2119 |     12394
      177 |      28449 |      2119 |     12394
[WARNING DPL-0700] Negotiation phase 1: violations stuck at 28449 for 3 consecutive iterations.
Using old diamond search for 2119 remaining illegal cells.
diamond recovery: recovered 1973/2119 stuck cells.
Negotiation phase 2: isolation point active, 1000 iterations.
      400 |       3931 |       149 |      1909
      410 |       3902 |       154 |      1875
      420 |       3916 |       148 |      1895
      424 |       3888 |       146 |      1869
[WARNING DPL-0702] Negotiation phase 2: violations stuck at 3888 for 3 consecutive iterations. Using diamond search for 146 remaining illegal cells.
diamond recovery: recovered 0/146 stuck cells.
[WARNING DPL-0701] NegotiationLegalizer did not fully converge. Violations remain: 146
[INFO DPL-0500] Runtime: 624.35s
Placement Analysis
---------------------------------
total displacement    1673595.9 u
average displacement        1.3 u
max displacement          107.5 u
original HPWL        27712885.5 u
legalized HPWL       29384868.0 u
delta HPWL                    6 %
Screenshots

No response

Additional Context

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.