Abstract
Finite element method (FEM) is a well-developed method to solve real-world problems that can be modeled with differential equations. As the available computational power increases, complex and large-size problems can be solved using FEM, which typically involves multiple degrees of freedom (DOF) per node, high order of elements, and an iterative solver requiring several sparse matrix-vector multiplication operations. In this work, a new storage scheme is proposed for sparse matrices arising from FEM simulations with multiple DOF per node. A sparse matrix-vector multiplication kernel and its variants using the proposed scheme are also given for CUDA-enabled GPUs. The proposed scheme and the kernels rely on the mesh connectivity data from FEM discretization and the number of DOF per node. The proposed kernel performance was evaluated on seven test matrices for double-precision floating point operations. The performance analysis showed that the proposed GPU kernel outperforms the ELLPACK (ELL) and CUSPARSE Hybrid (HYB) format GPU kernels by an average of 42% and 32%, respectively, on a Tesla K20c card.
Original language | English |
---|---|
Pages (from-to) | 57-78 |
Number of pages | 22 |
Journal | International Journal for Numerical Methods in Engineering |
Volume | 110 |
Issue number | 1 |
DOIs | |
Publication status | Published - 6 Apr 2017 |
Bibliographical note
Publisher Copyright:Copyright © 2016 John Wiley & Sons, Ltd.
Keywords
- CUDA
- finite element method
- graphic processing unit programming
- sparse matrix-vector multiplication