Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3511808.3557679acmconferencesArticle/Chapter ViewAbstractPublication PagescikmConference Proceedingsconference-collections
short-paper

RealGraphGPU: A High-Performance GPU-Based Graph Engine toward Large-Scale Real-World Network Analysis

Published: 17 October 2022 Publication History

Abstract

A graph, consisting of vertices and edges, has been widely adopted for network analysis. Recently, with the increasing size of real-world networks, many graph engines have been studied to efficiently process large-scale real-world graphs. RealGraph, one of the state-of-the-art single-machine-based graph engines, efficiently processes storage-to-memory I/Os by considering unique characteristics of real-world graphs. Via an in-depth analysis of RealGraph, however, we found that there is still a chance for more performance improvement in the computation part of RealGraph despite its great I/O processing ability. Motivated by this, in this paper, we propose RealGraphGPU, a GPU-based single-machine graph engine. We design the core components required for GPU-based graph processing and incorporate them into the architecture of RealGraph. Further, we propose two optimizations that successfully address the technical issues that could cause the performance degradation in the GPU-based graph engine: buffer pre-checking and edge-based workload allocation strategies. Through extensive evaluation with 6 real-world datasets, we demonstrate that (1) RealGraphGPU improves RealGraph by up to 546%, (2) RealGraphGPU outperforms existing state-of-the-art graph engines dramatically, and (3) the optimizations are all effective in large-scale graph processing.

References

[1]
Aydin Buluç and John R Gilbert. 2012. Parallel Sparse Matrix-Matrix Multiplication and Indexing: Implementation and Experiments. SIAM Journal on Scientific Computing 34, 4 (2012), C170--C191.
[2]
Rong Chen, Jiaxin Shi, Yanzhe Chen, Binyu Zang, Haibing Guan, and Haibo Chen. 2019. Powerlyra: Differentiated Graph Computation and Partitioning on Skewed Graphs. ACM Transactions on Parallel Computing (TOPC) 5, 3 (2019), 1--39.
[3]
Yuze Chi, Guohao Dai, YuWang, Guangyu Sun, Guoliang Li, and Huazhong Yang. 2016. Nxgraph: An Efficient Graph Processing System on a Single Machine. In Proceedings of the 2016 IEEE 32nd International Conference on Data Engineering (ICDE). IEEE, 409--420.
[4]
NVIDIA Corporation. 2022. CUDA Stream. https://developer.download.nvidia.com/CUDA/training/StreamsAndConcurrencyWebinar.pdf
[5]
Roshan Dathathri, Gurbinder Gill, Loc Hoang, Hoang-Vu Dang, Alex Brooks, Nikoli Dryden, Marc Snir, and Keshav Pingali. 2018. Gluon: A Communication- Optimizing Substrate for Distributed Heterogeneous Graph Analytics. In Proceedings of the 39th ACM SIGPLAN conference on Programming Language Design and Implementation (PLDI). ACM SIGPLAN, 752--768.
[6]
Wook-Shin Han, Sangyeon Lee, Kyungyeol Park, Jeong-Hoon Lee, Min-Soo Kim, Jinha Kim, and Hwanjo Yu. 2013. TurboGraph: A Fast Parallel Graph Engine Handling Billion-Scale Graphs in a Single PC. In Proceedings of the ACM International Conference on Knowledge Discovery and Data Mining (KDD). ACM, 77--85.
[7]
Min-Hee Jang, Christos Faloutsos, Sang-Wook Kim, U Kang, and Jiwoon Ha. 2016. Pin-trust: Fast Trust Propagation Exploiting Positive, Implicit, and Negative Information. In Proceedings of the ACM International Conference on Information and Knowledge Management (CIKM). ACM, 629--638.
[8]
Yong-Yeon Jo, Myung-Hwan Jang, Sang-Wook Kim, and Sunju Park. 2019. Real-Graph: A Graph Engine Leveraging The Power-Law Distribution of Real-World Graphs. In Proceedings of the 2019 World Wide Web Conference (WWW). ACM, 807--817.
[9]
Yong-Yeon Jo, Myung-Hwan Jang, Sang-Wook Kim, and Sunju Park. 2021. A Data Layout with Good Data Locality for Single-Machine based Graph Engines. IEEE Trans. Comput. 14, 8 (2021), 1--10.
[10]
Yoonsuk Kang, Jun-Seok Lee, Won-Yong Shin, and Sang-Wook Kim. 2022. Community Reinforcement: An Effective and Efficient Preprocessing Method For Accurate Community Detection. Knowledge-Based Systems 237 (2022), 107741.
[11]
Farzad Khorasani, Keval Vora, Rajiv Gupta, and Laxmi N Bhuyan. 2014. CuSha: Vertex-Centric Graph Processing on GPUs. In Proceedings of the 23rd IEEE International Symposium on High-performance Parallel and Distributed Computing (HPDC). IEEE, 239--252.
[12]
Jon M Kleinberg. 1999. Authoritative Sources in a Hyperlinked Environment. J. ACM 46, 5 (1999), 604--632.
[13]
Yunyong Ko, Kibong Choi, Jiwon Seo, and Sang-Wook Kim. 2021. An In-Depth Analysis of Distributed Training of Deep Neural Networks. In Proceedings of the 2021 IEEE International Parallel and Distributed Processing Symposium (IPDPS). IEEE, 994--1003.
[14]
Yunyong Ko, Jae-Seo Yu, Hong-Kyun Bae, Yongjun Park, Dongwon Lee, and Sang-Wook Kim. 2021. MASCOT: A Quantization Framework for Efficient Matrix Factorization in Recommender Systems. In Proceedings of the 2021 IEEE International Conference on Data Mining (ICDM). IEEE, 290--299.
[15]
Aapo Kyrola, Guy E Blelloch, and Carlos Guestrin. 2012. GraphChi: Large-Scale Graph Computation on Just a PC. In Proceedings of the USENIX Symposium on Operating Systems Design and Implementation (OSDI). USENIX, 31--46.
[16]
Jure Leskovec, Jon Kleinberg, and Christos Faloutsos. 2007. Graph evolution: Densification and Shrinking Diameters. ACM Transactions on Knowledge Discovery from Data 1, 1 (2007), 1--41.
[17]
Xiangru Lian, Wei Zhang, Ce Zhang, and Ji Liu. 2018. Asynchronous Decentralized Parallel Stochastic Gradient Descent. In Proceedings of the International Conference on Machine Learning (ICML). PMLR, 3043--3052.
[18]
Yucheng Low, Danny Bickson, Joseph Gonzalez, Carlos Guestrin, Aapo Kyrola, and JosephMHellerstein. 2012. Distributed GraphLab: A Framework for Machine Learning and Data Mining in the Cloud. Proceedings of the VLDB Endowment 5, 8 (2012), 716--727.
[19]
Grzegorz Malewicz, Matthew H Austern, Aart JC Bik, James C Dehnert, Ilan Horn, Naty Leiser, and Grzegorz Czajkowski. 2010. Pregel: A System for Large-Scale Graph Processing. In Proceedings of the ACM International Conference on Management of Data (SIGMOD). ACM, 135--146.
[20]
Yusuke Nagasaka, Akira Nukada, and Satoshi Matsuoka. 2017. High-Performance and Memory-Saving Sparse General Matrix-Matrix Multiplication for Nvidia Pascal GPU. In Proceedings of the 2017 46th IEEE International Conference on Parallel Processing (ICPP). IEEE, 101--110.
[21]
Lawrence Page, Sergey Brin, Rajeev Motwani, and Terry Winograd. 1999. The PageRank Citation Ranking: Bringing Order to theWeb. Technical Report. Stanford InfoLab.
[22]
Masoud Rehyani Hamedani and Sang-Wook Kim. 2021. AdaSim: A Recursive Similarity Measure in Graphs. In Proceedings of the 30th ACM International Conference on Information and Knowledge Management (CIKM). ACM, 1528--1537.
[23]
Amitabha Roy, Laurent Bindschaedler, Jasmina Malicevic, and Willy Zwaenepoel. 2015. Chaos: Scale-out Graph Processing from Secondary Storage. In Proceedings of the 25th Symposium on Operating Systems Principles (SOSP). ACM, 410--424.
[24]
Amitabha Roy, Ivo Mihailovic, and Willy Zwaenepoel. 2013. X-Stream: Edge-Centric Graph Processing Using Streaming Partitions. In Proceedings of the ACM Symposium on Operating Systems Principles (SOSP). ACM, 472--488.
[25]
Robert Sedgewick and Kevin Wayne. 2011. Algorithms. Addison-Wesley Professional.
[26]
Kenji Suzuki, Isao Horiba, and Noboru Sugie. 2003. Linear-Time Connected-Component Labeling Based on Sequential Local Operations. Computer Vision and Image Understanding 89, 1 (2003), 1--23.
[27]
Hao Wang, Liang Geng, Rubao Lee, Kaixi Hou, Yanfeng Zhang, and Xiaodong Zhang. 2019. SEP-Graph: Finding Shortest Execution Paths for Graph Processing under a Hybrid Framework on GPU. In Proceedings of the 24th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP). ACM SIGPLAN, 38--52.
[28]
HaoWang, Yan Yang, and Bing Liu. 2019. GMC: Graph-based Multi-view Clustering. IEEE Transactions on Knowledge and Data Engineering 32, 6 (2019), 1116--1129.
[29]
Reynold S Xin, Joseph E Gonzalez, Michael J Franklin, and Ion Stoica. 2013. GraphX: A Resilient Distributed Graph System on Spark. In Proceedings of the International Workshop on Graph Data Management Experiences and Systems (GRADE). ACM, 1--6.
[30]
Xifeng Yan, Philip S Yu, and Jiawei Han. 2004. Graph Indexing: A Frequent Structure-Based Approach. In Proceedings of the 2004 ACM SIGMOD International Conference on Management of Data (SIGMOD). ACM, 335--346.
[31]
Hilmi Yildirim and Mukkai S Krishnamoorthy. 2008. A Random Walk Method for Alleviating the Sparsity Problem in Collaborative Filtering. In Proceedings of the 2008 ACM Conference on Recommender Systems (RecSys). ACM, 131--138.
[32]
Peixiang Zhao and Jiawei Han. 2010. On Graph Query Optimization in Large Networks. Proceedings of the VLDB Endowment 3, 1--2 (2010), 340--351.
[33]
Da Zheng, Disa Mhembere, Randal Burns, Joshua Vogelstein, Carey E Priebe, and Alexander S Szalay. 2015. FlashGraph: Processing Billion-Node Graphs on an Array of Commodity SSDs. In Proceedings of the USENIX Conference on File and Storage Technologies (FAST). USENIX, 45--58.
[34]
Xiaowei Zhu, Wenguang Chen, Weimin Zheng, and Xiaosong Ma. 2016. Gemini: A {Computation-Centric} Distributed Graph Processing System. In Proceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation (OSDI). USENIX, 301--316.
[35]
Xiaowei Zhu, Wentao Han, and Wenguang Chen. 2015. GridGraph: Large-Scale Graph Processing on a Single Machine Using 2-Level Hierarchical Partitioning. In Proceedings of the 2015 USENIX Annual Technical Conference (ATC). USENIX, 375--386.

