Introduction to assembly of finite element methods on graphics processors

Cristopher Cecka, Adrian Lew, Eric Darve
2010 IOP Conference Series: Materials Science and Engineering  
Recently, graphics processing units (GPUs) have had great success in accelerating numerical computations. We present their application to computations on unstructured meshes such as those in finite element methods. Multiple approaches in assembling and solving sparse linear systems with NVIDIA GPUs and the Compute Unified Device Architecture (CUDA) are presented and discussed. Multiple strategies for efficient use of global, shared, and local memory, methods to achieve memory coalescing, and
more » ... imal choice of parameters are introduced. We find that with appropriate preprocessing and arrangement of support data, the GPU coprocessor achieves speedups of 30x or more in comparison to a well optimized serial implementation on the CPU. We also find that the optimal assembly strategy depends on the order of polynomials used in the finite-element discretization.
doi:10.1088/1757-899x/10/1/012009 fatcat:5t4fqgjfmng75iwjv2gmcghafq