-
Notifications
You must be signed in to change notification settings - Fork 414
Improved parallel router: add NetlistRouter #2411
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
It looks like there's a single |
|
Nightly koios, extracted from GH runners. No .xlsx file -- had to manually get the data from the artifacts because it looks like the parser isn't getting the CPD & runtime values. Koios runs are fixed chan width, so they should be parsed by something like vpr_titan.txt, not vpr_standard.txt.
|
VTR benchmarks extracted from GH runners: vtr_gh_t1.xlsx
|
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.
Commenting changes and moving functions around.
QoR looks good; once these updates are made it's good to merge.
27051c2
to
1bcace2
Compare
@duck2: is this ready to merge?
|
@soheilshahrouz : the unit test failure is a NoC test that removes and adds a link (it seg faults). It's hard to see how Fahri's code could cause that so I suspect it's a pre-existing weakness. Can you take a look? |
Is this test failure different than the one mentioned in the link below? |
Not sure. @ducks2? |
also: clip high-fanout BBs by original BBs to avoid data races in the parallel case
This adds a common
NetlistRouter
interface for the serial and parallel routers and removes the code duplication betweenroute_timing.cpp
androute_parallel.cpp
.route_timing.*
is divided into three files:route_net.*
(net routing utils)route_utils.cpp
(top-level routing utils)route.cpp
(only the top-levelroute()
)Unlike
try_timing_driven_route_tmpl()
,route()
no longer manages aConnectionRouter
, so it doesn't need to be templated.ConnectionRouter
no longer retries with a full-device bounding box by itself. The "retry with full BB" flag is bubbled up and it's up to theNetlistRouter
to retry the connection/net properly.Will experiment with high-fanout behavior in
ConnectionRouter
and whether clipping HF BBs hurts QoR in the serial case. It's mandatory in the parallel case, so would be nice if it doesn't affect QoR and we won't have to add branches there.How Has This Been Tested?
Types of changes
Checklist: