A Simple GPU Implementation of Spectral-Element Methods for Solving 3D Poisson Type Equations on Rectangular Domains and Its Applications (Communications in Computational Physics, 2024)
It is well known since 1960s that by exploring the tensor product structureof the discrete Laplacian on Cartesian meshes, one can develop a simple direct Poissonsolver with an $\mathcal{O}(N^{\frac{d+1}{d}})$ complexity in $d$-dimension, where $N$ is the number of the total unknowns. The GPU acceleration of numerically solving PDEs has been exploredsuccessfully around fifteen years ago and become more and more popular in the pastdecade, driven by significant advancement in both hardware and software technologies, especially in the recent few years. We present in this paper a simple but extremelyfast MATLAB implementation on a modern GPU, which can be easily reproduced, forsolving 3D Poisson type equations using a spectral-element method. In particular, itcosts less than one second on a Nvidia A100 for solving a Poisson equation with onebillion degree of freedoms. We also present applications of this fast solver to solvea linear (time-independent) Schrödinger equation and a nonlinear (time-dependent) Cahn-Hilliard equation.
Keywords: 3D Poisson equation; direct solver; spectral element methods; rectangular domain; GPU; tensor matrix multiplication.