Efficient parallel algorithms for dynamic closeness‐ and betweenness centrality

Sai Charan Regunta,Sai Harsh Tondomker,Kshitij Shukla,Kishore Kothapalli
DOI: https://doi.org/10.1002/cpe.6650
2021-09-29
Concurrency and Computation: Practice and Experience
Abstract:Finding the centrality measures of nodes in a graph is a problem of fundamental importance due to various applications from social networks, biological networks, and transportation networks. Given the large size of such graphs, it is natural to use parallelism as a recourse. Several studies show how to compute the various centrality measures of nodes in a graph on parallel architectures, including multi-core systems and GPUs. However, as these graphs evolve and change, it is pertinent to study how to update the centrality measures on changes to the underlying graph. In this article, we show novel parallel algorithms for updating the betweenness- and closeness-centrality values of nodes in a dynamic graph. Our algorithms process a batch of updates in parallel by extending the approach of handling a single update for betweenness- and closeness-centrality. For the latter, we also introduce techniques based on traversals of the block-cut tree of a graph. Besides, our algorithms incorporate mechanisms to exploit the structural properties of graphs for enhanced performance. We implement our algorithms on two parallel architectures: an Intel 24-core CPU and an Nvidia Tesla V100 GPU. To the best of our knowledge, we are the first to show GPU algorithms for the above two problems. In addition, we conduct detailed experiments to study the impact of various parameters associated with our algorithms and their implementation. Our results on a collection of real-world graphs indicate that our algorithms achieve a significant speedup over corresponding state-of-the-art algorithms.
What problem does this paper attempt to address?