Towards portability for structured grid CFD codes

Curran, D., C. B. Allen, Simon McIntosh‐Smith · Bristol Research (University of Bristol) · 2016

Scientific software developers are facing the increasing challenge of diverse parallel hard-ware, as represented by large Linux clusters of multi-core CPUs, potentially enhanced with many-core accelerators from AMD, Intel and Nvidia. It is not clear which approach will be successful in the future, and thus scientific codes have to consider how to be able to ef-ficiently exploit any and all of these solutions. On top of this, problem decomposition over an MPI backed cluster, along with more advanced high level optimizations (e.g tiling, effi-cient halo exchange, etc.) is an aspect of modern scientific software development that has been repeated unnecessarily across many codes. To this end, a domain-specific language (DSL) has been proposed and largely implemented, along with a simple Lattice-Boltzmann D3Q19 example. Results are presented for scaling on Piz Daint, as well as direct perfor-mance comparison of a range of the latest GPUs and many-core devices from AMD, Intel and Nvidia.

Read the paper · More papers on PaperTik