Advertisement

A Low Communication Overhead Breadth-First Search Based on Global Bitmap

  • Ziwei Peng
  • Yutong Lu
  • Zhiguang Cheng
  • Yunfei Du
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11335)

Abstract

Breadth-First Search (BFS) is the underlying kernel algorithm for many graph applications such as social networks, medical informatics, transport systems, etc. Therefore, it has been absorbed as a core of Graph500, used to evaluate the capability of supercomputers in terms of big data processing. In this paper, we introduce into a global bitmap which is used to accelerate two approaches: the top-down and bottom-up. Specifically, the new top-down approach uses the global bitmap to indicate whether the vertices are visited or not, while the new bottom-up approach changes the frontier queue to the global bitmap to indicate whether the vertices are on the frontier. With the help of the global bitmap, the total number of communication messages produced by the BFS will be reduced significantly, and consequentially the BFS is accelerated. Meanwhile, our algorithm is optimized for storage on Knights Landing (KNL). We evaluate our proposal on both the KNL platform and the Tianhe-2 supercomputer. Experimental results demonstrate that the communication was time reduced to roughly 1/4 of the original. We obtain speedups of 2.2–3.1 compared to the top-down approach.

Keywords

Graph500 Breadth-First Search Global bitmap Hybrid approach 

Notes

Acknowledgment

This research was supported by the National Key R&D Program of China under NO. 2018YFB0203904, NSFC: U1611261, NSFC: 61433019, NSFC: U1435217 and the Program for Guangdong Introducing Innovative and Enterpreneurial Teams under Grant No. 2016ZT06D211.

References

  1. 1.
    Graph 500 benchmark. https://graph500.org/
  2. 2.
    Suzumura, T., Ueno, K., Sato, H., Fujisawa, K., Matsuoka, S.: Performance characteristics of Graph500 on large-scale distributed environment. In: 2011 IEEE International Symposium on Workload Characterization (IISWC), Austin, TX, pp. 149–158 (2011)Google Scholar
  3. 3.
    Bader, D.A., Madduri, K.: Designing multithreaded algorithms for breadth-first search and st-connectivity on the Cray MTA-2. In: 2006 International Conference on Parallel Processing (ICPP 2006), Columbus, OH, pp. 523–530 (2006)Google Scholar
  4. 4.
    Mizell, D., Maschhoff, K.: Early experiences with large-scale Cray XMT systems. In: 2009 IEEE International Symposium on Parallel & Distributed Processing, Rome, pp. 1–9 (2009).  https://doi.org/10.1109/ipdps.2009.5161108
  5. 5.
    Agarwal, V., Petrini, F., Pasetto, D., Bader, D.A.: Scalable graph exploration on multicore processors. In: 2010 ACM/IEEE International Conference for High Performance Computing. Networking, Storage and Analysis, New Orleans, LA, pp. 1–11 (2010)Google Scholar
  6. 6.
    Yasui, Y., Fujisawa, K.: Fast and scalable NUMA-based thread parallel breadth-first search. In: 2015 International Conference on High Performance Computing & Simulation (HPCS), Amsterdam, pp. 377–385 (2015)Google Scholar
  7. 7.
    Beamer, S., Asanovic, K., Patterson, D.A.: Searching for a parent instead of fighting over children: a fast breadth-first search implementation for Graph500. EECS Department, University of California, Berkeley, Technical report. UCB/EECS-2011-117, November 2011Google Scholar
  8. 8.
    Beamer, S., Asanovic, K., Patterson, D.: Direction-optimizing breadth-first search. In: International Conference on High PERFORMANCE Computing, Networking, Storage and Analysis, vol. 21, p. 12. IEEE Computer Society Press (2012)Google Scholar
  9. 9.
    Yoo, A., Chow, E., Henderson, K., McLendon, W., Hendrickson, B., Catalyurek, U.: A scalable distributed parallel breadth-first search algorithm on BlueGene/L. In: Proceedings of the ACM/IEEE SC 2005 Conference on Supercomputing, p. 25 (2005).  https://doi.org/10.1109/sc.2005.4
  10. 10.
    Chow, E., Henderson, K., Yoo, A.: Distributed breadth-first search with 2-D partitioning. Lawrence Livermore Nat Lab (2005)Google Scholar
  11. 11.
    Buluç, A.: Parallel breadth-first search on distributed memory systems. In: Computer Science, pp. 1–12 (2011)Google Scholar
  12. 12.
    Checconi, F., Petrini, F., Willcock, J., Lumsdaine, A., Choudhury, A.R., Sabharwal, Y.: Breaking the speed and scalability barriers for graph exploration on distributed-memory machines. In: 2012 International Conference for High Performance Computing, Networking, Storage and Analysis (SC), Salt Lake City, UT, pp. 1–12 (2012).  https://doi.org/10.1109/sc.2012.25
  13. 13.
    Satish, N., Kim, C., Chhugani, J., Dubey, P.: Large-scale energy-efficient graph traversal: a path to efficient data-intensive supercomputing. In: 2012 International Conference for High Performance Computing, Networking, Storage and Analysis (SC), Salt Lake City, UT, pp. 1–11 (2012)Google Scholar
  14. 14.
    Checconi, F., Petrini, F.: Traversing trillions of edges in real time: graph exploration on large-scale parallel machines. In: 2014 IEEE 28th International Parallel and Distributed Processing Symposium, Phoenix, AZ, pp. 425–434 (2014)Google Scholar
  15. 15.
    Beamer, S., Buluc, A., Asanovic, K., et al.: Distributed memory breadth-first search revisited: enabling bottom-up search. In: Proceedings of the IEEE 27th International Parallel Distributed Processing Symposium Workshop and PhD Forum, IPDPSW 2013, pp. 1618–1627 (2013)Google Scholar
  16. 16.
    Merrill, D., Garland, M., Grimshaw, A.: Scalable GPU graph traversal. ACM SIGPLAN Not. 47(8), 117–128 (2012)CrossRefGoogle Scholar
  17. 17.
    Hong, S., Oguntebi, T., Olukotun, K.: Efficient parallel graph exploration on multi-core CPU and GPU. In: 2011 International Conference on Parallel Architectures and Compilation Techniques, Galveston, TX, pp. 78–88 (2011)Google Scholar
  18. 18.

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  • Ziwei Peng
    • 1
    • 2
  • Yutong Lu
    • 1
    • 2
    • 3
  • Zhiguang Cheng
    • 1
    • 2
    • 3
  • Yunfei Du
    • 2
    • 3
  1. 1.College of ComputerNational University of Defense TechnologyChangshaChina
  2. 2.National Supercomputer Center in GuangzhouGuangzhouChina
  3. 3.School of Data and Computer ScienceSun Yat-sen UniversityGuangzhouChina

Personalised recommendations