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.
|Title of host publication||54th AIAA Aerospace Sciences Meeting|
|Publisher||American Institute of Aeronautics and Astronautics Inc. (AIAA)|
|Publication status||Published - 4 Jan 2016|
|Event||54th AIAA Aerospace Sciences Meeting, 2016 - San Diego, United States|
Duration: 4 Jan 2016 → 8 Jan 2016
|Conference||54th AIAA Aerospace Sciences Meeting, 2016|
|Period||4/01/16 → 8/01/16|