The-OpenROAD-Project / OpenROAD

OpenROAD's unified application implementing an RTL-to-GDS Flow. Documentation at https://openroad.readthedocs.io/en/latest/
https://theopenroadproject.org/
BSD 3-Clause "New" or "Revised" License
1.58k stars 551 forks source link

Speed up report_metrics in CTS #6030

Open oharboe opened 4 days ago

oharboe commented 4 days ago

Description

I would like to use the .json file statistics instead of trying to write scripts to extract the same myself. I'm looking for WNS, TNS and running time for each invocation of OpenROAD aka "step". However, metrics increases the running time by at least 3x as of 3_4_place_resized.log.

Example:

untar https://drive.google.com/file/d/1kSGyQaVFeZ94_s95Ce2tG80UHuYcR6fi/view?usp=sharing

./run-me-BoomTile-asap7-3.sh

setting SKIP_REPORT_METRICS=0 takes down running time from approximately 3000 to 600 seconds

Suggested Solution

Make it faster

Additional Context

No response

maliberty commented 4 days ago

Would you break down the runtime difference by step?

oharboe commented 4 days ago

Would you break down the runtime difference by step?

It is all in cts, in the included example, which is one "step", right?

For other examples, you can look at the difference between variant 2&3 https://github.com/The-OpenROAD-Project/megaboom/pull/176.

3_4_place_resized.log, 3_5_place_dp.log, 4_1_cts.log are all exhibiting a 3x+ longer time in report_metrics than running time for the steps.