Parallel Algorithms for Butterfly Computations

07/19/2019
by   Jessica Shi, et al.
0

Butterflies are the smallest non-trivial subgraph in bipartite graphs, and therefore having efficient computations for analyzing them is crucial to improving the quality of certain applications on bipartite graphs. In this paper, we design a framework called ParButterfly that produces new parallel algorithms for the following problems on processing butterflies: global counting, per-vertex counting, per-edge counting, tip decomposition (vertex peeling), and wing decomposition (edge peeling). The main component of these algorithms is combining wedges incident on subsets of vertices, and our framework allows us to use different methods for wedge aggregation, including combining via sorting, hashing, histogramming, and batching. Moreover, ranking the vertices can speed up butterfly counting, as we only need to consider wedges formed by a particular ordering of the vertices. ParButterfly supports different ways to rank the vertices, including side ordering, approximate and exact degree ordering, and approximate and exact complement coreness ordering. For counting, ParButterfly also supports both exact computation as well as approximate computation via graph sparsification. We prove strong theoretical guarantees on the work and give parallel running times of the algorithms as obtained in our framework. We perform a comprehensive evaluation of all of the algorithms obtained from ParButterfly on a collection of real-world bipartite graphs using a 48-core machine. Our algorithms obtain significant parallel speedup, outperforming the fastest sequential algorithms by up to 13.6x with a self-relative speedup of up to 38.5x. Compared to general subgraph counting solutions, we are orders of magnitude faster.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/11/2020

Faster Exponential-time Algorithms for Approximately Counting Independent Sets

Counting the independent sets of a graph is a classical #P-complete prob...
research
12/21/2021

Accelerating Clique Counting in Sparse Real-World Graphs via Communication-Reducing Optimizations

Counting instances of specific subgraphs in a larger graph is an importa...
research
10/17/2020

RECEIPT: REfine CoarsE-grained IndePendent Tasks for Parallel Tip decomposition of Bipartite Graphs

Tip decomposition is a crucial kernel for mining dense subgraphs in bipa...
research
10/24/2021

Parallel Peeling of Bipartite Networks for Hierarchical Dense Subgraph Discovery

Wing and Tip decomposition construct a hierarchy of butterfly-dense edge...
research
12/31/2017

Butterfly Counting in Bipartite Networks

Graph motifs are used to analyze networks from diverse domains. We consi...
research
03/21/2022

Improved Sampling-to-Counting Reductions in High-Dimensional Expanders and Faster Parallel Determinantal Sampling

We study parallel sampling algorithms for classes of distributions defin...
research
04/25/2018

High-Performance Massive Subgraph Counting using Pipelined Adaptive-Group Communication

Subgraph counting aims to count the number of occurrences of a subgraph ...

Please sign up or login with your details

Forgot password? Click here to reset