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...
Main Authors: | , , |
---|---|
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 |