A Block-Based Triangle Counting Algorithm on Heterogeneous Environments

09/25/2020
by   Abdurrahman Yaşar, et al.
0

Triangle counting is a fundamental building block in graph algorithms. In this paper, we propose a block-based triangle counting algorithm to reduce data movement during both sequential and parallel execution. Our block-based formulation makes the algorithm naturally suitable for heterogeneous architectures. The problem of partitioning the adjacency matrix of a graph is well-studied. Our task decomposition goes one step further: it partitions the set of triangles in the graph. By streaming these small tasks to compute resources, we can solve problems that do not fit on a device. We demonstrate the effectiveness of our approach by providing an implementation on a compute node with multiple sockets, cores and GPUs. The current state-of-the-art in triangle enumeration processes the Friendster graph in 2.1 seconds, not including data copy time between CPU and GPU. Using that metric, our approach is 20 percent faster. When copy times are included, our algorithm takes 3.2 seconds. This is 5.6 times faster than the fastest published CPU-only time.

READ FULL TEXT
research
09/04/2019

Fast BFS-Based Triangle Counting on GPUs

In this paper, we propose a novel method to compute triangle counting on...
research
03/14/2021

TRUST: Triangle Counting Reloaded on GPUs

Triangle counting is a building block for a wide range of graph applicat...
research
04/18/2018

A Comparative Study on Exact Triangle Counting Algorithms on the GPU

We implement exact triangle counting in graphs on the GPU using three di...
research
02/22/2023

Engineering a Distributed-Memory Triangle Counting Algorithm

Counting triangles in a graph and incident to each vertex is a fundament...
research
08/20/2017

Distributed Triangle Counting in the Graphulo Matrix Math Library

Triangle counting is a key algorithm for large graph analysis. The Graph...
research
02/14/2022

On Triangle Counting Parameterized by Twin-Width

In this report we present an algorithm solving Triangle Counting in time...
research
05/12/2022

An improved KTNS algorithm for the job sequencing and tool switching problem

We outline a new Max Pipe Construction Algorithm (MPCA) with the purpose...

Please sign up or login with your details

Forgot password? Click here to reset