Abstract
Single-source shortest path (SSSP) is a well-known graph computation that has been studied for more than half a century. It is one of the most common graph analytical analysis in many research areas such as networks, communication, transportation, electronics and so on. In this paper, we propose scalable SSSP algorithms for distributed memory systems. Our algorithms are based on a \( \Delta \)-stepping algorithm with the use of a two dimensional (2D) graph layout as an underlying graph data structure to reduce communication overhead and improve load balancing. The detailed evaluation of the algorithms on various large-scale real-world graphs is also included. Our experiments show that the algorithm with the 2D graph layout delivers up to three times the performance (in TEPS), and uses only one-fifth of the communication time of the algorithm with a one dimensional layout.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Amazon Web Services: Amazon Elastic Compute Cloud. http://aws.amazon.com/ec2/. Accessed 15 July 2018
Beamer, S., Asanovi´c, K., Patterson, D.: Direction-optimizing breadth-first search. Sci. Prog. 21(3–4), 137–148 (2013)
Bellman, R.: On a routing problem. Q. Appl. Math. 16, 87–90 (1958)
Buluc, A., Madduri, K.: Parallel breadth-first search on distributed memory systems. In: Proceedings of High Performance Computing, Networking, Storage and Analysis (SC) (2011)
Chakaravarthy, V.T., Checconi, F., Petrini, F., Sabharwal, Y.: Scalable single source shortest path algorithms for massively parallel systems. In: Proceedings of IEEE 28th International Parallel and Distributed Processing Symposium, pp. 889–901 May 2014
Chen, R., Ding, X., Wang, P., Chen, H., Zang, B., Guan, H.: Computation and communication efficient graph processing with distributed immutable view. In: Proceedings of the 23rd International Symposium on High-Performance Parallel and Distributed Computing, pp. 215–226. ACM (2014)
Davidson, A.A., Baxter, S., Garland, M., Owens, J.D.: Work-efficient parallel GPU methods for single-source shortest paths. In: International Parallel and Distributed Processing Symposium, vol. 28 (2014)
Dayarathna, M., Houngkaew, C., Suzumura, T.: Introducing ScaleGraph: an X10 library for billion scale graph analytics. In: Proceedings of the 2012 ACM SIGPLAN X10 Workshop, p. 6. ACM (2012)
Dijkstra, E.W.: A note on two problems in connection with graphs. Numer. Math. 1(1), 269–271 (1959)
Ford, L.A.: Network flow theory. Technical. report P-923, The Rand Corporation (1956)
Galois. http://iss.ices.utexas.edu/?p=projects/galois. Accessed 15 July 2018
Gonzalez, J.E., Low, Y., Gu, H., Bickson, D., Guestrin, C.: PowerGraph: distributed graph-parallel computation on natural graphs. In: OSDI, vol. 12, p. 2 (2012)
The Graph 500. http://www.graph500.org. Accessed 15 July 2018
Gregor, D., Lumsdaine, A.: The Parallel BGL: a generic library for distributed graph computations. Parallel Object-Oriented Sci. Comput. (POOSC) 2, 1–18 (2005)
Khayyat, Z., Awara, K., Alonazi, A., Jamjoom, H., Williams, D., Kalnis, P.: Mizan: a system for dynamic load balancing in large-scale graph processing. In: Proceedings of the 8th ACM European Conference on Computer Systems, pp. 169–182. ACM (2013)
Low, Y., Bickson, D., Gonzalez, J., Guestrin, C., Kyrola, A., Hellerstein, J.M.: Distributed GraphLab: a framework for machine learning and data mining in the cloud. Proc. VLDB Endow. 5(8), 716–727 (2012)
Madduri, K., Bader, D.A., Berry, J.W., Crobak, J.R.: An experimental study of a parallel shortest path algorithm for solving large-scale graph instances, Chap. 2, pp. 23–35 (2007)
Meyer, U., Sanders, P.: ∆-stepping: a parallelizable shortest path algorithm. J. Algorithms 49(1), 114–152 (2003)
Panitanarak, T., Madduri, K.: Performance analysis of single-source shortest path algorithms on distributed-memory systems. In: SIAM Workshop on Combinatorial Scientific Computing (CSC), p. 60. Citeseer (2014)
Prabhakaran, V., Wu, M., Weng, X., McSherry, F., Zhou, L., Haridasan, M.: Managing large graphs on multi-cores with graph awareness. In: Proceedings of USENIX Annual Technical Conference (ATC) (2012)
Shun, J., Blelloch, G.E.: Ligra: a lightweight graph processing framework for shared memory. In: Proceedings of the 18th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2013 pp. 135–146 (2013)
SNAP: Stanford Network Analysis Project. https://snap.stanford.edu/data/. Accessed 15 July 2018
The University of Florida Sparse Matrix Collection. https://www.cise.ufl.edu/research/sparse/matrices/. Accessed 15 July 2018
StarCluster. http://star.mit.edu/cluster/. Accessed 15 July 2018
Wang, Y., Davidson, A., Pan, Y., Wu, Y., Riffel, A. Owens, J.D.: Gunrock: a high-performance graph processing library on the GPU. In: Proceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pp. 265–266. PPoPP 2015 (2015)
White, T.: Hadoop: The Definitive Guide. O’Reilly Media Inc, Sebastopol (2012)
Xin, R.S., Gonzalez, J.E., Franklin, M.J. Stoica, I.: Graphx: A resilient distributed graph system on spark. In: First International Workshop on Graph Data Management Experiences and Systems, p. 2. ACM (2013)
Zhong, J., He, B.: Medusa: simplified graph processing on GPUs. Parallel Distrib. Syst. IEEE Trans. 25(6), 1543–1552 (2014)
Acknowledgement
The author would like to thank Dr. Kamesh Madduri, an associate professor at Pennsylvania State University, USA, for the inspiration and kind support.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Panitanarak, T. (2019). Scalable Single-Source Shortest Path Algorithms on Distributed Memory Systems. In: Yap, B., Mohamed, A., Berry, M. (eds) Soft Computing in Data Science. SCDS 2018. Communications in Computer and Information Science, vol 937. Springer, Singapore. https://doi.org/10.1007/978-981-13-3441-2_2
Download citation
DOI: https://doi.org/10.1007/978-981-13-3441-2_2
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-13-3440-5
Online ISBN: 978-981-13-3441-2
eBook Packages: Computer ScienceComputer Science (R0)