An approach for dynamically adaptable SIMD vectorization of FEM kernels

Loading...
Thumbnail Image

Downloads

0

Date issued

Journal Title

Journal ISSN

Volume Title

Publisher

Elsevier

Location

Signature

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.

Description

Delayed publication

Available after

Subject(s)

SIMD, FEM kernels, meta-programming, dynamic polymorphism

Citation

Computer Physics Communications. 2024, vol. 304, art. no. 109319.