Cache-Efficient Fork-Processing Patterns on Large Graphs

被引:6
作者
Lu, Shengliang [1 ]
Sun, Shixuan [1 ]
Paul, Johns [1 ]
Li, Yuchen [2 ]
He, Bingsheng [1 ]
机构
[1] Natl Univ Singapore, Singapore, Singapore
[2] Singapore Management Univ, Singapore, Singapore
来源
SIGMOD '21: PROCEEDINGS OF THE 2021 INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA | 2021年
基金
新加坡国家研究基金会;
关键词
Graph Processing Systems; Fork-Processing Pattern; Concurrent Query Execution; Buffered Execution Model; ALGORITHM; FRAMEWORK;
D O I
10.1145/3448016.3457253
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
As large graph processing emerges, we observe a costly fork-processing pattern (FPP) that is common in many graph algorithms. The unique feature of the FPP is that it launches many independent queries from different source vertices on the same graph. For example, an algorithm in analyzing the network community profile can execute Personalized PageRanks that start from tens of thousands of source vertices at the same time. We study the efficiency of handling FPPs in state-of-the-art graph processing systems on multi-core architectures, including Ligra, Gemini, and Graphlt. We find that those systems suffer from severe cache miss penalty because of the irregular and uncoordinated memory accesses in processing FPPs. In this paper, we propose ForkGraph, a cache-efficient FPP processing system on multi-core architectures. In order to improve the cache reuse, we divide the graph into partitions each sized of LLC (last-level cache) capacity, and the queries in an FPP are buffered and executed on the partition basis. We further develop efficient intra- and inter-partition execution strategies for efficiency. For intra-partition processing, since the graph partition fits into LLC, we propose to execute each graph query with efficient sequential algorithms (in contrast with parallel algorithms in existing parallel graph processing systems) and present an atomic-free query processing method by consolidating contending operations to cache-resident graph partition. For inter-partition processing, we propose two designs, yielding and priority-based scheduling, to reduce redundant work in processing. Besides, we theoretically prove that ForkGraph performs the same amount of work, to within a constant factor, as the fastest known sequential algorithms in FPP queries processing, which is work efficient. Our evaluations on real-world graphs show that ForkGraph significantly outperforms state-of-the-art graph processing systems (including Ligra, Gemini, and Graphlt) with two orders of magnitude speedups.
引用
收藏
页码:1208 / 1221
页数:14
相关论文
共 66 条
  • [1] Akiba Takuya, 2013, P ACM SIGMOD INT C M, P349, DOI [10.1145/2463676.2465315, DOI 10.1145/2463676, DOI 10.1145/2463676.2465315]
  • [2] Alamgir M., 2010, Proceedings 2010 10th IEEE International Conference on Data Mining (ICDM 2010), P18, DOI 10.1109/ICDM.2010.87
  • [3] Big Graph Analytics Platforms
    不详
    [J]. FOUNDATIONS AND TRENDS IN DATABASES, 2015, 7 (1-2): : 2 - +
  • [4] [Anonymous], 2010, C UNC ART INT UAI
  • [5] Awerbuch B., 1994, Proceedings of the Twenty-Sixth Annual ACM Symposium on the Theory of Computing, P487, DOI 10.1145/195058.195238
  • [6] Bader David A, 2011, 10 DIMACS IMPL CHALL
  • [7] Beamer S, 2012, INT CONF HIGH PERFOR
  • [8] Locality Exists in Graph Processing: Workload Characterization on an Ivy Bridge Server
    Beamer, Scott
    Asanovic, Krste
    Patterson, David
    [J]. 2015 IEEE INTERNATIONAL SYMPOSIUM ON WORKLOAD CHARACTERIZATION (IISWC), 2015, : 56 - 65
  • [9] Blelloch Guy E., 2016, ACM S PAR ALG ARCH S, P443, DOI DOI 10.1145/2935764.2935765
  • [10] A faster algorithm for betweenness centrality
    Brandes, U
    [J]. JOURNAL OF MATHEMATICAL SOCIOLOGY, 2001, 25 (02) : 163 - 177