Abstract
It is well known that renaming is an important tool for enhancing parallelization. However, at the fine-grain level renaming involves the addition of extra registers which may affect register allocation. Thus a tradeoff between register allocation and parallelism has to be made to optimize the code performance for fine-grain parallel machines (i.e. pipelined, VLIW's, superscalars). Because of the complexity involved, previous compilers have avoided making this tradeoff by separating register allocation from code reorganization (scheduling). Unfortunately, this separation' can lead to severe performance problems. We propose in this paper a new approach which circumvents these traditional problems while yielding an efficient implementation. Some benchmarks are used to illustrate the effect of our technique.
This work was supported in part by ONR grant N00014-91-J-1406 and NSF grant CCR8996124.
Preview
Unable to display preview. Download preview PDF.
References
A. S. Aiken. Compaction-Based Parallelization. PhD thesis, Cornell University, 1988.
A. Aiken and A. Nicolau. Perfect Pipelining: A new loop parallelization technique. In Proceedings of the 1988 European Symposium on Programming. Springer Verlag Lecture Notes in Computer Science no. 300, March 1988.
M. Breternitz Jr. Architecture Synthesis of High-Performance Application-Specific Processors. PhD thesis, Carnegie Mellon University, April 1991.
R. Cytron and J. Ferrante. What's in a name? or The value of renaming for parallelism detection and storage allocation. Proceedings of the 1987 International Conference on Parallel Processing, 1987.
R. Cytron, J. Ferrante, B. K. Rosen, M.N. Wegman and F.K. Zadeck. An efficient method of computing static single assignment form. 16th Annual ACM Symposium on Principles of Programming Languages, Austin, TX, January 1989.
R. Cytron, D.J. Kuck and A.V. Veidenbaum. The effect of restructuring compilers on program performance for high-speed computers. Computer Physics Communications, 37:37–48, 1985.
K.Ebcioglu. A Compilation Technique for Software Pipelining of Loops with Conditional Jumps. Proceedings of MICR020, pp. 69–79, ACM Press, 1987.
K.Ebcioglu. Some Design Ideas for a VLIW Architecture for Sequential-Natured Software. Proceedings IFIP, 1988.
K.Ebcioglu, and A.Nicolau. A global resource-constrained parallelization technique. In Proc. ACM SIGARCH ICS-89: International Conference on Supercomputing, Greece, June 1989.
J. R. Ellis. Bulldog-A Compiler for VLIW Architectures. MIT Press, 1986.
J. A. Fisher. Trace Scheduling: A technique for global microcode compaction. IEEE Transactions on Computers, No. 7,pp. 478–490, 1981.
T. Gross, M. S. Lam. Compilation for high-performance systolic array. Proceedings of the 1986 SIGPLAN Symposium on Compiler Construction, July 1986.
M. Kumar. Effect of Storage Allocation/Reclamation Methods on Parallelism and Storage Requirements. Proceedings of the 14th Annual International Symposium on Computer Architecture, Pittsburgh, PA, June 1987.
A. Nicolau. Uniform Parallelism Exploitation in Ordinary Programs. Proceedings of the 1985 International Conference on Parallel Processing, 1985.
A. Nicoiau, R. Potasman and H. Wang. Register allocation, renaming and their impact on parallelism. Technical Report, University of California, Irvine, April 1991.
B. R Rau, C. D. Glaeser. Efficient Code Generation for Horizontal Architectures: Compiler Techniques and Architectural Support. Proceedings of the 9th Symposium on Computer Architecture, April 1982.
R. Sethi, A. Aho, J.D. Ullman. Compilers: Principles, Techniques and Tools. Addison-Wesley, Reading, Mass., 1986.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Nicolau, A., Potasman, R., Wang, H. (1992). Register allocation, renaming and their impact on fine-grain parallelism. In: Banerjee, U., Gelernter, D., Nicolau, A., Padua, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1991. Lecture Notes in Computer Science, vol 589. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0038667
Download citation
DOI: https://doi.org/10.1007/BFb0038667
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55422-6
Online ISBN: 978-3-540-47063-2
eBook Packages: Springer Book Archive