2013
DOI: 10.1145/2491491.2491496
|View full text |Cite
|
Sign up to set email alerts
|

Optimized code generation for finite element local assembly using symbolic manipulation

Abstract: Automated code generators for finite element local assembly have facilitated exploration of alternative implementation strategies within generated code. However, even for a theoretical performance indicator such as operation count, an optimal strategy for local assembly is unknown. We explore a code generation strategy based on symbolic integration and polynomial common sub-expression elimination (CSE). We present our implementation of a local assembly code generator using these techniques. We systematically e… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
6
0

Year Published

2015
2015
2023
2023

Publication Types

Select...
4
1

Relationship

2
3

Authors

Journals

citations
Cited by 7 publications
(6 citation statements)
references
References 19 publications
0
6
0
Order By: Relevance
“…Throughout our symbolic manipulation, we retain coefficients as rational values wherever possible. Previous work [11] has shown that this has two benefits: firstly, we do not incur any form of floating point rounding errors during our expression manipulation; secondly, maintaining the exact values of coefficients facilitates more effective CSE which is beneficial for reducing hardware resource requirements. Currently our TARA-2 compiler does not directly support rationals or common sub-expression elimination, but could be modified to do so in future.…”
Section: Methodsmentioning
confidence: 99%
See 1 more Smart Citation
“…Throughout our symbolic manipulation, we retain coefficients as rational values wherever possible. Previous work [11] has shown that this has two benefits: firstly, we do not incur any form of floating point rounding errors during our expression manipulation; secondly, maintaining the exact values of coefficients facilitates more effective CSE which is beneficial for reducing hardware resource requirements. Currently our TARA-2 compiler does not directly support rationals or common sub-expression elimination, but could be modified to do so in future.…”
Section: Methodsmentioning
confidence: 99%
“…Finite difference stencil expressions are amenable to common-subexpression elimination (CSE) optimisations that target properties of polynomials and would not be applied by default in either software compilers or hardware synthesis tools. Maintaining coefficients as rationals also enables more effective CSE than is possible after conversion to floating point representations [11]. At this step, it would be possible to extract expensive operations from field expressions (e.g.…”
Section: Design Synthesis From the Tara-2 Dslmentioning
confidence: 99%
“…The recent introduction of DSLs to decouple the finite element specification from its underlying implementation has facilitated the development of novel approaches. Methods based on tensor contraction [Kirby and Logg 2006] and symbolic manipulation [Russell and Kelly 2013] have been implemented. Nevertheless, it has been demonstrated that quadrature-based integration remains the most efficient choice for a wide class of problems [Ølgaard and Wells 2010], which motivates our work in COFFEE.…”
Section: Related Workmentioning
confidence: 99%
“…In particular, we address the well-known problem of optimizing the local assembly phase of the finite element method [Russell and Kelly 2013;Ølgaard and Wells 2010;Knepley and Terrel 2013;Kirby et al 2005], which can be responsible for a significant fraction of the overall computation runtime, often in the range of 30% to 60%. With respect to these studies, we propose a novel set of composable code transformations targeting, for the first time, cross-loop arithmetic intensity, with emphasis on instruction-level parallelism, redundant computation, and register locality.…”
Section: Introductionmentioning
confidence: 99%
“…We carry out this research in the context of domain specific languages which 40 have shown excellent results in generating highly optimized implementations from high-level abstractions, thereby reducing the development effort from domain scientists [10,11,12]. In this work we report on research using the OPS [13,14,15,16] framework, an embedded domain specific language (EDSL), for implementing checkpointing.…”
Section: Introductionmentioning
confidence: 99%