Multiqueue-Based FPGA Routing: Relaxed A* Priority Ordering for Improved Parallelism
Routing is a critical part of the FPGA CAD flow. Its solution quality greatly impacts design speed and power, and its run time significantly contributes to overall compile time. As FPGA design size grows but per-core CPU performance stagnates, parallel FPGA routing algorithms that can leverage multiple compute cores become increasingly valuable. Most prior work in parallel FPGA routing uses coarse-grained approaches that route nonoverlapping nets in parallel; this work targets a complementary fine-grained form of parallelism in which the shortest-path algorithms that complete a single connection are multi-threaded. We speed up several related shortest path algorithms (Dijkstra's, A*, and directed) by utilizing a concurrencyfriendly but weakly ordered data structure, the MultiQueue, and enhance the algorithms to compensate for its imperfect ordering of partial routings. Compared to the VTR 8+ router, these techniques achieve routing time reductions of <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$18.7 \times$</tex> and <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$13.2 \times$</tex> on average over the Titan benchmark suite when using Dijkstra's and A* path search, respectively, on a 12 -core CPU. These parallel algorithms achieve wirelength and critical path delay quality comparable to the serial router; they are also deterministic and serially equivalent. When applied to directed search routing, the parallel path search achieves a speed-up of <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$1.98 \times$</tex> and a slightly higher quality than the serial VTR router, but is nondeterministic. Thanks to queue improvements, our router at 1-thread is <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$1.7 \times$</tex> faster than VTR's for Dijkstra's and A* search, but comparable in run time for directed search.
Authors
- Vaughn Betz (ORCID: https://orcid.org/0000-0003-0528-6493)
- Mirjana Stojilović (ORCID: https://orcid.org/0000-0001-5649-5020)
- Hang Yan (ORCID: https://orcid.org/0000-0002-3386-8784)
- Mark C. Jeffrey (ORCID: https://orcid.org/0000-0003-4816-0356)
- Guozheng Zhang (ORCID: https://orcid.org/0009-0009-7340-558X)
- Alexandre Singer
Institutions
- University of Toronto (CA)
- École Polytechnique Fédérale de Lausanne (CH)
Publication Details
- Published
- 2024-12-10
- DOI
- https://doi.org/10.1109/icfpt64416.2024.11113444
- Citations
- 2
- Primary Topic
- Interconnection Networks and Systems
- Type
- article
- Field-Weighted Citation Impact
- 0.70
Funders
- Schweizerischer Nationalfonds zur Förderung der Wissenschaftlichen Forschung
- Natural Sciences and Engineering Research Council of Canada