Parallel and vectorized implementation of analytic evaluation of boundary integral operators

Abstract In this paper, we describe an efficient analytic evaluation of boundary integral operators. Firstly, we concentrate on a novel approach based on the simultaneous evaluation of all three linear shape functions defined on a boundary triangle. This results in a speedup of 2.35–3.15 times compared to the old approach of separate evaluations. In the second part we comment on the OpenMP parallelized and vectorized implementation of the suggested formulae. The employed code optimizations include techniques such as data alignment and padding, array-of-structures to structure-of-arrays data transformation, or unit-strided memory accesses. The presented scalability results, with respect both to the number of threads employed and the width of the SIMD register obtained on an Intel® Xeon™ processor and two generations of the Intel® Xeon Phi™ family (co)processors, validate the performed optimizations and show that vectorization needs to be an inherent part of modern scientific codes.

[1]  J. Radon,et al.  Zur mechanischen Kubatur , 1948 .

[2]  Lukas Einkemmer,et al.  Evaluation of the Intel Xeon Phi 7120 and NVIDIA K80 as accelerators for two-dimensional panel codes , 2015, PloS one.

[3]  Petr Kovár,et al.  A parallel fast boundary element method using cyclic graph decompositions , 2015, Numerical Algorithms.

[4]  Stefan A. Sauter,et al.  Efficient automatic quadrature in 3-d Galerkin BEM , 1998 .

[5]  Krzysztof Banaś,et al.  Finite element numerical integration for first order approximations on multi- and many-core architectures , 2016 .

[6]  S. Mogilevskaya,et al.  The use of complex integral representations for analytical evaluation of three-dimensional BEM integrals - Potential and elasticity problems , 2014 .

[7]  M. Bebendorf,et al.  Mathematik in den Naturwissenschaften Leipzig Accelerating Galerkin BEM for Linear Elasticity using Adaptive Cross Approximation , 2006 .

[8]  S. Rjasanow,et al.  The Fast Solution of Boundary Integral Equations , 2007 .

[9]  Michal Merta,et al.  Acceleration of boundary element method by explicit vectorization , 2015, Adv. Eng. Softw..

[10]  Jan Zapletal,et al.  Effective semi-analytic integration for hypersingular Galerkin boundary integral equations for the Helmholtz equation in 3D , 2014 .

[11]  Michal Merta,et al.  Boundary element quadrature schemes for multi- and many-core architectures , 2017, Comput. Math. Appl..

[12]  Mario Bebendorf,et al.  Hierarchical Matrices: A Means to Efficiently Solve Elliptic Boundary Value Problems , 2008 .

[13]  Olaf Steinbach,et al.  Numerical Approximation Methods for Elliptic Boundary Value Problems: Finite and Boundary Elements , 2007 .

[14]  E. Sternberg,et al.  Three-Dimensional Problems of the Mathematical Theory of Elasticity and Thermoelasticity , 1980 .

[15]  G. Of,et al.  Applications of a fast multipole Galerkin in boundary element method in linear elastostatics , 2005 .

[16]  Alberto Salvadori,et al.  Analytical integrations of hypersingular kernel in 3D BEM problems , 2001 .

[17]  Ondrej Meca,et al.  Intel Xeon Phi acceleration of Hybrid Total FETI solver , 2017, Adv. Eng. Softw..

[18]  Ji Lin,et al.  Simulation of Seismic Wave Scattering by Embedded Cavities in an Elastic Half-Plane Using the Novel Singular Boundary Method , 2018, Advances in Applied Mathematics and Mechanics.

[19]  Pawel Gepner,et al.  Adaptation of MPDATA Heterogeneous Stencil Computation to Intel Xeon Phi Coprocessor , 2015, Sci. Program..

[20]  I N Bronstein,et al.  Taschenbuch der Mathematik , 1966 .

[21]  S. Nintcheu Fata,et al.  Explicit expressions for 3D boundary integrals in potential theory , 2009 .

[22]  Luca di Mare,et al.  Modern multicore and manycore architectures: Modelling, optimisation and benchmarking a multiblock CFD code , 2016, Comput. Phys. Commun..

[23]  C. Schwab,et al.  Boundary Element Methods , 2010 .

[24]  Volker Lindenstruth,et al.  Vc: A C++ library for explicit vectorization , 2012, Softw. Pract. Exp..

[25]  David E. Keyes,et al.  Unstructured computational aerodynamics on many integrated core architecture , 2014, Parallel Comput..

[26]  Zhuochao Tang,et al.  Singular Boundary Method to Simulate Scattering of SH Wave by the Canyon Topography , 2018, Advances in Applied Mathematics and Mechanics.

[27]  Olaf Steinbach,et al.  The all-floating boundary element tearing and interconnecting method , 2009, J. Num. Math..

[28]  R. Harrington,et al.  The potential integral for a linear distribution over a triangular domain , 1982 .

[29]  Chuanzeng Zhang,et al.  Singular boundary method for wave propagation analysis in periodic structures , 2018 .

[30]  P. Wawrzynek,et al.  High order boundary and finite elements for 3D fracture propagation in brittle materials , 2017 .

[31]  Michal Merta,et al.  Parallel Assembly of ACA BEM Matrices on Xeon Phi Clusters , 2017, PPAM.

[32]  Alberto Salvadori,et al.  Analytical integrations in 3D BEM for elliptic problems: Evaluation and implementation , 2010 .

[33]  M. Carley,et al.  Analytical Formulae for Potential Integrals on Triangles , 2012, 1201.4938.

[34]  Gihan R. Mudalige,et al.  Vectorizing Unstructured Mesh Computations for Many-core Architectures , 2014, PMAM.

[35]  J. Liggett,et al.  Exact integrals for three-dimensional boundary element potential problems , 1989 .

[36]  Alexey L. Lastovetsky,et al.  Model-Based Optimization of EULAG Kernel on Intel Xeon Phi Through Load Imbalancing , 2017, IEEE Transactions on Parallel and Distributed Systems.

[37]  Ondrej Meca,et al.  Massively Parallel Hybrid Total FETI (HTFETI) Solver , 2016, PASC.