The Boundary Element Method for 2D Elastostatics on Graphics Hardware-GPGPU

Due to its architecture, the graphics processing unit (GPU) is specially well-suited to address problems that can be expressed as data-parallel computations with high arithmetic intensity. One example of such problem is the Boundary Elements Method (BEM). This work addresses the implementation of the direct version of BEM for 2D elastostatics. For the present implementation, constant boundary elements are used. According to the formulation of BEM, every term of both influence matrices (G and H) is independent of each other. In classical CPU serial implementations, these terms are calculated in a sequence of two loops: for the field point i and for the source point j. On the other hand, from the point of view of the GPU parallel processing paradigm, the calculation of every one of these terms can be assigned to a thread (GPU’s elementary unit of calculation) and calculated simultaneously. The transposition of the influence equation to an algebraic linear system of equations is also parallelized. Standard Gaussian quadrature is applied to integrate each term of influence matrices. The code was developed on a NVidia CUDA programming environment and executed on a GeForce GTX 280 graphics card hosted by a regular Intel Core2Duo CPU. The efficiency of the implemented strategies is investigated by solving a classical elastostatics problem.