DocumentCode
1525398
Title
Evaluating the use of register queues in software pipelined loops
Author
Tyson, Gary S. ; Smelyanskiy, Mikhail ; Davidson, Edward S.
Author_Institution
Lab. of Adv. Comput. Archit., Michigan Univ., Ann Arbor, MI, USA
Volume
50
Issue
8
fYear
2001
fDate
8/1/2001 12:00:00 AM
Firstpage
769
Lastpage
783
Abstract
In this paper, we examine the effectiveness of a new hardware mechanism, called register queues (RQs), which effectively decouples the architected register space from the physical registers. Using RQs, the compiler can allocate physical registers to store live values in the software pipelined loop while minimizing the pressure placed on architected registers. We show that decoupling the architected register space from the physical register space can greatly increase the applicability of software pipelining, even as memory latencies increase. RQs combine the major aspects of existing rotating register file and register connection techniques to generate efficient software pipeline schedules. Through the use of RQs, we can minimize the register pressure and code expansion caused by software pipelining. We demonstrate the effect of incorporating register queues and software pipelining with 983 loops taken from the Perfect Club, the SPEC suites, and the Livermore Kernels
Keywords
pipeline processing; program compilers; Livermore Kernels; Perfect Club; SPEC suites; architected register space; code expansion; compiler; hardware mechanism; memory latencies; register queues; software pipelined loops; software pipelining; Computer architecture; Degradation; Delay; Hardware; Kernel; Optimizing compilers; Pipeline processing; Registers; Throughput; VLIW;
fLanguage
English
Journal_Title
Computers, IEEE Transactions on
Publisher
ieee
ISSN
0018-9340
Type
jour
DOI
10.1109/12.946998
Filename
946998
Link To Document