Conference paper
A generic library for large scale solution of PDEs on modern heterogeneous architectures
Adapting to new programming models for modern multi- and many-core architectures requires code-rewriting and changing algorithms and data structures, in order to achieve good efficiency and scalability. We present a generic library for solving large scale partial differential equations (PDEs), capable of utilizing heterogeneous CPU/GPU environments.
The library can be used for fast proto-typing of PDE solvers, based on finite difference approximations of spatial derivatives in one, two, or three dimensions. In order to efficiently solve large scale problems, we keep memory consumption and memory access low, using a low-storage implementation of flexible-order finite difference operators.
We will illustrate the use of library components by assembling such matrix-free operators to be used with one of the supported iterative solvers, such as GMRES, CG, Multigrid or Defect Correction. As a proto-type for large scale PDE solvers, we present the assembling of a tool for simulation of three dimensional fully nonlinear water waves.
Measurements show scalable performance results - in the same order as a dedicated non-library version of the wave tool. Introducing a domain decomposition preconditioner based on a multigrid method, further extends support for multiple GPUs and allows for improvements in performance as well as increased problem sizes.
Language: | English |
---|---|
Publisher: | The European Research Consortium for Informatics and Mathematics |
Year: | 2012 |
Proceedings: | 7th International Workshop on Parallel Matrix Algorithms and Applications (PMAA 2012) |
Journal subtitle: | Programme and Abstracts |
Types: | Conference paper |
ORCIDs: | Engsig-Karup, Allan Peter |