Skip to content

Update VTR 9 branch with faster check_non_configurable_edges #2874

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

Merged
merged 1 commit into from
Feb 4, 2025

Conversation

soheilshahrouz
Copy link
Contributor

We previously checked every node in a route tree against all non-configurable RR sets, leading to O(n²) complexity. This PR limits checks to RR sets within the route tree, reducing complexity to O(n). As a result, the check_all_non_configurable_edges() function's execution time dropped from 2045s to 1.1s on the bgm benchmark in a 7-series architecture.

@github-actions github-actions bot added VPR VPR FPGA Placement & Routing Tool lang-cpp C/C++ code labels Jan 31, 2025
@AlexandreSinger
Copy link
Contributor

The checks that are not passing will never complete since they are only on the Master branch. @vaughnbetz Who should merge this?

@vaughnbetz vaughnbetz merged commit d494127 into v9.0 Feb 4, 2025
37 checks passed
@vaughnbetz vaughnbetz deleted the vtr9_faster_check_non_configurable_edges branch February 4, 2025 16:58
@vaughnbetz
Copy link
Contributor

Thanks for the reminder; merging.

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.

3 participants