APS Logo

Achieving performance and portability on GPUs and CPUs for a high-order finite difference compressible flow solver using OpenMP and Fortran

ORAL

Abstract

We present a strategy for porting a exisiting finite-difference computational fluid dynamics (CFD) code written in modern Fortran for deployment on either CPUs or GPUs. The OpenMP library is used to acheive machine independent source code which is suitable for compilation and execution on both CPU and GPU based archictures. To aid in the code tranformation process and to maintain performance on the CPU a python based pre-processor is developed which allows the fortran code to be minimally altered and yet still acheive performance on the GPU. Examples of the transformed source code are included to demonstrate the effectiveness of the approach. In addition, we present performance data on the GPU compared to the CPU which show large speed-ups in the code's throughput. Scaling studies include a large scale calcuatlion using 4096 GPUs of the Sierra platform at Lawrence Livermore National Laboratory of a turbulent jet with more than 8 billions computational zones.

Presenters

  • Britton J Olson

    Lawrence Livermore Natl Lab

Authors

  • Britton J Olson

    Lawrence Livermore Natl Lab

  • Brandon Blakeley

    University of Washington