Comments (4)
The acc_cost
and occ_
members appear to not be used in the maze expansion (against what the comment above this class is saying). We should separate out the per-iteration route info from the maze-expansion route info. Beyond organization, this would reduce the amount of data being stored in the cache during maze expansion and also reduce the number of global variables the maze expansion touches.
This would require creating a new struct to hold this "per-iteration" routing info and would require modifying the RoutingContext to also hold this information:
struct RoutingContext : public Context {
// ...
vtr::vector<RRNodeId, t_rr_node_route_inf> rr_node_route_inf; /* [0..device_ctx.num_rr_nodes-1] */
// ...
};
Perhaps the new type could be named rr_node_per_iter_route_inf
, but I am concerned the name might be too long.
@vaughnbetz What do you think about this change?
from vtr-verilog-to-routing.
@AlexandreSinger As discussed: The occ_
field is read in the connection router (maze expansion) to calculate the congestion cost (Link)
from vtr-verilog-to-routing.
acc_cost is also read during the connection router (maze expansion); it just isn't written during maze expansion.
from vtr-verilog-to-routing.
The PR resolving this issue has been merged into master. Closing this issue. Since the occ and acc_cost are read during the wave expansion, it should be fine to keep them in this struct.
from vtr-verilog-to-routing.
Related Issues (20)
- Designs with many different wire types fail at certain channel widths with an arithmetic exception
- Add wire length attribute to RR graph output XML when using "--write_rr_graph" option
- CI Test Failures on Master HOT 3
- Failed to build target 'libarchfpga' HOT 1
- Disabling CAPNPROTO Crashes Build
- clang/LLVM-17 build HOT 4
- Remove Warnings in VTR CI Builds HOT 1
- Parmys fails to properly handle multipliers with unequal input widths HOT 5
- Primitive input pin permutability should be more general HOT 1
- 3d switch block code, architecture files & reg tests
- [Documentation] Missing Documentation on `--router_profiler_astar_fac` HOT 7
- Turn on faster place delay matrix loader by default
- vpr placement algorithm HOT 2
- Giant distance from initial placing and routing solution to a better one VTR could have found.
- Document how to use Perf for profiling with vpr
- VTR Quick Start Guide Inconsistencies
- Change ODIN II Quick Start Walkthrough to Parmys HOT 1
- Overuse report with flat routing
- Remove Uses of std::iterator from VTR Libraries HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vtr-verilog-to-routing.