google-research / google-research/circuit_training
How to confirm the parameters?
- Dominant language
- Python
- Stars
- 1.7k
- Forks
- 273
- PR merge metrics
- No merged PRs in 30d
Description
The code is copy from circuit_training/environment/placement_utils.py. How can I change these parameters to match different size boards and micros.
@gin.configurable
def create_placement_cost(
netlist_file: str,
init_placement: Optional[str] = None,
overlap_threshold: float = 4e-3,
congestion_smooth_range: int = 5,
# TODO(b/211039937): Increase macro spacing to 3-5um, after matching the
# performance for Ariane.
macro_macro_x_spacing: float = 0.1,
macro_macro_y_spacing: float = 0.1,
boundary_check: bool = False,
**horizontal_routes_per_micron: float = 70.33,
vertical_routes_per_micron: float = 74.51,
macro_horizontal_routing_allocation: float = 51.79,
macro_vertical_routing_allocation: float = 51.79,**
routes_per_congestion_grid: int = 1000,
blockages: Optional[List[List[float]]] = None,
fixed_macro_names_regex: Optional[List[str]] = None,
legacy_congestion_grid: bool = False,
) -> plc_client.PlacementCost:
"""Creates a placement cost object.
Contributor guide
Research direction
Start with circuit_training/environment/placement_utils.py and the create_placement_cost function shown in the issue. Document what the listed parameters control and how to choose them for different board and micro sizes; done means a newcomer can adjust the configuration without needing to infer the meaning of each value.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- embedded-iot
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100