Expanding the Scope of DAWN: A Novel Version for Weighted Shortest Path Problem (2306.07872v1)
Abstract: The shortest path problem is a typical problem in graph theory with wide potential applications. The state-of-the-art single-source shortest paths algorithm on the weight graph is the $\Delta$-stepping algorithm, which can efficiently process weighted graphs in parallel. DAWN is an algorithm that addresses the shortest path problem on unweighted graphs, and we propose a weighted version that can handle graphs with weights edges, while maintaining the high scalability and parallelism features as DAWN. The novel version requires $O(\mu m)$ and $O(\mu \cdot E_{wcc})$ times on the connected and unconnected graphs for SSSP problems, respectively. $E_{wcc}$ denote the number of edges included in the largest weakly connected component, and $\mu$ is a constant denoting the average number of path transformations in the tasks. We tested the weighted version on the real graphs from Stanford Network Analysis Platform and SuiteSparse Matrix Collection, which outperformed the solution of $\Delta$-stepping algorithm from Gunrock, achieving a speedup of 43.163$\times$.
- Richard Bellman. 1958. On a routing problem. Quarterly of applied mathematics 16, 1 (1958), 87–90.
- Federico Busato and Nicola Bombieri. 2015. An efficient implementation of the Bellman-Ford algorithm for Kepler GPU architectures. IEEE Transactions on Parallel and Distributed Systems 27, 8 (2015), 2222–2233.
- Shortest paths algorithms: Theory and experimental evaluation. Mathematical programming 73, 2 (1996), 129–174.
- Work-efficient parallel GPU methods for single-source shortest paths. In 2014 IEEE 28th International Parallel and Distributed Processing Symposium. IEEE, 349–359.
- Timothy A. Davis and Yifan Hu. 2011. The University of Florida Sparse Matrix Collection. ACM Trans. Math. Softw. 38, 1 (dec 2011).
- Edsger W Dijkstra et al. 1959. A note on two problems in connexion with graphs. Numerische mathematik 1, 1 (1959), 269–271.
- Efficient multi-GPU computation of all-pairs shortest paths. In 2014 IEEE 28th International Parallel and Distributed Processing Symposium. IEEE, 360–369.
- A Novel Shortest Paths Algorithm on Unweighted Graphs. arXiv:2208.04514 [cs.DC]
- Robert W Floyd. 1962. Algorithm 97: shortest path. Commun. ACM 5, 6 (1962), 345.
- Donald B Johnson. 1977. Efficient algorithms for shortest paths in sparse networks. Journal of the ACM (JACM) 24, 1 (1977), 1–13.
- Jure Leskovec and Andrej Krevl. 2014. SNAP Datasets: Stanford Large Network Dataset Collection. http://snap.stanford.edu/data.
- CUDA Solutions for the SSSP Problem. In International Conference on Computational Science. Springer, 904–913.
- Ulrich Meyer and Peter Sanders. 2003. ΔΔ\Deltaroman_Δ-stepping: a parallelizable shortest path algorithm. Journal of Algorithms 49, 1 (2003), 114–152.
- A new GPU-based approach to the shortest path problem. In 2013 International Conference on High Performance Computing & Simulation (HPCS). IEEE, 505–511.
- Essentials of Parallel Graph Analytics. In Proceedings of the Workshop on Graphs, Architectures, Programming, and Learning (GrAPL 2022). 314–317. https://doi.org/10.1109/IPDPSW55747.2022.00061
- A Programming Model for GPU Load Balancing. In Proceedings of the 28th ACM SIGPLAN Annual Symposium on Principles and Practice of Parallel Programming (Montreal, QC, Canada) (PPoPP ’23). Association for Computing Machinery, New York, NY, USA, 79–91.
- Rajeev Raman. 1996. Priority queues: Small, monotone and trans-dichotomous. In European Symposium on Algorithms. Springer, 121–137.
- Rajeev Raman. 1997. Recent results on the single-source shortest paths problem. ACM SIGACT News 28, 2 (1997), 81–87.
- Scalable All-Pairs Shortest Paths for Huge Graphs on Multi-GPU Clusters. In Proceedings of the 30th International Symposium on High-Performance Parallel and Distributed Computing (Virtual Event, Sweden) (HPDC ’21). Association for Computing Machinery, New York, NY, USA, 121–131.
- Ganesh G Surve and Medha A Shah. 2017. Parallel implementation of bellman-ford algorithm using CUDA architecture. In 2017 International conference of Electronics, Communication and Aerospace Technology (ICECA), Vol. 2. IEEE, 16–22.
- Mikkel Thorup. 1999. Undirected single-source shortest paths with positive integer weights in linear time. Journal of the ACM (JACM) 46, 3 (1999), 362–394.
- Mikkel Thorup. 2000. On RAM priority queues. SIAM J. Comput. 30, 1 (2000), 86–109.
- SEP-Graph: finding shortest execution paths for graph processing under a hybrid framework on GPU. In Proceedings of the 24th Symposium on Principles and Practice of Parallel Programming. 38–52.
- A fast work-efficient SSSP algorithm for GPUs. In Proceedings of the 26th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming. 133–146.
- Gunrock: GPU Graph Analytics. ACM Transactions on Parallel Computing 4, 1 (Aug. 2017), 3:1–3:49.
- Fast All-Pairs Shortest Paths Algorithm in Large Sparse Graph. In Proceedings of the 37th ACM International Conference on Supercomputing (Virtual Event) (ICS ’23). Association for Computing Machinery, Orlando, Florida, USA, Article 24, 13 pages.