Skip to content

Change QoR parsing configs to use the fixed channel width variant #3138

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 5 commits into from
Jun 17, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions .github/workflows/nightly_test_manual.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,3 +114,23 @@ jobs:
vtr_flow/**/*.log
vtr_flow/**/vpr.out
vtr_flow/**/parse_results*.txt

- name: Generate golden results
if: success() || failure()
run: |
source .venv/bin/activate
./run_reg_test.py vtr_reg_nightly_test1 -create_golden
./run_reg_test.py vtr_reg_nightly_test2 -create_golden
./run_reg_test.py vtr_reg_nightly_test3 -create_golden
./run_reg_test.py vtr_reg_nightly_test4 -create_golden
./run_reg_test.py vtr_reg_nightly_test5 -create_golden
./run_reg_test.py vtr_reg_nightly_test6 -create_golden
./run_reg_test.py vtr_reg_nightly_test7 -create_golden

- name: Upload golden results
if: success() || failure()
uses: actions/upload-artifact@v4
with:
name: nightly_tests_golden
path: |
vtr_flow/**/vtr_reg_nightly*/**/golden_results.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ routed_wirelength;RangeAbs(0.50,1.50,5)
#Area metrics
logic_block_area_total;Range(0.5,1.6)
logic_block_area_used;Range(0.5,1.6)
min_chan_width_routing_area_total;Range(0.5,1.6)
min_chan_width_routing_area_per_tile;Range(0.5,1.6)
routing_area_total;Range(0.5,1.6)
routing_area_per_tile;Range(0.5,1.6)

#Run-time metrics
crit_path_route_time;RangeAbs(0.10,10.0,2)
Expand Down
21 changes: 12 additions & 9 deletions vtr_flow/parse/qor_config/qor_vpr_xilinx.txt
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
vpr_status;output.txt;vpr_status=(.*)
total_wirelength;vpr.out;\s*Total wirelength: (\d+)
#total_wirelength_(mcw);vpr.out;Total wirelength:\s*(\d+)
#total_wirelength_(1.3mcw);vpr.crit_path.out;Total wirelength:\s*(\d+)

total_runtime;vpr.out;The entire flow of VPR took (.*) seconds
#pack_time;vpr.out;Packing took (.*) seconds
#place_time;vpr.out;Placement took (.*) seconds
#route_time;vpr.out;Routing took (.*) seconds
#num_pre_packed_nets;vpr.out;Total Nets: (\d+)
#num_post_packed_nets;vpr.out;Netlist num_nets:\s*(\d+)
crit_path_delay;vpr.crit_path.out;Final critical path: (.*) ns
pack_time;vpr.out;\s*Packing took (.*) seconds
place_time;vpr.out;\s*Placement took (.*) seconds
route_time;vpr.out;\s*Routing took (.*) seconds .*

num_pre_packed_nets;vpr.out;Total Nets: (\d+)
num_post_packed_nets;vpr.out;Netlist num_nets:\s*(\d+)

num_pre_packed_blocks;vpr.out;\s+Blocks\s*:\s*(\d+)
num_post_packed_blocks;vpr.out;Netlist num_blocks:\s*(\d+)

total_wirelength;vpr.out;\s*Total wirelength: (\d+)
critical_path_delay;vpr.out;Final critical path delay \(least slack\): (.*) ns
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,12 @@ additional_files_list_add=--read_router_lookahead,rr_graph_xc7a50t_test.lookahea
additional_files_list_add=--read_placement_delay_lookup,rr_graph_xc7a50t_test.place_delay.bin

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

script_params=-starting_stage vpr --max_router_iterations 500 --routing_failure_predictor off --router_high_fanout_threshold 1000 --constant_net_method route --route_chan_width 500 --router_heap bucket --clock_modeling route --place_delta_delay_matrix_calculation_method dijkstra --place_delay_model delta_override --router_lookahead extended_map --check_route quick --strict_checks off --allow_dangling_combinational_nodes on --disable_errors check_unbuffered_edges:check_route --congested_routing_iteration_threshold 0.8 --incremental_reroute_delay_ripup off --base_cost_type delay_normalized_length_bounded --bb_factor 10 --initial_pres_fac 4.0 --check_rr_graph off
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,12 @@ additional_files_list_add=--read_router_lookahead,rr_graph_xc7a50t_test.lookahea
additional_files_list_add=--read_placement_delay_lookup,rr_graph_xc7a50t_test.place_delay.bin

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

script_params=-starting_stage vpr --max_router_iterations 500 --routing_failure_predictor off --router_high_fanout_threshold 1000 --constant_net_method route --route_chan_width 500 --router_heap bucket --clock_modeling route --place_delta_delay_matrix_calculation_method dijkstra --place_delay_model delta_override --router_lookahead extended_map --check_route quick --strict_checks off --allow_dangling_combinational_nodes on --disable_errors check_unbuffered_edges:check_route --congested_routing_iteration_threshold 0.8 --incremental_reroute_delay_ripup off --base_cost_type delay_normalized_length_bounded --bb_factor 10 --initial_pres_fac 4.0 --check_rr_graph off
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ circuit_list_add=sha.v
arch_list_add=k6_frac_N10_40nm.xml

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

