Abstract
Betweenness centrality (BC) is an important metrics in graph analysis which indicates critical vertices in large-scale networks based on shortest path enumeration. Typically, a BC algorithm constructs a shortest-path DAG for each vertex to calculate its BC score. However, for emerging real-world graphs, even the state-of-the-art BC algorithm will introduce a number of redundancies, as suggested by the existence of articulation points. Articulation points imply some common sub-DAGs in the DAGs for different vertices, but existing algorithms do not leverage such information and miss the optimization opportunity.
We propose a redundancy elimination approach, which identifies the common sub-DAGs shared between the DAGs for different vertices. Our approach leverages the articulation points and reuses the results of the common sub-DAGs in calculating the BC scores, which eliminates redundant computations. We implemented the approach as an algorithm with two-level parallelism and evaluated it on a multicore platform. Compared to the state-of-the-art implementation using shared memory, our approach achieves an average speedup of 4.6x across a variety of real-world graphs, with the traversal rates up to 45 ~ 2400 MTEPS (Millions of Traversed Edges per Second).
- L. Freeman. A set of measures of centrality based upon betweenness. Sociometry, 1977.Google Scholar
Cross Ref
- A. Del Sol, H. Fujihashi, and P. O'Meara. Topology of small-world networks of protein--protein complex structures. Bioinformatics, 2005. Google Scholar
Digital Library
- H. Jeong, S. P. Mason, A. L. Barabási, and Z. N. Oltvai. Lethality and centrality in protein networks. Nature, 411, May 2001.Google Scholar
- R. Guimerà, S. Mossa, A. Turtschi, and L. A. N. Amaral. The worldwide air transportation network: Anomalous centrality, community structure, and cities' global roles. In NAS, 2005.Google Scholar
- F. Liljeros, C. Edling, L. Amaral, H. Stanley, and Y. A. The web of human sexual contacts. Nature, 2001.Google Scholar
- S. Jin, Z. Huang, Y. Chen, D. G. Chavarría-Miranda, J. Feo, and P. C. Wong. A novel application of parallel betweenness centrality to power grid contingency analysis. In IPDPS, 2010.Google Scholar
Cross Ref
- M. Girvan and M. E. J. Newman. Community structure in social and biological networks. In NAS, 2002.Google Scholar
- T. Coffman, S. Greenblatt, and S. Marcus. Graph-based technologies for intelligence analysis. Commun. ACM, 47, 2004. Google Scholar
Digital Library
- V. Krebs. Mapping networks of terrorist cells. Connections, 2002.Google Scholar
- U. Brandes. A faster algorithm for betweenness centrality. Journal of Mathematical Sociology, 2001.Google Scholar
Cross Ref
- Dimitrios Prountzos and Keshav Pingali. Betweenness centrality: algorithms and implementations. In PPoPP, 2013. Google Scholar
Digital Library
- D. Bader, K. Madduri. Parallel algorithms for evaluating centrality indices in real-world networks. In ICPP, 2006. Google Scholar
Digital Library
- K. Madduri, D. Ediger, K. Jiang, D. Bader, D. Chavarria-Miranda. A Faster Parallel Algorithm and Efficient Multithreaded Implementations for Evaluating Betweenness Centrality on Massive Datasets. In IPDPS, 2009. Google Scholar
Digital Library
- G. Tan, D. Tu, N. Sun. A parallel algorithm for computing betweenness centrality. In ICPP, 2009. Google Scholar
Digital Library
- G. Tan, V. Sreedhar, G. Gao. Analysis and performance results of computing betweenness centrality on IBM Cyclops64. Journal of Supercomputing, 2011. Google Scholar
Digital Library
- O. Green, D. Bader. Faster Betweenness Centrality Based on Data Structure Experimentation. In ICCS, 2013.Google Scholar
Cross Ref
- I. Leskvovec, K. Lang, A. Dasgupta, and M. Mahoney. Community structure in large networks: Natural cluster sizes and the absence of large well-defined clusters. Internet Mathematics 6, 1 (2009), 29--123.Google Scholar
- 9th DIMACS Implementation Challenge. http://www.dis.uniroma1.it/challenge9/download.shtml.Google Scholar
- D. A. Bader, S. Kintali, K. Madduri, and M. Mihail. Approximating betweenness centrality. In WAW, 2007. Google Scholar
Digital Library
- U. Brandes and C. Pich. Centrality Estimation in Large Networks. International Journal of Birfucation and Chaos, 17(7), 2007.Google Scholar
- R. Geisberger, P. Sanders, and D. Schultes. Better approximation of betweenness centrality. In ALENEX, 2008. Google Scholar
Digital Library
- N. Edmonds, T. Hoefler, and A. Lumsdaine. A space-efficient parallel algorithm for computing betweenness centrality in distributed memory. In HiPC, 2010.Google Scholar
Cross Ref
- A. Buluc and J. Gilbert. The combinatorial BLAS: design, implementation, and applications. In INT J HIGH PERFORM C, 2011. Google Scholar
Digital Library
- G. Cong and K. Makarychev. Optimizing large-scale graph analysis on a multi-threaded, multi-core platform. In IPDPS, 2011. Google Scholar
Digital Library
- J. Shun and G. E. Blelloch. Ligra: a lightweight graph processing framework for shared memory. In PPoPP, 2013. Google Scholar
Digital Library
- S. Hong, H. Chafi, E. Sedlar, and K. Olukotun. Green-Marl: a DSL for easy and efficient graph analysis. In ASPLOS, 2012. Google Scholar
Digital Library
- M. Kulkarni, K. Pingali, B. Walter, G. Ramanarayanan, K. Bala, L. P. Chew. Optimistic parallelism requires abstractions. In PLDI, 2007. Google Scholar
Digital Library
- Donald Nguyen, Andrew Lenharth, and Keshav Pingali. A lightweight infrastructure for graph analytics. In SOSP, 2013. Google Scholar
Digital Library
- Goh K-I, Cusick ME, Valle D, Childs B, Vidal M, and Barabási A-L. The Human Disease Network. In NAS, 2007.Google Scholar
- Albert-Laszlo Barabasi and Reka Albert. Emergence of Scaling in Random Networks. Science, 286:509--512, 1999.Google Scholar
- M. Faloutsos, P. Faloutosos, and C. Faloutsos. On Power-law Relationships of the Internet topology. In SIGCOMM, 1999. Google Scholar
Digital Library
- Hopcroft, J. and Tarjan, R. Algorithm 447: efficient algorithms for graph manipulation. Communications of the ACM 16 (6): 372--378. Google Scholar
Digital Library
- Scott Beamer Krste Asanović David Patterson. Direction-Optimizing Breadth-First Search. In SC, 2012. Google Scholar
Digital Library
- Adam McLaughlin and David A. Bader. Scalable and High Performance Betweenness Centrality on the GPU. In SC, 2014. Google Scholar
Digital Library
- A. E. Sarιyüce, E. Saule, K. Kaya, and Ü. C. atalyürek, Regularizing Graph Centrality Computations. In JPDC, 2014.Google Scholar
- SNAP: Stanford Network Analysis Platform. snap.stanford.edu/snap/index.htmlGoogle Scholar
- Kaiyuan Zhuang, Rong Chen, Haibo Chen. NUMA-Aware Graph-Structured Analytics. In PPoPP, 2015. Google Scholar
Digital Library
- J. Zhao, H. Cui, J. Xue, X. Feng. Predicting Cross-Core Performance Interference on Multicore Processors with Regression Analysis. In TPDS, 2015.Google Scholar
- Lei Liu, Yong Li, Zehan Cui, Yungang Bao, Mingyu Chen, Chengyong Wu. Going Vertical in Memory Management: Handling Multiplicity by Multi-policy. In ISCA, 2014. Google Scholar
Digital Library
- Leiserson CE, Schardl TB. A work-efficient parallel breadth-first search algorithm (or how to cope with the nondeterminism of reducers). In SPAA, 2010. Google Scholar
Digital Library
- Y. Zhang, M. Laurenzano, J. Mars, and L. Tang. SMiTe: Precise QoS Prediction on Real System SMT Processors to Improve Utilization in Warehouse Scale Computers. In MICRO, 2014. Google Scholar
Digital Library
- L. Liu, Y. Li, C. Ding, H. Yang, C. Wu. Rethinking Memory Management in Modern Operating System: Horizontal, Vertical or Random? In TC, 2016.Google Scholar
- J. Zhao, H. Cui, J. Xue, X. Feng, Y. Yan, and W. Yang. An Empirical Model for Predicting Cross-core Performance Interference on Multicore Processors. In PACT, 2013. Google Scholar
Digital Library
Index Terms
Articulation points guided redundancy elimination for betweenness centrality
Recommendations
Articulation points guided redundancy elimination for betweenness centrality
PPoPP '16: Proceedings of the 21st ACM SIGPLAN Symposium on Principles and Practice of Parallel ProgrammingBetweenness centrality (BC) is an important metrics in graph analysis which indicates critical vertices in large-scale networks based on shortest path enumeration. Typically, a BC algorithm constructs a shortest-path DAG for each vertex to calculate its ...
Betweenness Centrality in an HSA-enabled System
HPGP '16: Proceedings of the ACM Workshop on High Performance Graph ProcessingThis paper studies different approaches to implementing betweenness centrality in a heterogeneous system. Betweenness centrality is an important algorithm in graph processing. It presents multiple levels of parallelism when processing a graph, and is an ...
Betweenness centrality on Multi-GPU systems
IA3 '15: Proceedings of the 5th Workshop on Irregular Applications: Architectures and AlgorithmsBetweenness Centrality (BC) is steadily growing in popularity as a metrics of the influence of a vertex in a graph. The exact BC computation for a large scale graph is an extraordinary challenging and requires high performance computing techniques to ...






Comments