PSP

A parallel sweeping preconditioner for heterogeneous 3D Helmholtz equations. A parallelization of a sweeping preconditioner for three-dimensional Helmholtz equations without large cavities is introduced and benchmarked for several challenging velocity models. The setup and application costs of the sequential preconditioner are shown to be O(γ 2 N 4/3 ) and O(γNlogN), where γ(ω) denotes the modestly frequency-dependent number of grid points per perfectly matched layer. Several computational and memory improvements are introduced relative to using black-box sparse-direct solvers for the auxiliary problems, and competitive runtimes and iteration counts are reported for high-frequency problems distributed over thousands of cores. Two open-source packages are released along with this paper: parallel sweeping preconditioner (PSP) and the underlying distributed multifrontal solver, clique.