skip to main content
article
Free Access

“Combining” as a compilation technique for VLIW architectures

Authors Info & Claims
Published:01 August 1989Publication History
Skip Abstract Section

Abstract

Combining is a local compiler optimization technique that can enhance the performance of global compaction techniques for VLIW machines. Given two adjacent operations of a certain class that are flow (read-after-write) dependent and that cannot be placed in the same micro-instruction, the combining technique can transform the operations so that the modified operations have no dependence. The transformed operations can be executed in the same micro-instruction, thus allowing the total execution time of the program to be reduced. In this paper, combining a pair of flow-dependent operations into a wide instruction word is suggested as an important compilation technique for VLIW architectures. Combining is particularly effective with software pipelining and loop unrolling since combinable operations can come together with a higher probability when these compilation techniques are used. We implemented combining in our parallelizing compiler for the wide instruction word architecture, which is now being built at the IBM T. J. Watson Research Center. It is shown that ten percent speedup is obtained on the Stanford integer benchmarks and other sequential-matured C programs, in comparison to compaction techniques that do not use combining. For a class of inner loops, combining can remove the inter-iteration dependencies completely and can improve performance in the same ratio as the loop is unrolled.

References

  1. 1 Rho, A., Sethi It., and Ullman, J. {1986}. Compilers Principles, Techniques, and Tools, Addison- Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2 Ebcioglu, K. {1987}. A Compilation Technique'for Software Pipelining of Loops with Conditional Jumps, Proceedings of the ZOfh Annual Workshop on Microprogramming, ACM Press, pp. 69-79. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3 Ebcioglu, K. {1988}. Some Design Ideas for a VLIW Architecture for Sequential Natured Software, Parallel Processing (Proceedings of IFIP WC 10.3 Working Conference on Parallel Processing), M. Cosnard et al. (eds.), pp. 1-21, North Holland.Google ScholarGoogle Scholar
  4. 4 Ebcioglu, K. and Nakatani, T. {3989}. A New Compilation Technique for Parallelizing Loops with Unpredictable Branches on a VLIW Architecture, to appear in proceedings of ihe Second Workshop on Programmhg Languages and Compilers for Parallel Compdng, University of Illinois at Urbana-Champaign. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5 Kuck, D.J. {1978}. The Siraclrlre oj Computers and Compulations, John Wiley and Sons. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. 6 Nicolau, A. {1985}. Percolation Scheduling: A Parallel Compilation Technique, TR 85-678, Department of Comput,er Science, Cornell IJniversity. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7 Warren, S.H., Auslandcr, M.A., Chaitin, G.J., Chibib, A.C., Hopkins, M.E., and MacKay, A.L. {1986}. Final Code G eneration in the PL.8 Compiler, Report No. RC 11974, IBM T.J. Watson Research Center.Google ScholarGoogle Scholar

Index Terms

  1. “Combining” as a compilation technique for VLIW architectures

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            • Published in

              cover image ACM SIGMICRO Newsletter
              ACM SIGMICRO Newsletter  Volume 20, Issue 3
              Sep. 1989
              253 pages
              ISSN:1050-916X
              DOI:10.1145/75395
              Issue’s Table of Contents
              • cover image ACM Conferences
                MICRO 22: Proceedings of the 22nd annual workshop on Microprogramming and microarchitecture
                August 1989
                253 pages
                ISBN:0897913248
                DOI:10.1145/75362

              Copyright © 1989 Authors

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 1 August 1989

              Check for updates

              Qualifiers

              • article

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader
            About Cookies On This Site

            We use cookies to ensure that we give you the best experience on our website.

            Learn more

            Got it!