Journal article
EUPEX partner ET4Innovations had a research paper accepted in a Computer Physics Communications journal Volume 304, 2024, 109319 ISSN 0010-4655.
Abstract
The paper focuses on the optimization of the FEM matrix kernels with respect to user-defined parameters such as materials, initial conditions, and boundary conditions that are known during run-time only. Adapting the kernels to specific parameters can save a significant amount of execution time and increase performance. Handling them efficiently is challenging due to the exponential number of potential combinations that the user can specify.
The paper presents an approach that combines (a) cross-element vectorization for the easy-to-write transformation of the original scalar code to vectorized one, (b) meta-programming for utilization of a compiler for building sub-kernels tailored for a particular set of parameters, (c) and dynamic polymorphism allowing run-time selection of sub-kernels.
We show that the above techniques allow (1) straightforward code modifications, (2) efficient handling of required dynamic behavior with a minor performance penalty for most kernels, and (3) achieving up to 8-fold speedups compared to non-adapted kernels.
Authors
Kristian Kadlubiak, Ondřej Meca, Lubomír Říha, Tomáš Brzobohatý
DOI: 10.1016/j.cpc.2024.109319