Skip to content

rsz: In repairNet, update parasitics only for net driver - #12099

Merged
jhkim-pii merged 1 commit into
The-OpenROAD-Project:masterfrom
mikesinouye:est
Nov 3, 2026
Merged

jhkim-pii merged 1 commit into
The-OpenROAD-Project:masterfrom
mikesinouye:est

Conversation

@mikesinouye

Copy link
Copy Markdown
Contributor

Summary

As a runtime optimization, within RepairDesign::repairNet(), only update parasitics and delays for the net's driver vertex. In the current code, sta_->findDelays(drvr) runs Sta::delayCalcPreamble() which runs full levelization and delay calc across all dirty nets, which is not necessary. repairDesign() performs a final call to update parasitics.

estimate_parasitics_->updateParasitics();

Type of Change

  • Refactoring

Impact

Runtime improvement for large designs.

Verification

  • I have verified that the local build succeeds (./etc/Build.sh).
  • I have run the relevant tests and they pass.
  • My code follows the repository's formatting guidelines.
  • I have signed my commits (DCO).

Signed-off-by: Mike Inouye <mikeinouye@google.com>
@mikesinouye
mikesinouye requested a review from a team as a code owner November 2, 2026 23:59
@mikesinouye
mikesinouye requested a review from jhkim-pii November 2, 2026 23:59
@github-actions github-actions Bot added the size/S label Nov 2, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates src/rsz/src/RepairDesign.cc to replace global parasitic updates and delay calculations with more targeted calls. Specifically, estimate_parasitics_->updateParasitics() is replaced with estimate_parasitics_->ensureWireParasitic(drvr_pin, net), and sta_->findDelays(drvr) is replaced with graph_delay_calc_->findDelays(drvr) across multiple blocks in RepairDesign::repairNet. I have no feedback to provide.

@jhkim-pii

Copy link
Copy Markdown
Contributor

No QoR impact?

@mikesinouye

Copy link
Copy Markdown
Contributor Author

None of our designs showed a diff, I think it may be possible in an edge case when the values align exactly but I am not sure it is likely to happen in practice.

@jhkim-pii

Copy link
Copy Markdown
Contributor

Ok. Thank you for the enhancement!

@jhkim-pii
jhkim-pii merged commit 8c28786 into The-OpenROAD-Project:master Nov 3, 2026
21 checks passed
@mikesinouye

Copy link
Copy Markdown
Contributor Author

Thank you for the quick review!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants