Kimbap: A Node-Property Map System for Distributed Graph Analytics
Hochan Lee, Roshan Dathathri, Keshav Pingali
Abstract
Most distributed graph analytics systems such as Gemini, Gluon, and SympleGraph support a computational model in which node properties are updated iteratively using properties of adjacent neighbors of those nodes. However, there are many algorithms that cannot be expressed in this model, such as the Louvain algorithm for community detection and the Shiloach-Vishkin algorithm for connected components. These algorithms may be more efficient or may produce better quality output than simpler algorithms that can be expressed using updates only from adjacent vertices.
This paper describes Kimbap, a distributed graph analytics programming framework, and its high-performance implementation that addresses this problem. Kimbap supports general vertex-centric algorithms by permitting the computation at a node to read and write properties of any node in the graph, not just its adjacent neighbors. The programming model allows programmers to specify iterative graph analytics applications, while the Kimbap compiler automatically generates the required communication code, and the Kimbap runtime organizes and synchronizes node-property pairs across the distributed-memory machines. The underlying system uses a distributed node-property map that is optimized for highly concurrent sparse reductions by using a graph-partition-aware sparse representation and by avoiding thread conflicts, thereby eliminating a major bottleneck that throttles performance in systems like Pregel that also support general vertex programs. Our experiments on CPU clusters with up to 256 machines (roughly 12000 threads total) show that (1) Louvain clustering algorithm in Kimbap is on average 4× faster than the state-of-the-art hand-optimized implementation for the same algorithm and (2) Kimbap matches or outperforms the state-of-the-art distributed graph analytics system for algorithms that can be expressed in both systems.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext a82770e5-b91f-4a8e-95d1-3250ac907972Cited by top-tier papers1
Ask how each one uses itBuilds on2
- Parallel Graph Algorithms in Constant Adaptive Rounds: Theory meets PracticeSoheil Behnezhad, Laxman Dhulipala, Hossein Esfandiari, Jakub Lacki et al.VLDB 2020 · 13 citations
- SympleGraph: distributed graph processing with precise loop-carried dependency guaranteeYouwei Zhuo, Jingji Chen, Qinyi Luo, Yanzhi Wang et al.PLDI 2020 · 13 citations
Related papers
- Flash: A Framework for Programming Distributed Graph Processing AlgorithmsXue Li, Ke Meng, Lu Qin, Longbin Lai et al.ICDE 2023 · 5 citations
- G-thinker: A Distributed Framework for Mining Subgraphs in a Big GraphDa Yan, Guimu Guo, Md Mashiur Rahman Chowdhury, M. Tamer Özsu et al.ICDE 2020 · 48 citations
- An Interval-centric Model for Distributed Computing over Temporal GraphsSwapnil Gandhi, Yogesh SimmhanICDE 2020 · 18 citations
- Sage: A System for Uncertain Network AnalysisEunjae Lee, Sam H. Noh, Jiwon SeoVLDB 2022 · 4 citations
- FlexGraph: a flexible and efficient distributed framework for GNN trainingLei Wang, Qiang Yin, Chao Tian, Jianbang Yang et al.EuroSys 2021 · 66 citations
