-
Notifications
You must be signed in to change notification settings - Fork 728
Labels
Description
Describe the bug
Assert fail - ODB corruption occurred in hierarchical flow run of nangate45/bp_fe_top design.
Expected Behavior
No assert fail.
Environment
-- OpenROAD version: v2.0-23608-ge5e037d77f
-- System name: Linux
-- Compiler: GNU 13.3.0
-- Build type: RELEASE
-- Install prefix: /usr/local
-- C++ Standard: 17
-- C++ Standard Required: ON
-- C++ Extensions: OFF
-- Performing Test C_COMPILER_SUPPORTS__-std=c++17
-- Performing Test C_COMPILER_SUPPORTS__-std=c++17 - Failed
-- Performing Test CXX_COMPILER_SUPPORTS__-std=c++17
-- Performing Test CXX_COMPILER_SUPPORTS__-std=c++17 - Success
-- Found Python3: /usr/bin/python3.12 (found version "3.12.3") found components: Interpreter
-- TCL library: /usr/lib/x86_64-linux-gnu/libtcl.so
-- TCL header: /usr/include/tcl/tcl.h
-- TCL readline library: /usr/lib/x86_64-linux-gnu/libtclreadline.so
-- TCL readline header: /usr/include/x86_64-linux-gnu
-- Found SWIG: /usr/local/bin/swig (found suitable version "4.3.0", minimum required is "4.0")
-- Using SWIG >= 4.3.0 -flatstaticmethod flag for python
-- boost: 1.86.0
-- GTest: 1.13.0
-- Found Python3: /usr/include/python3.12 (found version "3.12.3") found components: Development Development.Module Development.Embed
-- spdlog: 1.15.0
-- STA version: 2.7.0
-- STA git sha: d5761004cd2cd2bcfa85d73327867966c279c83d
-- System name: Linux
-- Compiler: GNU 13.3.0
-- Build type: RELEASE
-- Build CXX_FLAGS: -O3 -DNDEBUG
-- Install prefix: /usr/local
-- TCL library: /usr/lib/x86_64-linux-gnu/libtcl.so
-- TCL header: /usr/include/tcl/tcl.h
-- TCL readline library: /usr/lib/x86_64-linux-gnu/libtclreadline.so
-- TCL readline header: /usr/include/x86_64-linux-gnu/tclreadline.h
-- CUDD library: /usr/local/lib/libcudd.a
-- CUDD header: /usr/local/include/cudd.h
-- SSTA: 0
-- Found SWIG: /usr/local/bin/swig (found suitable version "4.3.0", minimum required is "3.0")
-- STA library: /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/libOpenSTA.a
-- STA executable: /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/sta
-- Found OR-Tools: /opt/or-tools/lib/cmake/ortools (version: 9.11.4210)
-- TCL library: /usr/lib/x86_64-linux-gnu/libtcl.so
-- TCL header: /usr/include/tcl/tcl.h
-- Found OpenMP: TRUE (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
-- GUI is enabled
-- Could NOT find VTune (missing: VTune_LIBRARIES VTune_INCLUDE_DIRS)
-- TCL library: /usr/lib/x86_64-linux-gnu/libtcl.so
-- TCL header: /usr/include/tcl/tcl.h
-- TCL readline enabled
-- Tcl Extended disabled
-- Python3 enabled
-- Configuring done (1.8s)
-- Generating done (0.6s)To Reproduce
OpenROAD-flow-scripts/flow$ make SYNTH_WRAPPED_OPERATORS=1 DESIGN_CONFIG=./designs/nangate45/bp_fe_top/config.mk
Relevant log output
OpenROAD v2.0-23608-ge5e037d77f
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 64 thread(s).
read_liberty ./platforms/nangate45/lib/NangateOpenCellLibrary_typical.lib
read_liberty ./platforms/nangate45/lib/fakeram45_512x64.lib
read_liberty ./platforms/nangate45/lib/fakeram45_64x7.lib
read_liberty ./platforms/nangate45/lib/fakeram45_64x96.lib
[WARNING ORD-0012] Hierarchical flow (-hier) is currently in development and may cause multiple issues. Do not use in production environments.
[INFO RSZ-0026] Removed 541 buffers.
Perform port buffering...
[INFO RSZ-0027] Inserted 1171 BUF_X1 input buffers.
[INFO RSZ-0028] Inserted 735 BUF_X1 output buffers.
source /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/flow/designs/nangate45/bp_fe_top/fastroute.tcl
[INFO GPL-0022] Initialize gpl and calculate uniform density.
Placement density is 0.3157999989390373, computed from PLACE_DENSITY_LB_ADDON 0.11 and lower bound 0.2199999988079071
global_placement -density 0.3157999989390373 -pad_left 0 -pad_right 0 -routability_driven -timing_driven -keep_resize_below_overflow 0
[INFO GPL-0005] Execute conjugate gradient initial placement.
[INFO GPL-0002] DBU: 2000
[INFO GPL-0003] SiteSize: ( 0.190 1.400 ) um
[INFO GPL-0004] CoreBBox: ( 10.070 11.200 ) ( 789.830 589.400 ) um
[INFO GPL-0006] Number of instances: 35390
[INFO GPL-0007] Movable instances: 28912
[INFO GPL-0008] Fixed instances: 3190
[INFO GPL-0009] Dummy instances: 3288
[INFO GPL-0010] Number of nets: 35281
[INFO GPL-0011] Number of pins: 109345
[INFO GPL-0012] Die BBox: ( 0.000 0.000 ) ( 800.000 600.000 ) um
[INFO GPL-0013] Core BBox: ( 10.070 11.200 ) ( 789.830 589.400 ) um
[INFO GPL-0016] Core area: 450857.232 um^2
[INFO GPL-0017] Fixed instances area: 219220.442 um^2
[INFO GPL-0018] Movable instances area: 48667.626 um^2
[INFO GPL-0019] Utilization: 21.010 %
[INFO GPL-0020] Standard cells area: 48667.626 um^2
[INFO GPL-0021] Large instances area: 0.000 um^2
[InitialPlace] Iter: 1 conjugate gradient residual: 0.00090372 HPWL: 3958433219
[InitialPlace] Iter: 2 conjugate gradient residual: 0.00022183 HPWL: 3601328315
[InitialPlace] Iter: 3 conjugate gradient residual: 0.00007484 HPWL: 3450383451
[InitialPlace] Iter: 4 conjugate gradient residual: 0.00009445 HPWL: 3318341501
[InitialPlace] Iter: 5 conjugate gradient residual: 0.00007309 HPWL: 3206596313
[InitialPlace] Iter: 6 conjugate gradient residual: 0.00006751 HPWL: 3122646354
[InitialPlace] Iter: 7 conjugate gradient residual: 0.00003513 HPWL: 3064175113
[InitialPlace] Iter: 8 conjugate gradient residual: 0.00002808 HPWL: 3030957927
[InitialPlace] Iter: 9 conjugate gradient residual: 0.00002784 HPWL: 3012776075
[InitialPlace] Iter: 10 conjugate gradient residual: 0.00001512 HPWL: 3000029654
[InitialPlace] Iter: 11 conjugate gradient residual: 0.00001619 HPWL: 2992602051
[InitialPlace] Iter: 12 conjugate gradient residual: 0.00001762 HPWL: 2986560825
[InitialPlace] Iter: 13 conjugate gradient residual: 0.00001199 HPWL: 2983311609
[InitialPlace] Iter: 14 conjugate gradient residual: 0.00001182 HPWL: 2980331653
[InitialPlace] Iter: 15 conjugate gradient residual: 0.00001424 HPWL: 2979263851
[InitialPlace] Iter: 16 conjugate gradient residual: 0.00001455 HPWL: 2977815593
[InitialPlace] Iter: 17 conjugate gradient residual: 0.00001266 HPWL: 2977690330
[InitialPlace] Iter: 18 conjugate gradient residual: 0.00001311 HPWL: 2976378221
[InitialPlace] Iter: 19 conjugate gradient residual: 0.00001157 HPWL: 2976442735
[InitialPlace] Iter: 20 conjugate gradient residual: 0.00001176 HPWL: 2975692356
[INFO GPL-0023] Placement target density: 0.3158
[INFO GPL-0024] Movable insts average area: 1.683 um^2
[INFO GPL-0025] Ideal bin area: 5.330 um^2
[INFO GPL-0026] Ideal bin count: 84584
[INFO GPL-0027] Total bin area: 450857.232 um^2
[INFO GPL-0028] Bin count (X, Y): 256 , 256
[INFO GPL-0029] Bin size (W * H): 3.046 * 2.259 um
[INFO GPL-0030] Number of bins: 65536
[INFO GPL-0007] Execute nesterov global placement.
[INFO GPL-0031] HPWL: Half-Perimeter Wirelength
Iteration | Overflow | HPWL (um) | HPWL(%) | Penalty | Group
---------------------------------------------------------------
0 | 0.9158 | 2.258395e+09 | +0.00% | 2.23e-14 |
10 | 0.8071 | 2.517263e+09 | +11.46% | 3.47e-14 |
20 | 0.7893 | 2.526681e+09 | +0.37% | 5.64e-14 |
30 | 0.7950 | 2.541950e+09 | +0.60% | 9.17e-14 |
40 | 0.7952 | 2.549240e+09 | +0.29% | 1.49e-13 |
50 | 0.7905 | 2.547595e+09 | -0.06% | 2.43e-13 |
60 | 0.7856 | 2.541074e+09 | -0.26% | 3.96e-13 |
[INFO GPL-0100] Timing-driven iteration 1/5, virtual: true.
[INFO GPL-0101] Iter: 63, overflow: 0.785, keep resizer changes at: 0, HPWL: 2539599746
Iteration | Area | Resized | Buffers | Nets repaired | Remaining
---------------------------------------------------------------------
0 | +0.0% | 0 | 0 | 0 | 35281
final | +9.1% | 19170 | 818 | 6447 | 0
---------------------------------------------------------------------
[INFO RSZ-0034] Found 6431 slew violations.
[INFO RSZ-0036] Found 107 capacitance violations.
[INFO RSZ-0037] Found 7 long wires.
[INFO RSZ-0039] Resized 19170 instances.
[INFO RSZ-0038] Inserted 818 buffers in 6447 nets.
Iter | Area | Removed | Inserted | Pins
| | Buffers | Buffers | Remaining
-------------------------------------------------------
0 | +0.0% | 0 | 0 | 32897
3200 | +0.1% | 11 | 252 | 29697
6400 | +0.2% | 103 | 424 | 26497
9600 | +0.2% | 151 | 587 | 23297
12800 | +0.2% | 160 | 609 | 20097
16000 | +0.2% | 328 | 801 | 16897
19200 | +0.2% | 344 | 837 | 13697
22400 | +0.3% | 655 | 1317 | 10497
25600 | +0.3% | 656 | 1416 | 7297
28800 | +0.3% | 706 | 1479 | 4097
32000 | +0.4% | 720 | 1884 | 897
final | +0.4% | 722 | 1887 | 0
-------------------------------------------------------
/usr/include/c++/13/bits/stl_vector.h:1128: std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](size_type) [with _Tp = odb::dbId<odb::_dbMTerm>; _Alloc = std::allocator<odb::dbId<odb::_dbMTerm> >; reference = odb::dbId<odb::_dbMTerm>&; size_type = long unsigned int]: Assertion '__n < this->size()' failed.
Signal 6 received
Stack trace:
0# 0x00005A065611A523 in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
1# 0x0000744606A45330 in /lib/x86_64-linux-gnu/libc.so.6
2# pthread_kill in /lib/x86_64-linux-gnu/libc.so.6
3# gsignal in /lib/x86_64-linux-gnu/libc.so.6
4# abort in /lib/x86_64-linux-gnu/libc.so.6
5# 0x0000744606EDF90D in /lib/x86_64-linux-gnu/libstdc++.so.6
6# 0x00005A0658AC040B in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
7# sta::dbNetwork::port(sta::Pin const*) const in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
8# sta::Network::libertyPort(sta::Pin const*) const in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
9# sta::dbNetwork::direction(sta::Pin const*) const in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
10# sta::Graph::pinVertices(sta::Pin const*, sta::Vertex*&, sta::Vertex*&) const in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
11# sta::Graph::makeWireEdge(sta::Pin const*, sta::Pin const*) in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
12# sta::Graph::makeWireEdgesToPin(sta::Pin const*) in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
13# sta::Sta::connectPinAfter(sta::Pin const*) in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
14# odb::dbITerm::connect(odb::dbNet*) in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
15# odb::dbJournal::undo_disconnectObject() in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
16# odb::dbJournal::undo() in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
17# odb::dbDatabase::undoEco(odb::dbBlock*) in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
18# rsz::Resizer::journalRestore() in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
19# rsz::Resizer::findResizeSlacks(bool) in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
20# gpl::TimingBase::executeTimingDriven(bool) in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
21# gpl::NesterovPlace::runTimingDriven(int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int, int&, long&, bool) in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
22# gpl::NesterovPlace::doNesterovPlace(int) in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
23# gpl::Replace::doNesterovPlace(int, int) in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
24# 0x00005A065625EEBB in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
25# TclNRRunCallbacks in /lib/x86_64-linux-gnu/libtcl8.6.so
26# 0x000074460BB1D6BC in /lib/x86_64-linux-gnu/libtcl8.6.so
27# Tcl_EvalEx in /lib/x86_64-linux-gnu/libtcl8.6.so
28# Tcl_Eval in /lib/x86_64-linux-gnu/libtcl8.6.so
29# sta::sourceTclFile(char const*, bool, bool, Tcl_Interp*) in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
30# 0x00005A0656119C8F in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
31# Tcl_MainEx in /lib/x86_64-linux-gnu/libtcl8.6.so
32# main in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
33# 0x0000744606A2A1CA in /lib/x86_64-linux-gnu/libc.so.6
34# __libc_start_main in /lib/x86_64-linux-gnu/libc.so.6
35# _start in /workspace/integrate-hier-fixes/OpenROAD-flow-scripts/tools/OpenROAD/build/src/openroad
Command terminated by signal 6
Elapsed time: 0:59.16[h:]min:sec. CPU time: user 2222.69 sys 91.91 (3912%). Peak memory: 344836KB.Screenshots
No response
Additional Context
No response