DocumentCode
3350009
Title
Localizing non-affine array references
Author
Mitchell, Nicholas ; Carter, Larry ; Ferrante, Jeanne
Author_Institution
California Univ., San Diego, La Jolla, CA, USA
fYear
1999
fDate
1999
Firstpage
192
Lastpage
202
Abstract
Existing techniques can enhance the locality of arrays indexed by affine functions of induction variables. This paper presents a technique to localize non-affine array references, such as the indirect memory references common in sparse-matrix computation. Our optimization combines elements of tiling, data-centric tiling, data remapping and inspector-executor parallelization. We describe our technique, bucket tiling, which includes the tasks of permutation generation, data remapping, and loop regeneration. We show that profitability cannot generally be determined at compile-time, but requires an extension to run-time. We demonstrate our technique on three codes: integer sort, conjugate gradient, and a kernel used in simulating a beating heart. We observe speedups of 1.91 on integer sort, 1.57 on conjugate gradient, and 2.69 on the heart kernel
Keywords
conjugate gradient methods; parallel processing; sparse matrices; affine functions; beating heart simulation kernel; bucket tiling; conjugate gradient; data remapping; data-centric tiling; indirect memory references; induction variables; inspector-executor parallelization; integer sort; loop regeneration; nonaffine array reference localisation; optimization; permutation generation; profitability; run-time; sparse-matrix computation; speedup; tiling; Algebra; Character generation; Electronic mail; Heart; Identity-based encryption; Parallel processing; Profitability; Runtime; Sorting; Sparse matrices;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel Architectures and Compilation Techniques, 1999. Proceedings. 1999 International Conference on
Conference_Location
Newport Beach, CA
ISSN
1089-795X
Print_ISBN
0-7695-0425-6
Type
conf
DOI
10.1109/PACT.1999.807526
Filename
807526
Link To Document