Fast finite difference Poisson solvers on heterogeneous architectures
In this paper we propose and evaluate a set of new strategies for the solution of three dimensional separable elliptic problems on CPUGPU platforms. The numerical solution of the system of linear equations arising when discretizing those operators often represents the most time consuming part of larger simulation codes tackling a variety of physical situations. Incompressible fluid flows, electromagnetic problems, heat transfer and solid mechanic simulations are just a few examples of application areas that require efficient solution strategies for this class of problems. GPU computing has emerged as an attractive alternative to conventional CPUs for many scientific applications. High speedups over CPU implementations have been reported and this trend is expected to continue in the future with improved programming support and tighter CPUGPU integration. These speedups by no means imply that CPU performance is no longer critical. The conventional CPU-controlGPU-compute pattern used in many applications wastes much of CPUs computational power. Our proposed parallel implementation of a classical cyclic reduction algorithm to tackle the large linear systems arising from the discretized form of the elliptic problem at hand, schedules computing on both the GPU and the CPUs in a cooperative way. The experimental result demonstrates the effectiveness of this approach.
fast finite difference poisson solvers parallel computing cpugpu heterogeneous architectures