Skip to content

[AP][GP] Added Post-Global Placement Wirelength Estimation #3141

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

AlexandreSinger
Copy link
Contributor

@AlexandreSinger AlexandreSinger commented Jun 15, 2025

After a recent change where we are ignoring high-fanout nets in the global placer, this caused the high-fanout nets to also be ignored during wirlength estimation in the global placement.

This wirelength is used in the global placer to decide when to stop and to print logs to the user. I would like to continue to ignore these nets when computing the objective of the global placer since it is the wirelength of the nets which are not ignored; however, for the user, I would like them to see a more accurate estimation of the wirelength.

Created a function which tries to estimate the wirelength of the global placement solution assuming all blocks can be placed exactly where their flat placement wants them to be placed.

See #3137 for context.

After a recent change where we are ignoring high-fanout nets in the
global placer, this caused the high-fanout nets to also be ignored
during wirlength estimation in the global placement.

This wirelength is used in the global placer to decide when to stop and
to print logs to the user. I would like to continue to ignore these nets
when computing the objective of the global placer since it is the
wirelength of the nets which are not ignored; however, for the user, I
would like them to see a more accurate estimation of the wirelength.

Created a function which tries to estimate the wirelength of the global
placement solution assuming all blocks can be placed exactly where there
flat placement wants them to be placed.
@github-actions github-actions bot added VPR VPR FPGA Placement & Routing Tool lang-cpp C/C++ code labels Jun 15, 2025
@haydar-c
Copy link
Contributor

Thank you @AlexandreSinger for adding this! I like the distinction between the objective HPWL and estimated wire length. LGTM!

@AlexandreSinger AlexandreSinger merged commit dc299f9 into verilog-to-routing:master Jun 17, 2025
33 checks passed
@AlexandreSinger AlexandreSinger deleted the feature-ap-wl-estimation branch June 17, 2025 13:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lang-cpp C/C++ code VPR VPR FPGA Placement & Routing Tool
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants