skip to main content
10.1145/567532.567555acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free Access

Dependence graphs and compiler optimizations

Authors Info & Claims
Published:26 January 1981Publication History

ABSTRACT

Dependence graphs can be used as a vehicle for formulating and implementing compiler optimizations. This paper defines such graphs and discusses two kinds of transformations. The first are simple rewriting transformations that remove dependence arcs. The second are abstraction transformations that deal more globally with a dependence graph. These transformations have been implemented and applied to several different types of high-speed architectures.

References

  1. {AbKL79} W. Abu-Sufah, D. Kuck, and D. Lawrie, "Automatic Program Transformations for Virtual Memory Computers," Proc. of the 1979 Nat'l. Computer Conf., pp. 969-974, June 1979.Google ScholarGoogle Scholar
  2. {AcDe79} W. B. Ackerman and J. B. Dennis, "Val--A Value-Oriented Algorithmic Language: Preliminary Reference Manual," Lab. for Computer Science (TR-218), MIT, Cambridge, MA, June 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. {AhHU74} A. V. Aho, J. E. Hopcroft, and J. D. Ullman, The Design and Analysis of Computer Algorithms, Addison-Wesley, MA, 1974. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. {AhU173} A. V. Aho and J. D. Ullman, The Theory of Parsing, Translation, and Compiling, Vol. 2: Compiling, Prentice-Hall, Englewood Cliffs, NJ, 1973. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. {AlCo72} F. E. Allen and J. Cocke, "A Catalogue of Optimizing Transformations," in Design and Optimization of Compilers (R. Rustin, Ed.), Prentice-Hall, Inc., NJ, pp. 1-30, 1972.Google ScholarGoogle Scholar
  6. {ArGP78} Arvind, K. P. Gostelow, and W. Plouffe, "An Asynchronous Programming Language and Computing Machine," University of California at Irvine, CA, Dept. of Information and Computer Science Rpt. 114a, Dec. 1978.Google ScholarGoogle Scholar
  7. {AsMa75} E. Ascroft and Z. Manna, "Translating Program Schemes to While-Schemas," SIAM J. on Computing, Vol. 4, No. 2, pp. 125-146, June 1975.Google ScholarGoogle ScholarCross RefCross Ref
  8. {BaGK80} U. Banerjee, D. Gajski, and D. J. Kuck, "Array Machine Control Units for Loops Containing IFs," Proc. of the 1980 Int'l. Conf. on Parallel Processing, Harbor Springs, MI, pp. 28-36, Aug. 1980.Google ScholarGoogle Scholar
  9. {Bake77} B. S. Baker, "An Algorithm for Structuring Flow Graphs," J. of the ACM, Vol. 24, No. 1, pp. 98-120, Jan. 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. {Bane76} U. Banerjee, "Data Dependence in Ordinary Programs," M. S. thesis, Univ. of Ill. at Urbana-Champaign, Dept. of Comput. Sci. Rpt. No. 76-837, Nov. 1976.Google ScholarGoogle Scholar
  11. {Bane79} U. Banerjee, "Speedup of Ordinary Programs," Ph.D. thesis, Univ. of Ill. at Urb.-Champ., Dept. of Comput. Sci. Rpt. No. 79-989, Oct. 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. {BCKT79} U. Banerjee, S. C. Chen, D. J. Kuck, and R. A. Towle, "Time and Parallel Processor Bounds for Fortran-Like Loops," IEEE Trans. on Computers, Vol. C-28, No. 9, pp. 660-670, Sept. 1979.Google ScholarGoogle Scholar
  13. {Beat74} J. C. Beatty, "Register Assignment Algorithm for Generation of Highly Optimized Object Code," IBM J. of Res. and Dev., Vol. 18, No. 1, pp. 20-39, Jan. 1974.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. {BoJa66} C. Bohm and G. Jacopini, "Flow Diagrams, Turing Machines and Languages with Only Two Formation Rules," Comm. of the ACM, Vol. 9, No. 5, pp. 366-371, May 1966. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. {Cock70} J. Cocke, "Global Subexpression Elimination," SIGPLAN Notices, Vol. 5, No. 7, pp. 20-24, 1970. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. {DayW70} W. H. E. Day, "Compiler Assignment of Data Items to Registers," IBM Systs. J., Vol. 9, No. 4, pp. 281-317, 1970.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. {DuKn78} D. D. Dunlop and J. C. Knight, "Register Allocation in the SL/1 Compiler," Proc. of the 1978 LASL Workshop on Vector & Parallel Processors, LA-7491-C, Los Alamos, NM, pp. 205-211, Sept. 1978.Google ScholarGoogle Scholar
  18. {Grie71} D. Gries, Compiler Construction for Digital Computers, Wiley & Sons, NY, 1971. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. {GrWe76} S. L. Graham and M. Wegman, "A Fast and Usually Linear Algorithm for Global Flow Analysis," J. of the ACM, Vol. 23, No. 1, pp. 172-202, 1976. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. {KKLW80} D. J. Kuck, R. H. Kuhn, B. Leasure, and M. Wolfe, "Analysis and Transformation of Programs for Parallel Computation," to appear in Proc. of the Fourth Int'l. Computer Software & Applications Conf., Oct. 1980.Google ScholarGoogle Scholar
  21. {Kuck78} D. J. Kuck, The Structure of Computers and Computations, Vol. I, John Wiley & Sons, Inc., NY, 1978. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. {Kuck80} D. J. Kuck, Class Notes for C. S. 433, Univ. of Ill. at Urb.-Champ., Dept. of Comput. Sci., 1979.Google ScholarGoogle Scholar
  23. {KuMC72} D. J. Kuck, Y. Muraoka, and S. C. Chen, "On the Number of Operations Simultaneously Executable in FORTRAN-Like Programs and Their Resulting Speed-Up," IEEE Trans. on Computers, Vol. C-21, No. 12, pp. 1293-1310, Dec. 1972.Google ScholarGoogle Scholar
  24. {Love77} D. B. Loveman, "Program Improvement by Source-to-Source Transformation," J. of the ACM, Vol. 20, No. 1, pp. 121-145, Jan. 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. {LuBa80} S. F. Lundstrom and G. H. Barnes, "A Controllable MIMD Architecture," Proc. of the 1980 Int'l. Conf. on Parallel Processing, pp. 19-27, Aug. 1980.Google ScholarGoogle Scholar
  26. {PaKL80} D. A. Padua, D. J. Kuck, and D. H. Lawrie, "High-Speed Multiprocessors and Compilation Techniques," Special Issue on Parallel Processing, IEEE Trans. on Computers, Vol. C-29, No. 9, pp. 763-776, Sept. 1980.Google ScholarGoogle Scholar
  27. {Park77} D. S. Parker, Jr., "Nonlinear Recurrences and Parallel Computation," in High Speed Computer and Algorithm Organization, pp. 317-320, Academic Press, Inc., 1977.Google ScholarGoogle Scholar
  28. {ZeBa74} M. V. Zelkowitz and W. G. Bail, "Optimization of Structured Programs," Software Practice and Experience, Vol. 4, No. 1, pp. 51-57, 1974.Google ScholarGoogle ScholarCross RefCross Ref
  1. Dependence graphs and compiler optimizations

      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
      • Published in

        cover image ACM Conferences
        POPL '81: Proceedings of the 8th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
        January 1981
        230 pages
        ISBN:089791029X
        DOI:10.1145/567532

        Copyright © 1981 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 26 January 1981

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article

        Acceptance Rates

        POPL '81 Paper Acceptance Rate24of121submissions,20%Overall Acceptance Rate824of4,130submissions,20%

        Upcoming Conference

        POPL '25

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader