A GPU-based solution for fast calculation of the betweenness centrality in large weighted networks

Betweenness, a widely employed centrality measure in network science, is a decent proxy for investigating network loads and rankings. However, its extremely high computational cost greatly hinders its applicability in large networks. Although several parallel algorithms have been presented to reduce...

Full description

Bibliographic Details
Main Authors: Rui Fan, Ke Xu, Jichang Zhao
Format: Article
Language:English
Published: PeerJ Inc. 2017-12-01
Series:PeerJ Computer Science
Subjects:
Online Access:https://peerj.com/articles/cs-140.pdf
id doaj-1bae3b3503a141868447eef14a8aa6c7
record_format Article
spelling doaj-1bae3b3503a141868447eef14a8aa6c72020-11-24T23:57:23ZengPeerJ Inc.PeerJ Computer Science2376-59922017-12-013e14010.7717/peerj-cs.140A GPU-based solution for fast calculation of the betweenness centrality in large weighted networksRui Fan0Ke Xu1Jichang Zhao2State Key Laboratory of Software Development Environment, Beihang University, Beijing, PR ChinaState Key Laboratory of Software Development Environment, Beihang University, Beijing, PR ChinaSchool of Economics and Management, Beihang University, Beijing, PR ChinaBetweenness, a widely employed centrality measure in network science, is a decent proxy for investigating network loads and rankings. However, its extremely high computational cost greatly hinders its applicability in large networks. Although several parallel algorithms have been presented to reduce its calculation cost for unweighted networks, a fast solution for weighted networks, which are commonly encountered in many realistic applications, is still lacking. In this study, we develop an efficient parallel GPU-based approach to boost the calculation of the betweenness centrality (BC) for large weighted networks. We parallelize the traditional Dijkstra algorithm by selecting more than one frontier vertex each time and then inspecting the frontier vertices simultaneously. By combining the parallel SSSP algorithm with the parallel BC framework, our GPU-based betweenness algorithm achieves much better performance than its CPU counterparts. Moreover, to further improve performance, we integrate the work-efficient strategy, and to address the load-imbalance problem, we introduce a warp-centric technique, which assigns many threads rather than one to a single frontier vertex. Experiments on both realistic and synthetic networks demonstrate the efficiency of our solution, which achieves 2.9× to 8.44× speedups over the parallel CPU implementation. Our algorithm is open-source and free to the community; it is publicly available through https://dx.doi.org/10.6084/m9.figshare.4542405. Considering the pervasive deployment and declining price of GPUs in personal computers and servers, our solution will offer unprecedented opportunities for exploring betweenness-related problems and will motivate follow-up efforts in network science.https://peerj.com/articles/cs-140.pdfParallel computingGPU computingBetweenness centralityWeighted networks
collection DOAJ
language English
format Article
sources DOAJ
author Rui Fan
Ke Xu
Jichang Zhao
spellingShingle Rui Fan
Ke Xu
Jichang Zhao
A GPU-based solution for fast calculation of the betweenness centrality in large weighted networks
PeerJ Computer Science
Parallel computing
GPU computing
Betweenness centrality
Weighted networks
author_facet Rui Fan
Ke Xu
Jichang Zhao
author_sort Rui Fan
title A GPU-based solution for fast calculation of the betweenness centrality in large weighted networks
title_short A GPU-based solution for fast calculation of the betweenness centrality in large weighted networks
title_full A GPU-based solution for fast calculation of the betweenness centrality in large weighted networks
title_fullStr A GPU-based solution for fast calculation of the betweenness centrality in large weighted networks
title_full_unstemmed A GPU-based solution for fast calculation of the betweenness centrality in large weighted networks
title_sort gpu-based solution for fast calculation of the betweenness centrality in large weighted networks
publisher PeerJ Inc.
series PeerJ Computer Science
issn 2376-5992
publishDate 2017-12-01
description Betweenness, a widely employed centrality measure in network science, is a decent proxy for investigating network loads and rankings. However, its extremely high computational cost greatly hinders its applicability in large networks. Although several parallel algorithms have been presented to reduce its calculation cost for unweighted networks, a fast solution for weighted networks, which are commonly encountered in many realistic applications, is still lacking. In this study, we develop an efficient parallel GPU-based approach to boost the calculation of the betweenness centrality (BC) for large weighted networks. We parallelize the traditional Dijkstra algorithm by selecting more than one frontier vertex each time and then inspecting the frontier vertices simultaneously. By combining the parallel SSSP algorithm with the parallel BC framework, our GPU-based betweenness algorithm achieves much better performance than its CPU counterparts. Moreover, to further improve performance, we integrate the work-efficient strategy, and to address the load-imbalance problem, we introduce a warp-centric technique, which assigns many threads rather than one to a single frontier vertex. Experiments on both realistic and synthetic networks demonstrate the efficiency of our solution, which achieves 2.9× to 8.44× speedups over the parallel CPU implementation. Our algorithm is open-source and free to the community; it is publicly available through https://dx.doi.org/10.6084/m9.figshare.4542405. Considering the pervasive deployment and declining price of GPUs in personal computers and servers, our solution will offer unprecedented opportunities for exploring betweenness-related problems and will motivate follow-up efforts in network science.
topic Parallel computing
GPU computing
Betweenness centrality
Weighted networks
url https://peerj.com/articles/cs-140.pdf
work_keys_str_mv AT ruifan agpubasedsolutionforfastcalculationofthebetweennesscentralityinlargeweightednetworks
AT kexu agpubasedsolutionforfastcalculationofthebetweennesscentralityinlargeweightednetworks
AT jichangzhao agpubasedsolutionforfastcalculationofthebetweennesscentralityinlargeweightednetworks
AT ruifan gpubasedsolutionforfastcalculationofthebetweennesscentralityinlargeweightednetworks
AT kexu gpubasedsolutionforfastcalculationofthebetweennesscentralityinlargeweightednetworks
AT jichangzhao gpubasedsolutionforfastcalculationofthebetweennesscentralityinlargeweightednetworks
_version_ 1725454257986994176