DocumentCode :
348138
Title :
Compiler-directed dynamic computation reuse: rationale and initial results
Author :
Conners, D.A. ; Hwu, Wen-Mei W.
Author_Institution :
Dept. of Electr. & Comput. Eng., Illinois Univ., Urbana, IL, USA
fYear :
1999
fDate :
1999
Firstpage :
158
Lastpage :
169
Abstract :
Recent studies on value locality reveal that many instructions are frequently executed with a small variety of inputs. This paper proposes an approach that integrates architecture and compiler techniques to exploit value locality for large regions of code. The approach strives to eliminate redundant processor execution created by both instruction-level input repetition and recurrence of input data within high-level computations. In this approach, the compiler performs analysis to identify code regions whose computation can be reused during dynamic execution. The instruction set architecture provides a simple interface for the compiler to communicate the scope of each reuse region and its live-out register information to the hardware. During run time, the execution results of these reusable computation regions are recorded into hardware buffers for potential reuse. Each reuse can eliminate the execution of a large number of dynamic instructions. Furthermore, the actions needed to update the live-out registers can be performed at a higher degree of parallelism than the original code, breaking intrinsic dataflow dependence constraints. Initial results show that the compiler analysis can indeed identify large reuse regions. Overall, the approach can improve the performance of a 6-issue microarchitecture by an average of 30% for a collection of SPEC and integer benchmarks
Keywords :
instruction sets; parallel architectures; performance evaluation; SPEC benchmarks; compiler techniques; compiler-directed dynamic computation reuse; hardware buffers; high-level computations; instruction set architecture; instruction-level input repetition; integer benchmarks; live-out registers; microarchitecture; redundant processor execution; reusable computation regions; value locality; Computer aided instruction; Dynamic compiler; Hardware; Program processors; Registers;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Microarchitecture, 1999. MICRO-32. Proceedings. 32nd Annual International Symposium on
Conference_Location :
Haifa
ISSN :
1072-4451
Print_ISBN :
0-7695-0437-X
Type :
conf
DOI :
10.1109/MICRO.1999.809453
Filename :
809453
Link To Document :
بازگشت