Boundary value problems involving elliptic PDEs such as the Laplace and the
Helmholtz equations are ubiquitous in physics and engineering. Many such
problems have alternative formulations as integral equations that are
mathematically more tractable than their PDE counterparts. However, the
integral equation formulation poses a challenge in solving the dense linear
systems that arise upon discretization. In cases where iterative methods
converge rapidly, existing methods that draw on fast summation schemes such as
the Fast Multipole Method are highly efficient and well established. More
recently, linear complexity direct solvers that sidestep convergence issues by
directly computing an invertible factorization have been developed. However,
storage and compute costs are high, which limits their ability to solve
large-scale problems in practice. In this work, we introduce a
distributed-memory parallel algorithm based on an existing direct solver named
``strong recursive skeletonization factorization.'' The analysis of its
parallel scalability applies generally to a class of existing methods that
exploit the so-called strong admissibility. Specifically, we apply low-rank
compression to certain off-diagonal matrix blocks in a way that minimizes data
movement. Given a compression tolerance, our method constructs an approximate
factorization of a discretized integral operator (dense matrix), which can be
used to solve linear systems efficiently in parallel. Compared to iterative
algorithms, our method is particularly suitable for problems involving
ill-conditioned matrices or multiple right-hand sides. Large-scale numerical
experiments are presented to demonstrate the performance of our implementation
using the Julia language