Geometry-Oblivious FMM for Compressing Dense SPD Matrices
This work provides a general-purpose, geometry-oblivious compression method for dense SPD matrices, enabling efficient matrix operations in applications like kernel methods and PDE solvers.
GOFMM compresses dense SPD matrices into hierarchical low-rank approximations, enabling approximate matrix-vector multiplication in O(N log N) or O(N) time with O(N log N) storage and work, without requiring geometric information. It achieves up to 100x speedup over direct multiplication on various architectures.
We present GOFMM (geometry-oblivious FMM), a novel method that creates a hierarchical low-rank approximation, "compression," of an arbitrary dense symmetric positive definite (SPD) matrix. For many applications, GOFMM enables an approximate matrix-vector multiplication in $N \log N$ or even $N$ time, where $N$ is the matrix size. Compression requires $N \log N$ storage and work. In general, our scheme belongs to the family of hierarchical matrix approximation methods. In particular, it generalizes the fast multipole method (FMM) to a purely algebraic setting by only requiring the ability to sample matrix entries. Neither geometric information (i.e., point coordinates) nor knowledge of how the matrix entries have been generated is required, thus the term "geometry-oblivious." Also, we introduce a shared-memory parallel scheme for hierarchical matrix computations that reduces synchronization barriers. We present results on the Intel Knights Landing and Haswell architectures, and on the NVIDIA Pascal architecture for a variety of matrices.