-
Notifications
You must be signed in to change notification settings - Fork 446
Remove per-layer bounding box #3785
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
Changes from 17 commits
Commits
Show all changes
21 commits
Select commit
Hold shift + click to select a range
3aa6cf2
Remove per-layer bounding box support from NetCostHandler
soheilshahrouz f4bdcae
Remove --place_bounding_box_mode option and cube_bb placement context…
soheilshahrouz a175ce1
Remove unused inter_layer_connections_limited_to_opin helper
soheilshahrouz 81e54f2
Remove nightly tasks that set --place_bounding_box_mode
soheilshahrouz 171ca33
Remove --place_bounding_box_mode from command line documentation
soheilshahrouz 9807cd0
Make get_chanxy_cost_fac_ a non-template function
soheilshahrouz aa62100
make format
soheilshahrouz c64441b
Replace auto with explicit types in net_cost_handler.cpp
soheilshahrouz 0e2260b
Mark vtr::Range accessors noexcept
soheilshahrouz 7396448
Add Netlist::non_ignored_nets() view
soheilshahrouz c9164c4
Use Netlist::non_ignored_nets() in NetCostHandler
soheilshahrouz 2243436
Keep vtr::Range::empty() non-const
soheilshahrouz 2f6404e
Merge branch 'master' into remove_per_layer_bb
soheilshahrouz df2f086
Remove unused per-layer sink pin counts from NetCostHandler
soheilshahrouz f5a7dba
Const-qualify route tree iterator comparisons and make vtr::Range::em…
soheilshahrouz cafae92
Mark vtr::Range as a borrowed range so temporaries can be piped into …
soheilshahrouz f8fb902
Let blifexplorer inherit C++20 from the root CMakeLists
soheilshahrouz 663b253
Remove unused MAX_NUM_LAYERS constant and its layer count assertion
soheilshahrouz 828e124
Update 3d_cb_titan_other_auto_bb golden results for cube bounding box…
soheilshahrouz 3a02a43
Drop the auto_bb suffix from the 3D titan_other nightly task names
soheilshahrouz c800558
Merge branch 'master' into remove_per_layer_bb
soheilshahrouz File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm 90% sure this is the reason behind the performance regression. the views library, in particular views::filter has terrible performance compared to raw loops. No fundamental reason other than that current compilers are just not good enough yet and they emit awful assembly.
https://lemire.me/blog/2025/10/05/stdranges-may-not-deliver-the-performance-that-you-expect/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
non_ignored_nets()is only called in periodic paths where the cost is computed from scratch, not in a per-swap hot loop. The article's benchmarks uses chained views with lazy evaluation. Here, we have a single filter.