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
fDate :
8/1/2001 12:00:00 AM
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;
Journal_Title :
Computers, IEEE Transactions on