Title :
Combining models and guided empirical search to optimize for multiple levels of the memory hierarchy
Author :
Chen, Chun ; Chame, Jacqueline ; Hall, Mary
Author_Institution :
Inf. Sci. Inst., Univ. of Southern California, Marina del Rey, CA, USA
Abstract :
This paper describes an algorithm for simultaneously optimizing across multiple levels of the memory hierarchy for dense-matrix computations. Our approach combines compiler models and heuristics with guided empirical search to take advantage of their complementary strengths. The models and heuristics limit the search to a small number of candidate implementations, and the empirical results provide the most accurate information to the compiler to select among candidates and tune optimization parameter values. We have developed an initial implementation and applied this approach to two case studies, matrix multiply and Jacobi relaxation. For matrix multiply, our results on two architectures, SGI R10000 and Sun UltraSparc IIe, outperform the native compiler, and either outperform or achieve comparable performance as the ATLAS self-tuning library and the hand-tuned vendor BLAS library. Jacobi results also substantially outperform the native compilers.
Keywords :
Jacobian matrices; heuristic programming; matrix multiplication; memory architecture; optimising compilers; search problems; Jacobi relaxation; SGI R10000; Sun UltraSparc IIe; dense-matrix computation; guided empirical search; heuristics; matrix multiply; memory hierarchy; optimising compilers; program compilers; Aggregates; Bandwidth; Bridges; Jacobian matrices; Libraries; Linear algebra; Microprocessors; Optimizing compilers; Performance analysis; Sun;
Conference_Titel :
Code Generation and Optimization, 2005. CGO 2005. International Symposium on
Print_ISBN :
0-7695-2298-X
DOI :
10.1109/CGO.2005.10