-
Notifications
You must be signed in to change notification settings - Fork 397
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
add detailed routing stage parameter to reclustering utils #2584
add detailed routing stage parameter to reclustering utils #2584
Conversation
abf42b9
to
abc1c1b
Compare
@vaughnbetz could you please review? Subsequent legalizer PRs depend on this. |
Re: QoR. This option is key to speeding up the legalizer, since it allows it to use pin counting legality checking instead of runtime intensive intra-cluster routing. I do not think it has any impact on the rest of VPR, since it only impacts re-clustering API functions (which are not currently called anywhere else); for those functions, it only adds an optional const int& parameter. |
It looks like the prior PR I merged on (another one of your PRs) resulted in a conflict with this one. Some line of code got changed twice so git can't figure out which one to use; they are likely the same though as both PRs are closely related. @KA7E : you'll have to pull and resolve the conflict (it should be an easy one) before this can be merged. It's probably best to have one PR for a function (or a full file) that you're changing at a time so you don't get self conflicts like this. Smaller PRs are easier to merge, but not if they overlap on the affected code, and PRs with up to a couple of hundred lines of code would still be considered pretty small and aren't very hard to review. Some PRs will also wind up being bigger than that since they're larger changes that are coupled together. |
Added detailed routing stage parameter to pack_mol_in_existing_cluster and start_new_cluster_for_mol; both functions pass this parameter to try_pack_molecule.
Description
Related Issue
Motivation and Context
Without this option, the legalizer runtime is untenable.
How Has This Been Tested?
Types of changes
Checklist: