Efficient Parallel Subgraph Counting Using G-Tries

  • Authors:
  • Pedro Ribeiro;Fernando Silva;Luis Lopes

  • Affiliations:
  • -;-;-

  • Venue:
  • CLUSTER '10 Proceedings of the 2010 IEEE International Conference on Cluster Computing
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Finding and counting the occurrences of a collection of subgraphs within another larger network is a computationally hard problem, closely related to graph isomorphism. The subgraph count is by itself a very powerful characterization of a network and it is crucial for other important network measurements. G-tries are a specialized data-structure designed to store and search for subgraphs. By taking advantage of subgraph common substructure, g-tries can provide considerable speedups over previously used methods. In this paper we present a parallel algorithm based precisely on g-tries that is able to efficiently find and count subgraphs. The algorithm relies on randomized receiver-initiated dynamic load balancing and is able to stop its computation at any given time, efficiently store its search position, divide what is left to compute in two halfs, and resume from where it left. We apply our algorithm to several representative real complex networks from various domains and examine its scalability. We obtain an almost linear speedup up to 128 processors, thus allowing us to reach previously unfeasible limits. We showcase the multidisciplinary potential of the algorithm by also applying it to network motif discovery.