September 25, 2018
Conference Paper

Scalable Distributed Memory Community Detection Using Vite

Abstract

Graph clustering, popularly known as community detection, is a fundamental graph operation used in several applications of relevance for network analysis and cybersecurity. Community detection is an operation of partitioning a network into an arbitrary number of “communities” such that each com munity represents a tightly-knit group of nodes with relatively sparser connections to the rest of the nodes in the network. The need to compute clustering on large-scale networks necessitates the development of efficient parallel algorithms capable of exploiting modern parallel architectures. However, due to their irregular and inherently sequential nature, many of the current algorithms for community detection are challenging to parallelize. In response to the 2018 Graph Challenge, we present Vite which is a distributed-memory parallel community detection method. Vite is a parallelization of the algorithmic template provided by a widely-used serial method (Louvain). Alongside, it uses several heuristics aimed at significantly improving parallelism and performance, while preserving output quality. Using the inputs from the 2018 Graph Challenge (static and streaming), we demonstrate superior performance and high quality solutions based on four parallelization heuristics.

Revised: May 9, 2019 | Published: September 25, 2018

Citation

Ghosh S., M. Halappanavar, A. Tumeo, A. Kalyanaraman, and A. Gebremedhin. 2018. Scalable Distributed Memory Community Detection Using Vite. In IEEE High Performance Extreme Computing Conference (HPEC 2018), September 25-27, 2018, Waltham, MA, 1-7. Piscataway, New Jersey:IEEE. PNNL-SA-136309. doi:10.1109/HPEC.2018.8547534