Table of Contents
Fetching ...

GPU-Accelerated Computation of Vietoris-Rips Persistence Barcodes

Simon Zhang, Mengbai Xiao, Hao Wang

Abstract

The computation of Vietoris-Rips persistence barcodes is both execution-intensive and memory-intensive. In this paper, we study its computational structure and identify several unique mathematical properties and algorithmic opportunities with connections to the GPU. Mathematically and empirically, we look into the properties of apparent pairs, which are independently identifiable persistence pairs comprising up to 99\% of persistence pairs. We prove tight upper and lower bounds of the apparent pair rate and some probabilistic lower bounds. We also design massively parallel algorithms to take advantage of the very large number of simplices that can be processed independently of each other. Having identified these opportunities, we develop a GPU-accelerated software for computing Vietoris-Rips persistence barcodes, called Ripser++. Under nice sampling conditions, we show that the expected work complexity of our algorithm is near linear in the number of simplices. The expected depth complexity is dependent only on the computation of the expected number of $p$-dimensional homological cycles. The software achieves up to 30x speedup over the total execution time of the original Ripser and also reduces CPU-memory usage by up to 2.0x. We believe our GPU-acceleration based efforts open a new chapter for the advancement of topological data analysis in the post-Moore's Law era.

GPU-Accelerated Computation of Vietoris-Rips Persistence Barcodes

Abstract

The computation of Vietoris-Rips persistence barcodes is both execution-intensive and memory-intensive. In this paper, we study its computational structure and identify several unique mathematical properties and algorithmic opportunities with connections to the GPU. Mathematically and empirically, we look into the properties of apparent pairs, which are independently identifiable persistence pairs comprising up to 99\% of persistence pairs. We prove tight upper and lower bounds of the apparent pair rate and some probabilistic lower bounds. We also design massively parallel algorithms to take advantage of the very large number of simplices that can be processed independently of each other. Having identified these opportunities, we develop a GPU-accelerated software for computing Vietoris-Rips persistence barcodes, called Ripser++. Under nice sampling conditions, we show that the expected work complexity of our algorithm is near linear in the number of simplices. The expected depth complexity is dependent only on the computation of the expected number of -dimensional homological cycles. The software achieves up to 30x speedup over the total execution time of the original Ripser and also reduces CPU-memory usage by up to 2.0x. We believe our GPU-acceleration based efforts open a new chapter for the advancement of topological data analysis in the post-Moore's Law era.

Paper Structure

This paper contains 60 sections, 20 theorems, 125 equations, 16 figures, 5 tables, 9 algorithms.

Key Result

Lemma 1

Algorithm 2 (oblivious column reduction from Ripser) is equivalent to a reduction of column $j$ as in Algorithm alg:standard-algorithm, namely $R[j] \gets R[j]+R_i$ where $i= \textsf{lookup}[\textsf{low}(R[j])]$.

Figures (16)

  • Figure 1: A filtration on an example finite metric space of four points of a square in the plane. The $1$-skeleton, or simplicial complex of only points and unordered pairs of points, at each diameter value where "creation" or "destruction" occurs is shown. The 1 dimensional Vietoris-Rips barcode is below it: a $1$-cycle is "created" at diameter 1 and "destroyed" at diameter $\sqrt{2}$.
  • Figure 2: The full 1-skeleton for the point cloud of Figure \ref{['fig: VR-barcodes']}. Its 1-dimensional coboundary matrix is shown on the right. Let $(e,(a_p,...,a_0))$ be a $p$-dimensional simplex with vertices $a_p$,...,$a_0$ such that $v_p>v_{p-1}>...>v_0 \geq 0$ and diameter $e \in \mathbb{R}^+$. For example, simplex $(1,(10))$ has vertices 1 and 0 with diameter 1. The order of the columns/simplices is the reverse of the simplex-wise refinement of the Vietoris-Rips filtration.
  • Figure 3: A High-level computation framework comparison of Ripser and Ripser++ starting at dimension $p\geq 1$ (see Section \ref{['sec: 0-persistence']} for $p=0$). Ripser follows the two stage standard persistence computation of sequential Algorithm \ref{['alg:standard-algorithm']} with optimizations. In contrast, Ripser++ finds the hidden parallelism in the computation of Vietoris-Rips persistence barcodes, extracts "Finding Apparent Pairs" out from Matrix Reduction, and parallelizes "Filtration Construction with Clearing" on GPU. These two steps are designed and implemented with new parallel algorithms on GPU, as shown in the Figure \ref{['fig:framework-ripserpp']}(b) with the dashed rectangle.
  • Figure 4: (a) A dimension $1$ 0-persistence apparent pair $(\sigma,\tau)$ on a single 2-dimensional simplex. $\sigma$ is an edge of diameter $5$ and $\tau$ is a cofacet of $\sigma$ with diameter $5$. The light arrow denotes the pairing between $\sigma$ and $\tau$. (b) The highlighted submatrix of the dimension $p$ coboundary matrix denotes the dependency of column $[\sigma]$ from Algorithm \ref{['alg:standard-algorithm']}. In the dimension $p$ coboundary matrix, $(\sigma,\tau)$ is an apparent pair iff entry $(\tau,\sigma)$ has all zeros to its left and below. We color columns/simplices $\sigma$ with blue and their oldest cofacet $\tau$ with purple in (a) and (b).
  • Figure 5: A dimension 1 coboundary matrix of the full Rips filtration of the 2-skeleton on 5 points with all simplices of diameter 1. The yellow highlighted entries above the staircase correspond to apparent pairs.
  • ...and 11 more figures

Theorems & Definitions (62)

  • Definition 1
  • Definition 2
  • Definition 3
  • Definition 4
  • Definition 5
  • Definition 6
  • Definition 7
  • Definition 8
  • Example 1
  • Definition 9
  • ...and 52 more