Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/gpl/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ global_placement
| Switch Name | Description |
| ----- | ----- |
| `-timing_driven_net_reweight_overflow` | Set overflow threshold for timing-driven net reweighting. Allowed value is a Tcl list of integers where each number is `[0, 100]`. Default values are [79, 64, 49, 29, 21, 15] |
| `-timing_driven_net_weight_max` | Set the multiplier for the most timing-critical nets. The default value is `1.9`, and the allowed values are floats. |
| `-timing_driven_net_weight_max` | Set the multiplier for the most timing-critical nets. The default value is `5`, and the allowed values are floats. |
| `-timing_driven_nets_percentage` | Set the reweighted percentage of nets in timing-driven mode. The default value is 10. Allowed values are floats `[0, 100]`. |
| `-keep_resize_below_overflow` | When the overflow is below the set value, timing-driven iterations will retain the resizer changes instead of reverting them. The default value is 0.3. Allowed values are floats `[0, 1]`. |

Expand Down
2 changes: 1 addition & 1 deletion src/gpl/include/gpl/Replace.h
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,7 @@ class Replace

int routabilityMaxInflationIter_ = 4;

float timingNetWeightMax_ = 1.9;
float timingNetWeightMax_ = 5;
float keepResizeBelowOverflow_ = 0.3;

bool timingDrivenMode_ = true;
Expand Down
2 changes: 1 addition & 1 deletion src/gpl/src/replace.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ void Replace::reset()

timingNetWeightOverflows_.clear();
timingNetWeightOverflows_.shrink_to_fit();
timingNetWeightMax_ = 1.9;
timingNetWeightMax_ = 5;

gui_debug_ = false;
gui_debug_pause_iterations_ = 10;
Expand Down
2 changes: 1 addition & 1 deletion src/gpl/src/timingBase.h
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ class TimingBase

std::vector<int> timingNetWeightOverflow_;
std::vector<int> timingOverflowChk_;
float net_weight_max_ = 1.9;
float net_weight_max_ = 5;
void initTimingOverflowChk();
};

Expand Down
1 change: 1 addition & 0 deletions src/gpl/test/Testing/Temporary/CTestCostData.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
---
3 changes: 3 additions & 0 deletions src/gpl/test/Testing/Temporary/LastTest.log
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Start testing: Mar 19 22:01 UTC
----------------------------------------------------------
End testing: Mar 19 22:01 UTC
584 changes: 292 additions & 292 deletions src/gpl/test/simple01-td-tune.defok

Large diffs are not rendered by default.

