Register pressure in software-pipelined loop nests: Fast computation and impact on architecture design

2Citations
Citations of this article
4Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Recently the Single-dimension Software Pipelining (SSP) technique was proposed to software pipeline loop nests at an arbitrary loop level [18,19,20]. However, SSP schedules require a high number of rotating registers, and may become infeasible if register needs exceed the number of available registers. It is therefore desirable to design a method to compute the register pressure quickly (without actually performing the register allocation) as an early measure of the feasibility of an SSP schedule. Such a method can also be instrumental to provide a valuable feedback to processor architects in their register files design decision, as far as the needs of loop nests are concerned. This paper presents a method that computes quickly the minimum number of rotating registers required by an SSP schedule. The results have demonstrated that the method is always accurate and is 3 to 4 orders of magnitude faster on average than the register allocator. Also, experiments suggest that 64 floating-point rotating registers are in general enough to accommodate the needs of the loop nests used in scientific computations. © 2006 Springer-Verlag Berlin Heidelberg.

Cite

CITATION STYLE

APA

Douillet, A., & Gao, G. R. (2006). Register pressure in software-pipelined loop nests: Fast computation and impact on architecture design. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 4339 LNCS, pp. 17–31). https://doi.org/10.1007/978-3-540-69330-7_2

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free