Toward a GPU-aware comparison of explicit and implicit CFD simulations on structured meshes
More Info
expand_more
Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.
Abstract
A computational Fluid Dynamics (CFD) code for steady simulations solves a set of non-linear partial differential equations using an iterative time stepping process, which could follow an explicit or an implicit scheme. On the CPU, the difference between both time stepping methods with respect to stability and performance has been well covered in
the literature. However, it has not been extended to consider modern high-performance computing systems such as GraphicsProcessingUnits(GPU). In this work, we first present
an implementation of the two time-stepping methods on the GPU, highlighting the different challenges on the programming approach. Then we introduce a classification
of basic CFD operations, found on the degree of parallelism they expose, and study the potential of GPU acceleration for every class. The classification provides local speedups
of basic operations, which are finally used to compare the performance of both methods on the GPU. The target of this work is to enable an informed-decision on the most
efficient combination of hardware and method when facing a new application. Our findings prove,that the choice between explicit and implicit time integration relies mainly on the
convergence of explicit solvers and the efficiency of preconditioners on the GPU.