110 changes: 55 additions & 55 deletions src/gpl/test/simple01-td-tune.ok
Original file line number Diff line number Diff line change
Expand Up @@ -47,39 +47,40 @@ Iteration | Area | Resized | Buffers | Nets repaired | Remaining
[INFO RSZ-0039] Resized 75 instances.
[INFO GPL-0106] Timing-driven: worst slack 1.41e-09
[INFO GPL-0103] Timing-driven: weighted 35 nets.
[NesterovSolve] Iter: 10 overflow: 0.728 HPWL: 4021066
[NesterovSolve] Iter: 20 overflow: 0.730 HPWL: 4007578
[NesterovSolve] Iter: 30 overflow: 0.731 HPWL: 4003791
[NesterovSolve] Iter: 40 overflow: 0.731 HPWL: 4003983
[NesterovSolve] Iter: 50 overflow: 0.731 HPWL: 4004492
[NesterovSolve] Iter: 60 overflow: 0.731 HPWL: 4004740
[NesterovSolve] Iter: 70 overflow: 0.731 HPWL: 4004975
[NesterovSolve] Iter: 80 overflow: 0.731 HPWL: 4005361
[NesterovSolve] Iter: 90 overflow: 0.730 HPWL: 4005937
[NesterovSolve] Iter: 100 overflow: 0.730 HPWL: 4007220
[NesterovSolve] Iter: 110 overflow: 0.730 HPWL: 4009283
[NesterovSolve] Iter: 120 overflow: 0.729 HPWL: 4012585
[NesterovSolve] Iter: 130 overflow: 0.727 HPWL: 4017579
[NesterovSolve] Iter: 140 overflow: 0.725 HPWL: 4024943
[NesterovSolve] Iter: 150 overflow: 0.721 HPWL: 4035246
[NesterovSolve] Iter: 160 overflow: 0.714 HPWL: 4050680
[NesterovSolve] Iter: 170 overflow: 0.704 HPWL: 4073172
[NesterovSolve] Iter: 10 overflow: 0.772 HPWL: 3888374
[NesterovSolve] Iter: 20 overflow: 0.763 HPWL: 3916812
[NesterovSolve] Iter: 30 overflow: 0.761 HPWL: 3910980
[NesterovSolve] Iter: 40 overflow: 0.762 HPWL: 3905892
[NesterovSolve] Iter: 50 overflow: 0.762 HPWL: 3904910
[NesterovSolve] Iter: 60 overflow: 0.761 HPWL: 3906073
[NesterovSolve] Iter: 70 overflow: 0.761 HPWL: 3906285
[NesterovSolve] Iter: 80 overflow: 0.761 HPWL: 3906657
[NesterovSolve] Iter: 90 overflow: 0.761 HPWL: 3907884
[NesterovSolve] Iter: 100 overflow: 0.761 HPWL: 3909257
[NesterovSolve] Iter: 110 overflow: 0.760 HPWL: 3911317
[NesterovSolve] Iter: 120 overflow: 0.759 HPWL: 3914680
[NesterovSolve] Iter: 130 overflow: 0.758 HPWL: 3920183
[NesterovSolve] Iter: 140 overflow: 0.756 HPWL: 3929337
[NesterovSolve] Iter: 150 overflow: 0.752 HPWL: 3943670
[NesterovSolve] Iter: 160 overflow: 0.746 HPWL: 3964904
[NesterovSolve] Iter: 170 overflow: 0.735 HPWL: 3995840
[NesterovSolve] Iter: 180 overflow: 0.722 HPWL: 4038609
[NesterovSolve] Iter: 190 overflow: 0.703 HPWL: 4097263
[INFO GPL-0100] Timing-driven iteration 2/7, virtual: true.
[INFO GPL-0101] Iter: 176, overflow: 0.694, keep rsz at: 0.3, HPWL: 4089801
[INFO GPL-0101] Iter: 194, overflow: 0.694, keep rsz at: 0.3, HPWL: 4123042
Iteration | Area | Resized | Buffers | Nets repaired | Remaining
---------------------------------------------------------------------
0 | +0.0% | 0 | 0 | 0 | 356
final | -12.7% | 76 | 0 | 0 | 0
final | -12.6% | 76 | 0 | 0 | 0
---------------------------------------------------------------------
[INFO RSZ-0039] Resized 76 instances.
[INFO GPL-0106] Timing-driven: worst slack 1.4e-09
[INFO GPL-0106] Timing-driven: worst slack 1.41e-09
[INFO GPL-0103] Timing-driven: weighted 35 nets.
[NesterovSolve] Iter: 180 overflow: 0.688 HPWL: 4103758
[NesterovSolve] Iter: 190 overflow: 0.671 HPWL: 4143305
[NesterovSolve] Iter: 200 overflow: 0.649 HPWL: 4195861
[NesterovSolve] Iter: 210 overflow: 0.619 HPWL: 4257333
[NesterovSolve] Iter: 200 overflow: 0.675 HPWL: 4168674
[NesterovSolve] Iter: 210 overflow: 0.644 HPWL: 4239797
[NesterovSolve] Iter: 220 overflow: 0.613 HPWL: 4330517
[INFO GPL-0100] Timing-driven iteration 3/7, virtual: true.
[INFO GPL-0101] Iter: 218, overflow: 0.592, keep rsz at: 0.3, HPWL: 4309782
[INFO GPL-0101] Iter: 224, overflow: 0.595, keep rsz at: 0.3, HPWL: 4370091
Iteration | Area | Resized | Buffers | Nets repaired | Remaining
---------------------------------------------------------------------
0 | +0.0% | 0 | 0 | 0 | 356
Expand All @@ -88,11 +89,10 @@ Iteration | Area | Resized | Buffers | Nets repaired | Remaining
[INFO RSZ-0039] Resized 76 instances.
[INFO GPL-0106] Timing-driven: worst slack 1.4e-09
[INFO GPL-0103] Timing-driven: weighted 35 nets.
[NesterovSolve] Iter: 220 overflow: 0.584 HPWL: 4324409
[NesterovSolve] Iter: 230 overflow: 0.542 HPWL: 4388185
[NesterovSolve] Iter: 240 overflow: 0.498 HPWL: 4444123
[NesterovSolve] Iter: 230 overflow: 0.568 HPWL: 4421087
[NesterovSolve] Iter: 240 overflow: 0.525 HPWL: 4500705
[INFO GPL-0100] Timing-driven iteration 4/7, virtual: true.
[INFO GPL-0101] Iter: 241, overflow: 0.493, keep rsz at: 0.3, HPWL: 4445843
[INFO GPL-0101] Iter: 247, overflow: 0.491, keep rsz at: 0.3, HPWL: 4573895
Iteration | Area | Resized | Buffers | Nets repaired | Remaining
---------------------------------------------------------------------
0 | +0.0% | 0 | 0 | 0 | 356
Expand All @@ -101,58 +101,58 @@ Iteration | Area | Resized | Buffers | Nets repaired | Remaining
[INFO RSZ-0039] Resized 76 instances.
[INFO GPL-0106] Timing-driven: worst slack 1.4e-09
[INFO GPL-0103] Timing-driven: weighted 35 nets.
[NesterovSolve] Iter: 250 overflow: 0.439 HPWL: 4444359
[NesterovSolve] Iter: 250 overflow: 0.476 HPWL: 4593620
[NesterovSolve] Iter: 260 overflow: 0.422 HPWL: 4639152
[INFO GPL-0100] Timing-driven iteration 5/7, virtual: true.
[INFO GPL-0101] Iter: 258, overflow: 0.392, keep rsz at: 0.3, HPWL: 4432042
[INFO GPL-0101] Iter: 265, overflow: 0.393, keep rsz at: 0.3, HPWL: 4653629
Iteration | Area | Resized | Buffers | Nets repaired | Remaining
---------------------------------------------------------------------
0 | +0.0% | 0 | 0 | 0 | 356
final | -12.6% | 76 | 0 | 0 | 0
---------------------------------------------------------------------
[INFO RSZ-0039] Resized 76 instances.
[INFO GPL-0106] Timing-driven: worst slack 1.4e-09
[INFO GPL-0103] Timing-driven: weighted 34 nets.
[NesterovSolve] Iter: 260 overflow: 0.385 HPWL: 4433170
[NesterovSolve] Iter: 270 overflow: 0.334 HPWL: 4463515
[NesterovSolve] Iter: 280 overflow: 0.301 HPWL: 4461794
[INFO GPL-0103] Timing-driven: weighted 35 nets.
[NesterovSolve] Iter: 270 overflow: 0.365 HPWL: 4678508
[NesterovSolve] Iter: 280 overflow: 0.313 HPWL: 4689400
[INFO GPL-0100] Timing-driven iteration 6/7, virtual: false.
[INFO GPL-0101] Iter: 283, overflow: 0.294, keep rsz at: 0.3, HPWL: 4481604
[INFO GPL-0101] Iter: 284, overflow: 0.288, keep rsz at: 0.3, HPWL: 4702543
Iteration | Area | Resized | Buffers | Nets repaired | Remaining
---------------------------------------------------------------------
0 | +0.0% | 0 | 0 | 0 | 356
final | -12.6% | 76 | 0 | 0 | 0
---------------------------------------------------------------------
[INFO RSZ-0039] Resized 76 instances.
[INFO GPL-0106] Timing-driven: worst slack 1.39e-09
[INFO GPL-0103] Timing-driven: weighted 35 nets.
[INFO GPL-0107] Timing-driven: repair_design delta area: -69.958 um^2 (-12.64%)
[INFO GPL-0106] Timing-driven: worst slack 1.4e-09
[INFO GPL-0103] Timing-driven: weighted 34 nets.
[INFO GPL-0107] Timing-driven: repair_design delta area: -69.692 um^2 (-12.60%)
[INFO GPL-0108] Timing-driven: repair_design, gpl cells created: 0 (+0.00%)
[INFO GPL-0109] Timing-driven: inserted buffers as reported by repair_design: 0
[INFO GPL-0110] Timing-driven: new target density: 0.62665915
[NesterovSolve] Iter: 290 overflow: 0.309 HPWL: 2658180
[NesterovSolve] Iter: 300 overflow: 0.277 HPWL: 2600521
[NesterovSolve] Iter: 310 overflow: 0.240 HPWL: 2620506
[NesterovSolve] Iter: 320 overflow: 0.207 HPWL: 2630392
[INFO GPL-0110] Timing-driven: new target density: 0.62693805
[NesterovSolve] Iter: 290 overflow: 0.299 HPWL: 2899794
[NesterovSolve] Iter: 300 overflow: 0.290 HPWL: 3011545
[NesterovSolve] Iter: 310 overflow: 0.227 HPWL: 2948151
[INFO GPL-0100] Timing-driven iteration 7/7, virtual: false.
[INFO GPL-0101] Iter: 327, overflow: 0.192, keep rsz at: 0.3, HPWL: 2638573
[INFO GPL-0101] Iter: 318, overflow: 0.193, keep rsz at: 0.3, HPWL: 2973941
Iteration | Area | Resized | Buffers | Nets repaired | Remaining
---------------------------------------------------------------------
0 | +0.0% | 0 | 0 | 0 | 356
final | +1.0% | 43 | 1 | 1 | 0
final | +1.0% | 44 | 1 | 1 | 0
---------------------------------------------------------------------
[INFO RSZ-0036] Found 1 capacitance violations.
[INFO RSZ-0039] Resized 43 instances.
[INFO RSZ-0039] Resized 44 instances.
[INFO RSZ-0038] Inserted 1 buffers in 1 nets.
[INFO GPL-0106] Timing-driven: worst slack 1.4e-09
[INFO GPL-0103] Timing-driven: weighted 34 nets.
[INFO GPL-0107] Timing-driven: repair_design delta area: 5.054 um^2 (+1.05%)
[INFO GPL-0107] Timing-driven: repair_design delta area: 4.788 um^2 (+0.99%)
[INFO GPL-0108] Timing-driven: repair_design, gpl cells created: 1 (+0.00%)
[INFO GPL-0109] Timing-driven: inserted buffers as reported by repair_design: 1
[INFO GPL-0110] Timing-driven: new target density: 0.6319576
[NesterovSolve] Iter: 330 overflow: 0.179 HPWL: 2655230
[NesterovSolve] Iter: 340 overflow: 0.160 HPWL: 2675988
[NesterovSolve] Iter: 350 overflow: 0.131 HPWL: 2698520
[NesterovSolve] Iter: 360 overflow: 0.101 HPWL: 2724525
[NesterovSolve] Finished with Overflow: 0.098508
worst slack 1.39
[INFO GPL-0110] Timing-driven: new target density: 0.63195753
[NesterovSolve] Iter: 320 overflow: 0.188 HPWL: 3022250
[NesterovSolve] Iter: 330 overflow: 0.173 HPWL: 3031660
[NesterovSolve] Iter: 340 overflow: 0.147 HPWL: 3082839
[NesterovSolve] Iter: 350 overflow: 0.127 HPWL: 3095701
[NesterovSolve] Iter: 360 overflow: 0.106 HPWL: 3097717
[NesterovSolve] Finished with Overflow: 0.099247
worst slack 1.40
No differences found.
Loading