Title :
A method for register allocation to loops in multiple register file architectures
Author :
Kolson, David J. ; Nicolau, Alexandru ; Dutt, Nikil ; Kennedy, Ken
Author_Institution :
Dept. of Inf. & Comput. Sci., California Univ., Irvine, CA, USA
Abstract :
Multiple instruction issue processors place high demands on register file bandwidth. One solution to reduce this bottleneck is the use of multiple register files. Register allocation for these architectures then becomes exceedingly important as spill code increases memory bandwidth demands and decreases performance, especially within loops. Previously, we have addressed the issue of finding an optimal allocation of variables to registers within loops for a consolidated register file model. In this paper, we extend that work to architectures where the available registers have been partitioned into multiple banks. Experimental results demonstrate that, while the optimal algorithm may be computationally prohibitive, heuristic versions obtain acceptable performances
Keywords :
memory architecture; multiprocessing programs; parallelising compilers; program control structures; heuristic versions; loops; multiple instruction issue processors; multiple register file architectures; optimal allocation; register allocation; register file bandwidth; spill code; Bandwidth; Computer aided instruction; Computer architecture; Computer science; Degradation; High performance computing; Partitioning algorithms; Registers; VLIW; Very large scale integration;
Conference_Titel :
Parallel Processing Symposium, 1996., Proceedings of IPPS '96, The 10th International
Conference_Location :
Honolulu, HI
Print_ISBN :
0-8186-7255-2
DOI :
10.1109/IPPS.1996.508035