DocumentCode :
2300735
Title :
Using algebraic transformations to optimize expression evaluation in scientific code
Author :
Zory, Julian ; Coelho, Fabien
Author_Institution :
Centre de Recherche en Inf., Ecole Nat. Superieure des Mines de Paris, Fontainebleau, France
fYear :
1998
fDate :
12-18 Oct 1998
Firstpage :
376
Lastpage :
384
Abstract :
Algebraic properties such as associativity or distributivity allow the manipulation of a set of mathematically equivalent expressions. However as shown in this paper the cost of evaluating such expressions on a computer is not constant within this domain. We suggest the use of algebraic transformations to improve the performance of computationally intensive applications on modern computer architectures. We claim that taking into account instruction-level parallelism and the new capabilities of processors when applying these transformations leads to large run-time improvements. Due to a combinatorial explosion, associative commutative pattern-matching techniques cannot systematically be used in this context. Thus, we introduce two performance enhancing algorithms providing factorization and multiply-add extraction heuristics and choice criteria based on a simple cost model. This paper describes our approach and a first implementation. Experiments on real code, including an excerpt from SPEC FP95, are very promising since we automatically obtain the same results as manual transformations, with a performance improvement by a factor of up to three
Keywords :
instruction sets; optimising compilers; parallel architectures; performance evaluation; SPEC FP95; algebraic transformations; associative commutative pattern-matching techniques; associativity; computer architectures; distributivity; expression evaluation optimisation; instruction-level parallelism; mathematically equivalent expressions; multiply-add extraction heuristics; performance; performance enhancing algorithms; scientific code; Application software; Computational efficiency; Computer applications; Costs; Hardware; Mathematical programming; Mathematics; Parallel processing; Pipeline processing; Runtime;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel Architectures and Compilation Techniques, 1998. Proceedings. 1998 International Conference on
Conference_Location :
Paris
ISSN :
1089-795X
Print_ISBN :
0-8186-8591-3
Type :
conf
DOI :
10.1109/PACT.1998.727284
Filename :
727284
Link To Document :
بازگشت