Implementation of a flux-limiter into a fully-portable, algebra-based framework for heterogeneous computing

2018 
During the last years, there has been a signi?cant increment in the variety of hardware to overcome the power constraint in the context of the exascale challenge. This progress is leading to an increasing hybridisation of high-performance computing (HPC) systems and making the design of computing applications a rather complex problem. Many scienti?c computing applications have been partially ported (even rewritten entirely) to take advantage of the coprocessor devices (i.e. GPUs or MICs). Therefore, in this context of accelerated innovation, we developed the HPC2 (Heterogeneous Portable Code for HPC). It is a portable, algebra-based framework for heterogeneous computing with many potential applications in the ?elds of computational physics and mathematics. In this work, we present an algebraic implementation of a ?ux limiter and de?ne its implementation into the HPC2 framework. As a result, in the evaluation of the advection of a scalar ?eld, the algorithm of the time-integration phase relies on a reduced set of algebraic operations. This algebraic approach combined with a multilevel MPI+OpenMP+OpenCL parallelisation naturally provides modularity and portability. The advection of a rhodorea in a 2D domain with di?erent velocity ?elds and boundary conditions has been simulated to validate the implementation of the ?ux limiter on both CPU and GPU.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    0
    References
    0
    Citations
    NaN
    KQI
    []