mpl2 fails to place macros where classic macro placement succeeds
Description
Classic succeeds:
mpl2 fails.
[deleted]
Call Macro Placer -halo_width 50 -report_directory bazel-out/k8-fastbuild/bin//build/objects/asap7/BoomTile/base/rtlmp
Floorplan Outline: (0.0, 0.0) (3540.215, 3540.215), Core Outline: (2.052, 2.16) (3538.188, 3538.08)
Traversed logical hierarchy
Number of std cell instances: 1131390
Area of std cell instances: 135726.88
Number of macros: 165
Area of macros: 2355215.00
Area of macros with halos: 7334372.50
Area of std cell instances + Area of macros: 2490942.00
Core area: 12503495.00
Design Utilization: 0.20
Core Utilization: 0.01
Manufacturing Grid: 1
[deleted]
MultiLevelMacroPlacement] sa_id = 188, target_util = 1.1500001, target_dead_space = 0.90000004
[MultiLevelMacroPlacement] sa_id = 189, target_util = 1.1500001, target_dead_space = 0.95000005
[INFO MPL-0032] [MultiLevelMacroPlacement] Working on children of cluster: ((root)_glue_logic_0)_glue_logic_0_0_0_0, Outline 2.052, 2.16 3536.136, 2356.588
[EnhancedMacroPlacement] Simulated Annealing Summary for cluster ((root)_glue_logic_0)_glue_logic_0_0_0_0
[EnhancedMacroPlacement] sa_id = 0, target_util = 1000000.0, target_dead_space = 0.99999
[ERROR MPL-2067] [MultiLevelMacroPlacement] Failed on cluster ((root)_glue_logic_0)_glue_logic_0_0_0_0
Error: macro_place_util.tcl, 138 MPL-2067
Command exited with non-zero status 1
Elapsed time: 36:40.00[h:]min:sec. CPU time: user 15145.64 sys 389.73 (706%). Peak memory: 10083828KB.
make[1]: *** [/home/oyvind/OpenROAD-flow-scripts/flow/Makefile:593: do-2_4_floorplan_macro] Error 1
make: *** [/home/oyvind/OpenROAD-flow-scripts/flow/Makefile:613: do-floorplan] Error 2
To reproduce, unzip https://drive.google.com/file/d/17HgnvWMQBAORIPfR6UOaHqXaJ064rrMi/view?usp=sharing and run:
NUM_CORES=16 ./run-me-BoomTile-asap7-base.sh
Suggested Solution
Should place macros
Additional Context
No response
I tried to to whittle it down, but I did not get a faster failure.
NUM_CORES=16 openroad -python ~/OpenROAD-flow-scripts/tools/OpenROAD/etc/deltaDebug.py --persistence 4 --use_stdout --error_string "MPL-2067" --base_db_path bazel-out/k8-fastbuild/bin/build/results/asap7/BoomTile/base/2_3_floorplan_tdms.odb --step "./run-me-BoomTile-asap7-base.sh"
Does the fix for #4242 work here?
Does the fix for #4242 work here?
This does not crash anymore, so for that part yes, but mpl2 does not find a solution, whereas classic placement does find a solution.
Hence, I filed a feature request, not bug report....
@maliberty Please confirm that you can repeat the problem. deltaDebug did not produce a faster failure, so the reproduction case is the above.
@oharboe It looks the file for the test case doesn't exist anymore in the link.
Close this one then?