Workshops

Iterative Methods 1: A GPU-Based Multi-Elimination Preconditioner for PDE Elliptic Problems

72
reads

Feng-Nan Hwang

2013-03-28
15:00:00 - 15:25:00

101 , Mathematics Research Center Building (ori. New Math. Bldg.)

Preconditioning is a simple but very powerful technique for accelerating the convergence of an iterative method for solving large sparse linear systems. Traditionally, to design a good preconditioner implemented on a personal computer and a cluster of computer systems with CPUs, the preconditioner should be a good approximation of the inverse of the original linear system in some sense, and the cost for constructing the preconditioner is low and the application of the preconditioner with a given vector is easy. But as new computer systems are rapidly invented, such designing strategies need to be reinvestigated. Motivated by the random walk technique, which is a compute-intensive task, we proposed a new preconditioner based on multi-elimination algorithm, where the inversion operator is approximated explicitly by a partial sum of Neumann series of the iterative matrix for the original system. The computation of such approximation takes advantages of the strengths of the GPU system. We report some preliminary numerical results implemented by CUDA PETSc. In our implementation, we adopt the hybrid GPU-CPU approach that preconditioning setup and application are performed on GPU, while Krylov subspace iteration, which requires a certain degree of communications are done on CPU. This approach minimizes the data communication between GPU-CPU, which is general a bottleneck for many existing algorithms.