-
Mock abstracts is where cts and route is skipped such that an abstract can be used to more quickly investigate higher level floorplanning, placement and routing. Today this includes skipping cts_fill, which saves size and speeds things up. I was wondering if there are any further easy optimizations possible? After
OpenROAD-flow-scripts/flow/Makefile Line 681 in 51cbbec There doesn't appear to be any stages that can be safely skipped without creating problems later on. The PDN stage seems important for a mock abstract as the PDN can interfere at a higher level... global placement is necessary to get the pin layout optimized. Perhaps 3_4_place_resized.odb could be skipped to save some space? Could 3_5_place_dp.odb be skipped to save time? When I say size, of course symbolic links could be used, but really care about execution speed of e.g. deltaDebug.py or OpenROAD when parsing the files. $ du -hs results/asap7/FooBar/base/*.odb
93M results/asap7/FooBar/base/2_1_floorplan.odb
94M results/asap7/FooBar/base/2_2_floorplan_io.odb
94M results/asap7/FooBar/base/2_3_floorplan_tdms.odb
94M results/asap7/FooBar/base/2_4_floorplan_macro.odb
95M results/asap7/FooBar/base/2_5_floorplan_tapcell.odb
107M results/asap7/FooBar/base/2_6_floorplan_pdn.odb
107M results/asap7/FooBar/base/2_floorplan.odb
107M results/asap7/FooBar/base/3_1_place_gp_skip_io.odb
107M results/asap7/FooBar/base/3_2_place_iop.odb
178M results/asap7/FooBar/base/3_3_place_gp.odb
184M results/asap7/FooBar/base/3_4_place_resized.odb
184M results/asap7/FooBar/base/3_5_place_dp.odb
184M results/asap7/FooBar/base/3_place.odb
184M results/asap7/FooBar/base/4_1_cts.odb
184M results/asap7/FooBar/base/4_2_cts_fillcell.odb
184M results/asap7/FooBar/base/4_cts.odb
184M results/asap7/FooBar/base/5_1_grt.odb
184M results/asap7/FooBar/base/5_2_route.odb
184M results/asap7/FooBar/base/5_route.odb
184M results/asap7/FooBar/base/6_1_fill.odb
184M results/asap7/FooBar/base/6_final.odb |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Since we use 'write_abstract_lef -bloat_occupied_layers' today only a single shape is required to block an entire layer. We could skip PDN and either
If in the future we drop -bloat_occupied_layers then this wouldn't apply. Dropping resizer would affect the timing model generated. Maybe that doesn't matter given the other simplifications. |
Beta Was this translation helpful? Give feedback.
Since we use 'write_abstract_lef -bloat_occupied_layers' today only a single shape is required to block an entire layer. We could skip PDN and either
If in the future we drop -bloat_occupied_layers then this wouldn't apply.
Dropping resizer would affect the timing model generated. Maybe that doesn't matter given the other simplifications.