HiFlow3 -- A Flexible and Hardware-Aware Parallel Finite Element Package

2013 
This paper details the concept and implementation of the parallel finite element software package HiFlow3 . HiFlow3 is driven by application requirements and aims at the solution of large-scale problems obtained by means of the finite element method for partial differential equations. By utilizing object-oriented concepts and the full capabilities of C++ the HiFlow3 project follows a modular and generic approach for building efficient parallel numerical solvers. It provides highly capable modules dealing with the mesh setup, finite element spaces, degrees of freedom, linear algebra routines, numerical solvers, and output data for visualization. Parallelism -- as the basis for high performance simulations on modern computing systems -- is introduced on two levels: coarse-grained parallelism by means of distributed grids and distributed data structures, and fine-grained parallelism by means of platform-optimized linear algebra back-ends. Modern numerical schemes in HiFlow3 are built on top of both levels of parallelism. This paper describes the project, its concept, and application scenarios in detail and outlines our hardware-aware cross-platform portable approach that benefits from various emerging technologies like GPU acceleration in a unified and user-friendly manner.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    0
    References
    5
    Citations
    NaN
    KQI
    []