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