Cited By

View all
  • (2024)RealGraphGPU++: A High-Performance GPU-Based Graph Engine with Direct Storage-to-DM IOCompanion Proceedings of the ACM on Web Conference 202410.1145/3589335.3651549(654-657)Online publication date: 13-May-2024
  • (2024) RealGraphGPU Web : A Convenient and Efficient GPU-Based Graph Analysis Platform on the Web Companion Proceedings of the ACM on Web Conference 202410.1145/3589335.3651237(1011-1014)Online publication date: 13-May-2024

Index Terms

  1. RealGraphGPU: A High-Performance GPU-Based Graph Engine toward Large-Scale Real-World Network Analysis

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    CIKM '22: Proceedings of the 31st ACM International Conference on Information & Knowledge Management
    October 2022
    5274 pages
    ISBN:9781450392365
    DOI:10.1145/3511808
    • General Chairs:
    • Mohammad Al Hasan,
    • Li Xiong
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 17 October 2022

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. graph engine
    2. large-scale graphs processing
    3. single machine

    Qualifiers

    • Short-paper

    Funding Sources

    • Samsung Electronics Co., Ltd
    • The Korea government (Ministry of Science and ICT)
    • The Korea government (Ministry of Science and ICT)

    Conference

    CIKM '22
    Sponsor:

    Acceptance Rates

    CIKM '22 Paper Acceptance Rate 621 of 2,257 submissions, 28%;
    Overall Acceptance Rate 1,861 of 8,427 submissions, 22%

    Upcoming Conference

    CIKM '25

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)41
    • Downloads (Last 6 weeks)8
    Reflects downloads up to 14 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)RealGraphGPU++: A High-Performance GPU-Based Graph Engine with Direct Storage-to-DM IOCompanion Proceedings of the ACM on Web Conference 202410.1145/3589335.3651549(654-657)Online publication date: 13-May-2024
    • (2024) RealGraphGPU Web : A Convenient and Efficient GPU-Based Graph Analysis Platform on the Web Companion Proceedings of the ACM on Web Conference 202410.1145/3589335.3651237(1011-1014)Online publication date: 13-May-2024

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media