#Script parameters
script_params=--route_chan_width 200 --gen_post_synthesis_netlist on -track_memory_usage -check_equivalent --sweep_dangling_primary_ios off --sweep_constant_primary_outputs off
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ circuit_list_add=LU8PEEng.v
arch_list_add=k6_frac_N10_frac_chain_mem32K_40nm.xml

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

# Script parameters
script_params = --route_chan_width 110 -check_incremental_sta_consistency
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ circuit_list_add=stereovision1.v
circuit_list_add=stereovision2.v

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_vpr_xilinx.txt
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ circuit_list_add=stereovision3.v
arch_list_add=k6_frac_N10_40nm.xml

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

#Script parameters
script_params= -start odin --route_chan_width 200 --gen_post_synthesis_netlist on -track_memory_usage -check_equivalent --sweep_dangling_primary_ios off --sweep_constant_primary_outputs off
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ circuit_list_add=LU8PEEng.v
arch_list_add=k6_frac_N10_frac_chain_mem32K_40nm.xml

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

# Script parameters
script_params = -start odin --route_chan_width 100 -check_incremental_sta_consistency
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,13 @@ arch_list_add=k6FracN10LB_mem20K_complexDSP_customSB_22nm.xml
include_list_add=hard_block_include.v

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

#Script parameters
script_params=-track_memory_usage -crit_path_router_iterations 100 --route_chan_width 300
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,13 @@ arch_list_add=k6FracN10LB_mem20K_complexDSP_customSB_22nm.clustered.denser.xml
include_list_add=complex_dsp_include.v

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

#Script parameters
script_params=-track_memory_usage -crit_path_router_iterations 100 --route_chan_width 300
Original file line number Diff line number Diff line change
Expand Up @@ -30,13 +30,13 @@ circuit_list_add=softmax.v
arch_list_add=k6FracN10LB_mem20K_complexDSP_customSB_22nm.xml

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

#Script parameters
script_params=-track_memory_usage -crit_path_router_iterations 100 --route_chan_width 300
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,13 @@ arch_list_add=k6FracN10LB_mem20K_complexDSP_customSB_22nm.xml
include_list_add=hard_block_include.v

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

#Script parameters
script_params=-start odin -track_memory_usage -crit_path_router_iterations 100 --route_chan_width 300
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,13 @@ arch_list_add=k6FracN10LB_mem20K_complexDSP_customSB_22nm.clustered.denser.xml
include_list_add=complex_dsp_include.v

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

#Script parameters
script_params=-start odin -track_memory_usage -crit_path_router_iterations 100 --route_chan_width 300
Original file line number Diff line number Diff line change
Expand Up @@ -30,13 +30,13 @@ circuit_list_add=softmax.v
arch_list_add=k6FracN10LB_mem20K_complexDSP_customSB_22nm.xml

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

#Script parameters
script_params=-start odin -track_memory_usage -crit_path_router_iterations 100 --route_chan_width 300
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ circuit_list_add=neuron_stratixiv_arch_timing.blif
arch_list_add=stratixiv_arch_neuron.timing.xml

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

# Script parameters
script_params_common =-starting_stage vpr --route_chan_width 300 --max_router_iterations 400 --router_lookahead map --initial_pres_fac 1.0 --router_profiler_astar_fac 1.5 --seed 3 --device neuron
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ circuit_list_add=neuron_stratixiv_arch_timing.blif
arch_list_add=3d_full_OPIN_inter_die_stratixiv_arch.timing.xml

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

# Script parameters
script_params_common =-starting_stage vpr --route_chan_width 300 --max_router_iterations 400 --router_lookahead map --initial_pres_fac 1.0 --router_profiler_astar_fac 1.5 --seed 3 --device neuron3d
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,13 +31,13 @@ arch_list_add=k6FracN10LB_mem20K_complexDSP_customSB_22nm.xml
include_list_add=hard_block_include.v

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

#Script parameters
script_params=-track_memory_usage -crit_path_router_iterations 100 --route_chan_width 300
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,13 @@ arch_list_add=k6FracN10LB_mem20K_complexDSP_customSB_22nm.clustered.denser.xml
include_list_add=complex_dsp_include.v

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

#Script parameters
#Adding target utilization because the bwave design being used here has lot of DSP chains.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,13 @@ circuit_list_add=tdarknet_like.small.v
arch_list_add=k6FracN10LB_mem20K_complexDSP_customSB_22nm.xml

# Parse info and how to parse
parse_file=vpr_standard.txt
parse_file=vpr_fixed_chan_width.txt

# How to parse QoR info
qor_parse_file=qor_standard.txt

# Pass requirements
pass_requirements_file=pass_requirements.txt
pass_requirements_file=pass_requirements_fixed_chan_width.txt

#Script parameters
script_params=-track_memory_usage -crit_path_router_iterations 100 --route_chan_width 300
Loading