SpeedCore: Space-efficient and Dependency-aware GPU Parallel Framework for Core Decomposition

Chen Zhao,Yuanyuan Zhu,Ting Yu,Zhigao Zheng,Song Jin,Bo Du,Dacheng Tao
DOI: https://doi.org/10.1145/3673038.3673111
2024-01-01
Abstract:Core decomposition is a well-established graph mining algorithm in network analysis that involves the k-core subgraph model. However, most existing works on GPUs perform inefficiency due to the heavy search cost for identifying the sparse frontiers throughout the entire vertex space, which is caused by the minimum-degree dependency. Existing works design multiple block queues to partially reduce the cost caused by the sparse frontier search. Nonetheless, the queues consume excessive global memory to avoid queue overflow, leading to the decreased scalability. To address these problems, this paper proposes a space-efficient and dependency-aware GPU parallel framework, SpeedCore, for core decomposition. A theoretically verified virtual graph method is proposed to compress the large sparse search space into a small and dense format. A cache-centric hybrid queue method with a task granularity control strategy at the block level is proposed to restrict memory usage and prevent overflow. Furthermore, SpeedCore proposes a context-based binary search method to accelerate the graph degeneracy problem, which is derived from core decomposition. Extensive experiments on the NVIDIA RTX 3090 GPU show that SpeedCore outperforms the state-of-the-art algorithm by a 2.2x average speedup. Moreover, SpeedCore can still maintain almost the same performance with low memory consumption. To solve the graph degeneracy problem, SpeedCore achieves a 7.5x average speedup.
What problem does this paper attempt to address?