Redundancy Elimination in the ExaStencils Code Generator
- First Online:
- Cite this paper as:
- Kronawitter S., Kuckuk S., Lengauer C. (2016) Redundancy Elimination in the ExaStencils Code Generator. In: Carretero J. et al. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2016. Lecture Notes in Computer Science, vol 10049. Springer, Cham
Optimizing the performance of compute-bound codes requires, among other techniques, the elimination of redundant computations. The well-known concept of common subexpression elimination can achieve this in parts, and almost every production compiler conducts such an optimization. However, due to the conservative nature of these compilers, an external redundancy elimination can additionally increase the performance. For stencil codes using finite volume discretizations, an extension to eliminate redundancies between loop iterations is also very promising. We integrated both a classic common subexpression elimination and an extended version in the Exastencils code generator and present their impact on a real-world application.