Skip to content

fix: SingleTargetNecessaryCrampedPortPointSolver to prevent duplicate candidates and improve candidate cost evaluation#641

Merged
0hmX merged 1 commit intomainfrom
fix-lag-in-multi-traget-necessarycramped
Mar 10, 2026
Merged

fix: SingleTargetNecessaryCrampedPortPointSolver to prevent duplicate candidates and improve candidate cost evaluation#641
0hmX merged 1 commit intomainfrom
fix-lag-in-multi-traget-necessarycramped

Conversation

@0hmX
Copy link
Copy Markdown
Contributor

@0hmX 0hmX commented Mar 10, 2026

This was causing high RAM usage and visualization lag in AutoroutingPipelineSolver3_HgPortPointPathing. Previously, duplicate port points were added repeatedly, sometimes up to 1441 times. This change reduces the number of duplicates to fewer than 500.

…cate candidates and improve candidate cost evaluation
@tscircuitbot
Copy link
Copy Markdown

🏃 Benchmark This PR

Run benchmarks by commenting on this PR:

/benchmark [solver-name|all] [scenario-limit] --concurrency <n> --effort <n>

Examples:

  • /benchmark -> AutoroutingPipelineSolver, all scenarios (default concurrency uses the benchmark runner CPU count)
  • /benchmark AutoroutingPipelineSolver -> one solver, all scenarios
  • /benchmark all 20 -> all solvers, first 20 scenarios
  • /benchmark AutoroutingPipelineSolver 20 --concurrency 8 -> one solver, 20 scenarios, 8 workers
  • /benchmark AutoroutingPipelineSolver 20 --effort 2 -> one solver, 20 scenarios, 2x effort

Any PR whose title contains [BENCHMARK TEST] will automatically run the benchmark workflow on PR updates.

@vercel
Copy link
Copy Markdown

vercel bot commented Mar 10, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
capacity-node-autorouter Ready Ready Preview, Comment Mar 10, 2026 1:55pm

Request Review

@seveibar
Copy link
Copy Markdown
Contributor

/benchmark

@tscircuitbot
Copy link
Copy Markdown

tscircuitbot commented Mar 10, 2026

🏃 Autorouting Benchmark Results

📊 PR Results
Benchmark Results (1x effort)

+---------------------------+----------------+--------------------+-----------+----------+----------+
| Solver                    | Completed %    | Relaxed DRC Pass % | Timed Out | P50 Time | P95 Time |
+---------------------------+----------------+--------------------+-----------+----------+----------+
| AutoroutingPipelineSolver | 79.0% (🕒2.9%) | 1.9% (🕒2.9%)      | 3/105     | 6.1s     | 67.9s    |
+---------------------------+----------------+--------------------+-----------+----------+----------+

Scenarios: 105
📊 Main Branch Results
Benchmark Results (1x effort)

+---------------------------+-----------------+--------------------+-----------+----------+----------+
| Solver                    | Completed %     | Relaxed DRC Pass % | Timed Out | P50 Time | P95 Time |
+---------------------------+-----------------+--------------------+-----------+----------+----------+
| AutoroutingPipelineSolver | 77.1% (🕒10.5%) | 1.9% (🕒10.5%)     | 11/105    | 5.0s     | 73.0s    |
+---------------------------+-----------------+--------------------+-----------+----------+----------+

Scenarios: 105

📦 Artifact: https://github.com/tscircuit/tscircuit-autorouter/actions/runs/22909551387

@0hmX 0hmX merged commit 443d73d into main Mar 10, 2026
15 checks passed
@tscircuitbot
Copy link
Copy Markdown


Thank you for your contribution! 🎉

PR Rating: ⭐⭐⭐
Impact: Major

Track your contributions and see the leaderboard at: tscircuit Contribution Tracker


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants