1. An Algorithm for the Optimization of Finite Element Integration Loops
- Author
-
Fabio Luporini, Paul H. J. Kelly, David A. Ham, Engineering & Physical Science Research Council (EPSRC), and Natural Environment Research Council (NERC)
- Subjects
FOS: Computer and information sciences ,G.4 ,Technology ,Loop (graph theory) ,Design ,Computer science ,Performance ,G.1.8 ,Mathematics, Applied ,Mathematical properties ,Numerical & Computational Mathematics ,010103 numerical & computational mathematics ,performance optimization ,computer.software_genre ,01 natural sciences ,local assembly ,Finite element integration ,Code generation ,0101 mathematics ,VARIATIONAL FORMS ,0802 Computation Theory And Mathematics ,Class (computer programming) ,Science & Technology ,Applied Mathematics ,compilers ,Computer Science, Software Engineering ,cs.MS ,Finite element method ,010101 applied mathematics ,0806 Information Systems ,Physical Sciences ,Computer Science ,Computer Science - Mathematical Software ,Compiler ,State (computer science) ,Mathematical Software (cs.MS) ,computer ,Algorithm ,Mathematics ,Software - Abstract
We present an algorithm for the optimization of a class of finite-element integration loop nests. This algorithm, which exploits fundamental mathematical properties of finite-element operators, is proven to achieve a locally optimal operation count. In specified circumstances the optimum achieved is global. Extensive numerical experiments demonstrate significant performance improvements over the state of the art in finite-element code generation in almost all cases. This validates the effectiveness of the algorithm presented here and illustrates its limitations.
- Published
- 2017
- Full Text
- View/download PDF