# ACCELERATION OF FEM MECHANICAL SIMULATIONS WITH A PARALLEL IMPLEMENTATION IN GPU

## Palavras-chave:

Finite elements, Parallel computing, GPGPU, CUDA, Linear elasticity## Resumo

Finite element simulations with the use of large scale models are becoming more frequent.

Modern strategies applied to transient problems seize efficient assembly of global matrices as well as the

fast solution of system of equations in models with hundreds of millions of degrees of freedom. The use

of General-Purpose computing on Graphics Processing Units (GPGPU) enables extreme parallelization

and acceleration of these processes. In this direction, the present work presents several applications of

computational mechanics problems using the C ++ programming language coupled to the NVCC (NVI-

DIA CUDA Compiler) for the CUDA platform. These simulations require only native C ++ functions,

without external dependencies. The code was developed in a modular structure, with the hybrid imple-

mentation of subroutines in CPU and Graphical Processing Units (GPU). An iterative solver with the

conjugate gradient method is presented and can be coupled to codes developed in other programming

languages for dedicated GPU solution. CPU solutions using the Eigen linear algebra library are also

developed, and several benchmarks are discussed, including the use of OpenMP for parallel computing

and computations on the GPU using double and single precision accuracy, as well as different GPU

kernels for sparse matrix-vector multiplication (SpMV). Results obtained using the proposed strategies

reveal that computations using the described routines are effective and provide significant speedups over

single-threaded computations.