Optimize late no-warm reroutes

This commit is contained in:
Jan Petykiewicz 2026-04-02 18:57:34 -07:00
commit 46e7e13059
19 changed files with 2086 additions and 307 deletions

View file

@ -1,5 +1,5 @@
{
"generated_at": "2026-04-02T16:46:00-07:00",
"generated_at": "2026-04-02T18:51:01-07:00",
"generator": "scripts/record_iteration_trace.py",
"scenarios": [
{
@ -514,10 +514,10 @@
"iteration": 4,
"net_attempts": [
{
"congestion_check_calls": 43,
"congestion_check_calls": 30,
"guidance_seed_present": true,
"net_id": "net_00",
"nodes_expanded": 10,
"net_id": "net_07",
"nodes_expanded": 7,
"pruned_closed_set": 1,
"pruned_cost": 0,
"pruned_hard_collision": 0,
@ -534,10 +534,10 @@
"reached_target": true
},
{
"congestion_check_calls": 30,
"congestion_check_calls": 43,
"guidance_seed_present": true,
"net_id": "net_07",
"nodes_expanded": 7,
"net_id": "net_00",
"nodes_expanded": 10,
"pruned_closed_set": 1,
"pruned_cost": 0,
"pruned_hard_collision": 0,
@ -556,9 +556,9 @@
],
"nodes_expanded": 81,
"routed_net_ids": [
"net_00",
"net_06",
"net_07",
"net_06",
"net_00",
"net_01"
],
"total_dynamic_collisions": 10
@ -589,7 +589,7 @@
"danger_map_cache_misses": 6063,
"danger_map_lookup_calls": 17610,
"danger_map_query_calls": 6063,
"danger_map_total_ns": 174709728,
"danger_map_total_ns": 171226180,
"dynamic_grid_rebuilds": 0,
"dynamic_path_objects_added": 399,
"dynamic_path_objects_removed": 351,
@ -607,6 +607,8 @@
"iteration_conflicting_nets": 32,
"iteration_reverified_nets": 50,
"iteration_reverify_calls": 5,
"late_phase_capped_fallbacks": 0,
"late_phase_capped_nets": 0,
"move_cache_abs_hits": 1200,
"move_cache_abs_misses": 5338,
"move_cache_rel_hits": 4768,
@ -645,7 +647,7 @@
"refinement_windows_considered": 0,
"route_iterations": 5,
"score_component_calls": 6181,
"score_component_total_ns": 195118641,
"score_component_total_ns": 191650546,
"static_net_tree_rebuilds": 1,
"static_raw_tree_rebuilds": 1,
"static_safe_cache_hits": 1170,
@ -1062,26 +1064,6 @@
"congestion_penalty": 274.4,
"iteration": 3,
"net_attempts": [
{
"congestion_check_calls": 35,
"guidance_seed_present": true,
"net_id": "net_06",
"nodes_expanded": 8,
"pruned_closed_set": 0,
"pruned_cost": 0,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 49,
"guidance_seed_present": true,
"net_id": "net_09",
"nodes_expanded": 11,
"pruned_closed_set": 1,
"pruned_cost": 0,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 36,
"guidance_seed_present": true,
@ -1092,6 +1074,16 @@
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 30,
"guidance_seed_present": true,
"net_id": "net_07",
"nodes_expanded": 7,
"pruned_closed_set": 1,
"pruned_cost": 0,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 30,
"guidance_seed_present": true,
@ -1102,6 +1094,16 @@
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 49,
"guidance_seed_present": true,
"net_id": "net_09",
"nodes_expanded": 11,
"pruned_closed_set": 1,
"pruned_cost": 0,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 70,
"guidance_seed_present": true,
@ -1113,11 +1115,11 @@
"reached_target": true
},
{
"congestion_check_calls": 30,
"congestion_check_calls": 35,
"guidance_seed_present": true,
"net_id": "net_07",
"nodes_expanded": 7,
"pruned_closed_set": 1,
"net_id": "net_06",
"nodes_expanded": 8,
"pruned_closed_set": 0,
"pruned_cost": 0,
"pruned_hard_collision": 0,
"reached_target": true
@ -1125,34 +1127,24 @@
],
"nodes_expanded": 54,
"routed_net_ids": [
"net_06",
"net_09",
"net_03",
"net_07",
"net_02",
"net_09",
"net_08",
"net_07"
"net_06"
],
"total_dynamic_collisions": 15
},
{
"completed_nets": 6,
"conflict_edges": 2,
"congestion_candidate_ids": 1126,
"congestion_check_calls": 550,
"congestion_exact_pair_checks": 884,
"congestion_candidate_ids": 1025,
"congestion_check_calls": 505,
"congestion_exact_pair_checks": 829,
"congestion_penalty": 384.15999999999997,
"iteration": 4,
"net_attempts": [
{
"congestion_check_calls": 179,
"guidance_seed_present": true,
"net_id": "net_06",
"nodes_expanded": 46,
"pruned_closed_set": 7,
"pruned_cost": 15,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 30,
"guidance_seed_present": true,
@ -1163,26 +1155,6 @@
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 91,
"guidance_seed_present": true,
"net_id": "net_08",
"nodes_expanded": 18,
"pruned_closed_set": 8,
"pruned_cost": 0,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 26,
"guidance_seed_present": true,
"net_id": "net_09",
"nodes_expanded": 9,
"pruned_closed_set": 1,
"pruned_cost": 0,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 32,
"guidance_seed_present": true,
@ -1193,6 +1165,16 @@
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 179,
"guidance_seed_present": true,
"net_id": "net_06",
"nodes_expanded": 46,
"pruned_closed_set": 7,
"pruned_cost": 15,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 192,
"guidance_seed_present": true,
@ -1202,25 +1184,45 @@
"pruned_cost": 21,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 26,
"guidance_seed_present": true,
"net_id": "net_09",
"nodes_expanded": 9,
"pruned_closed_set": 1,
"pruned_cost": 0,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 46,
"guidance_seed_present": true,
"net_id": "net_08",
"nodes_expanded": 12,
"pruned_closed_set": 4,
"pruned_cost": 0,
"pruned_hard_collision": 0,
"reached_target": true
}
],
"nodes_expanded": 142,
"nodes_expanded": 136,
"routed_net_ids": [
"net_06",
"net_07",
"net_08",
"net_09",
"net_02",
"net_03"
"net_06",
"net_03",
"net_09",
"net_08"
],
"total_dynamic_collisions": 10
},
{
"completed_nets": 6,
"conflict_edges": 2,
"congestion_candidate_ids": 3377,
"congestion_check_calls": 1477,
"congestion_exact_pair_checks": 2666,
"congestion_candidate_ids": 419,
"congestion_check_calls": 171,
"congestion_exact_pair_checks": 287,
"congestion_penalty": 537.824,
"iteration": 5,
"net_attempts": [
@ -1234,16 +1236,6 @@
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 511,
"guidance_seed_present": true,
"net_id": "net_06",
"nodes_expanded": 137,
"pruned_closed_set": 13,
"pruned_cost": 73,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 86,
"guidance_seed_present": true,
@ -1255,21 +1247,31 @@
"reached_target": true
},
{
"congestion_check_calls": 795,
"congestion_check_calls": 0,
"guidance_seed_present": true,
"net_id": "net_06",
"nodes_expanded": 0,
"pruned_closed_set": 0,
"pruned_cost": 0,
"pruned_hard_collision": 0,
"reached_target": true
},
{
"congestion_check_calls": 0,
"guidance_seed_present": true,
"net_id": "net_03",
"nodes_expanded": 236,
"pruned_closed_set": 28,
"pruned_cost": 149,
"nodes_expanded": 0,
"pruned_closed_set": 0,
"pruned_cost": 0,
"pruned_hard_collision": 0,
"reached_target": true
}
],
"nodes_expanded": 406,
"nodes_expanded": 33,
"routed_net_ids": [
"net_07",
"net_06",
"net_02",
"net_06",
"net_03"
],
"total_dynamic_collisions": 10
@ -1277,74 +1279,76 @@
],
"metrics": {
"congestion_cache_hits": 8,
"congestion_cache_misses": 3881,
"congestion_candidate_ids": 9232,
"congestion_candidate_nets": 8483,
"congestion_candidate_precheck_hits": 2207,
"congestion_candidate_precheck_misses": 1793,
"congestion_candidate_precheck_skips": 111,
"congestion_check_calls": 3881,
"congestion_exact_pair_checks": 7234,
"congestion_grid_net_cache_hits": 2169,
"congestion_grid_net_cache_misses": 3238,
"congestion_grid_span_cache_hits": 1997,
"congestion_grid_span_cache_misses": 1628,
"congestion_cache_misses": 2530,
"congestion_candidate_ids": 6173,
"congestion_candidate_nets": 5869,
"congestion_candidate_precheck_hits": 1152,
"congestion_candidate_precheck_misses": 1460,
"congestion_candidate_precheck_skips": 74,
"congestion_check_calls": 2530,
"congestion_exact_pair_checks": 4800,
"congestion_grid_net_cache_hits": 1192,
"congestion_grid_net_cache_misses": 2676,
"congestion_grid_span_cache_hits": 1065,
"congestion_grid_span_cache_misses": 1366,
"congestion_lazy_requeues": 0,
"congestion_lazy_resolutions": 0,
"congestion_net_envelope_cache_hits": 2311,
"congestion_net_envelope_cache_misses": 3376,
"congestion_presence_cache_hits": 2443,
"congestion_presence_cache_misses": 2009,
"congestion_presence_skips": 452,
"danger_map_cache_hits": 14603,
"danger_map_cache_misses": 6814,
"danger_map_lookup_calls": 21417,
"danger_map_query_calls": 6814,
"danger_map_total_ns": 181736341,
"congestion_net_envelope_cache_hits": 1234,
"congestion_net_envelope_cache_misses": 2769,
"congestion_presence_cache_hits": 1302,
"congestion_presence_cache_misses": 1664,
"congestion_presence_skips": 354,
"danger_map_cache_hits": 11485,
"danger_map_cache_misses": 5474,
"danger_map_lookup_calls": 16959,
"danger_map_query_calls": 5474,
"danger_map_total_ns": 145721703,
"dynamic_grid_rebuilds": 0,
"dynamic_path_objects_added": 397,
"dynamic_path_objects_removed": 350,
"dynamic_tree_rebuilds": 0,
"guidance_bonus_applied": 8062.5,
"guidance_bonus_applied_bend90": 3187.5,
"guidance_bonus_applied": 7562.5,
"guidance_bonus_applied_bend90": 2937.5,
"guidance_bonus_applied_sbend": 250.0,
"guidance_bonus_applied_straight": 4625.0,
"guidance_match_moves": 129,
"guidance_match_moves_bend90": 51,
"guidance_bonus_applied_straight": 4375.0,
"guidance_match_moves": 121,
"guidance_match_moves_bend90": 47,
"guidance_match_moves_sbend": 4,
"guidance_match_moves_straight": 74,
"guidance_match_moves_straight": 70,
"hard_collision_cache_hits": 0,
"iteration_conflict_edges": 39,
"iteration_conflicting_nets": 39,
"iteration_reverified_nets": 60,
"iteration_reverify_calls": 6,
"move_cache_abs_hits": 1915,
"move_cache_abs_misses": 6136,
"move_cache_rel_hits": 5505,
"move_cache_rel_misses": 631,
"moves_added": 7121,
"moves_generated": 8051,
"late_phase_capped_fallbacks": 2,
"late_phase_capped_nets": 2,
"move_cache_abs_hits": 1304,
"move_cache_abs_misses": 4997,
"move_cache_rel_hits": 4419,
"move_cache_rel_misses": 578,
"moves_added": 5638,
"moves_generated": 6301,
"nets_carried_forward": 14,
"nets_reached_target": 46,
"nets_reached_target": 44,
"nets_routed": 46,
"nodes_expanded": 1582,
"nodes_expanded": 1203,
"pair_local_search_accepts": 2,
"pair_local_search_attempts": 3,
"pair_local_search_nodes_expanded": 39,
"pair_local_search_pairs_considered": 2,
"path_cost_calls": 0,
"pruned_closed_set": 399,
"pruned_cost": 531,
"pruned_closed_set": 354,
"pruned_cost": 309,
"pruned_hard_collision": 0,
"ray_cast_calls": 5077,
"ray_cast_calls_expand_forward": 1536,
"ray_cast_calls": 4059,
"ray_cast_calls_expand_forward": 1159,
"ray_cast_calls_expand_snap": 13,
"ray_cast_calls_other": 0,
"ray_cast_calls_straight_static": 3522,
"ray_cast_calls_straight_static": 2881,
"ray_cast_calls_visibility_build": 0,
"ray_cast_calls_visibility_query": 0,
"ray_cast_calls_visibility_tangent": 6,
"ray_cast_candidate_bounds": 316,
"ray_cast_candidate_bounds": 170,
"ray_cast_exact_geometry_checks": 0,
"refine_path_calls": 10,
"refinement_candidate_side_extents": 0,
@ -1355,17 +1359,17 @@
"refinement_static_bounds_checked": 0,
"refinement_windows_considered": 0,
"route_iterations": 6,
"score_component_calls": 7670,
"score_component_total_ns": 205617403,
"score_component_calls": 5962,
"score_component_total_ns": 164785883,
"static_net_tree_rebuilds": 1,
"static_raw_tree_rebuilds": 1,
"static_safe_cache_hits": 1869,
"static_safe_cache_hits": 1276,
"static_tree_rebuilds": 1,
"timeout_events": 0,
"verify_dynamic_candidate_nets": 1906,
"verify_dynamic_exact_pair_checks": 571,
"verify_path_report_calls": 176,
"verify_static_buffer_ops": 813,
"verify_dynamic_candidate_nets": 1884,
"verify_dynamic_exact_pair_checks": 557,
"verify_path_report_calls": 174,
"verify_static_buffer_ops": 805,
"visibility_builds": 0,
"visibility_corner_hits_exact": 0,
"visibility_corner_index_builds": 1,
@ -1376,7 +1380,7 @@
"visibility_point_queries": 0,
"visibility_tangent_candidate_corner_checks": 6,
"visibility_tangent_candidate_ray_tests": 6,
"visibility_tangent_candidate_scans": 1536,
"visibility_tangent_candidate_scans": 1159,
"warm_start_paths_built": 0,
"warm_start_paths_used": 0
},