Title :
Automatic Permutation for Arbitrary Static Access Patterns
Author :
Sohl, Joar ; Wang, Jian ; Karlsson, Andréas ; Liu, Dake
Author_Institution :
Dept. of Comput. Eng., Linkoping Univ., Linkoping, Sweden
Abstract :
A significant portion of the execution time on current SIMD and VLIW processors is spent on data access rather than instructions that perform actual computations. The ePUMA architecture provides features that allow arbitrary data elements to be accessed in parallel as long as the elements reside in different memory banks. Using permutation to move data elements that are accessed in parallel, the overhead from memory access can be greatly reduced; and, in many cases completely removed. This paper presents a practical method for automatic permutation based on Integer Linear Programming (ILP). No assumptions are made about the structure of the access patterns other than their static nature. Methods for speeding up the solution time for periodic access patterns and reusing existing solutions are also presented. Benchmarks for e.g. FFTs show speedups of up to 3.4 when using permutation compared to regular implementations.
Keywords :
integer programming; linear programming; multiprocessing systems; parallel architectures; storage management; ILP; SIMD processor; VLIW processor; arbitrary data element; arbitrary static access pattern; automatic permutation; data access; ePUMA architecture; execution time; integer linear programming; memory access; memory banks; periodic access pattern; Discrete cosine transforms; Equations; Hardware; Mathematical model; Memory management; Program processors; Vectors; integer linear programming; multi-bank memories; parallel data access; permutation;
Conference_Titel :
Parallel and Distributed Processing with Applications (ISPA), 2012 IEEE 10th International Symposium on
Conference_Location :
Leganes
Print_ISBN :
978-1-4673-1631-6
DOI :
10.1109/ISPA.2012.36