Return
A unified object-oriented framework for CPU plus GPU explicit hyperbolic solvers
DOI:10.1016/j.advengsoft.2020.102802.png)
Abstract
En 中文
A unified design solution for heterogeneous explicit hyperbolic solvers is herein introduced. The proposed design is entirely cross-compatible between CPUs and GPUs, through an intuitive object-oriented approach. The advantages of a unified CPU+GPU development approach are discussed and exemplified, and a complete description of the data and code structures are provided and benchmarked. The benefits of different object-oriented designs are quantified under static and dynamic loads in terms of parallel performance and scalability. A fair comparison with graphics processors provides a realistic measure of achievable GPU implementation benefits. Both automatically and manually tuned GPU executions are compared and shown to also have a significant impact on the obtained performance. Overall, the proposed design combines a good sequential performance with a supra-linear scalability on modern CPUs. On GPUs, execution is shown to be up to 40 times faster than its single-threaded counterpart, opening a wider range of applicable model scales and resolutions.
Keywords:
Hyperbolic conservation laws
Parallel computing
Contextual object splitting
OMP
CUDA
Journal
IF:
5.7
Papers:
3.3K
Citations:
1.2W

