Skip to Main Content
The paper introduces an optimized GPU based implementation of the artificial compressibility method, which is used to solve the incompressible Navier-Stoked equations. A finite difference approach has been chosen for the numerical solution of the continuity and momentum equations. The simulations have been performed on a two dimensional backward facing step problem discretized on a Marker and Cell grid, which is used in order to improve the stability of the solution. The computationally intensive parts of the algorithm are performed on the GPU, i.e. the computation of the velocities and of the pressure values at the grid nodes. Due to the lack of communication between the blocks of the GPU grid, the computations have been included in two separate kernels, and the outer loop which iterates through the time steps, has been kept on the CPU. Several optimization strategies have been applied for the two kernels and have lead to an incremental increase in performance. The opposite nature of the two kernels has lead to different optimum versions. The final versions of the kernels have been then used to perform a comparison between the CPU and the GPU version of the algorithms on three different grained grids. The results indicate a speed-up which varies from just under one order of magnitude for the coarsest grid up to two orders of magnitude for the finest grid.