ABSTRACT

This chapter presents an implementation of various iterative methods for the resolution of Poisson equations on heterogeneous parallel computers. It focuses on Neumann-type boundary conditions. The chapter provides a tutorial for the OpenCL implementation of the various algorithms, which are subsequently tested and compared. It shows that although more complex to implement, the multigrid method allows for a significant reduction of both the number of iterations and the length of computation time compared with the simpler fixed-grid iterative methods. The chapter describes the finite volume discretization of the Poisson equation and discusses the boundary conditions. It discusses the implementation of the Successive Over-Relaxation (SOR) method based on forward Gauss-Seidel with OpenCL. The SOR method dramatically reduces the factor by over correcting the local error, but its complexity is exponential. OpenCL is an open standard framework for programming heterogeneous parallel computers like multicore CPUs and Graphics Processing Units.