Advertisement

Compiling at 1000 MHz and beyond

A commentary on future compiler technology
  • D. B. Wortman
Chapter
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT)

Abstract

The rapid changes in computer hardware technology that have occurred in the past are expected to continue well past the year 2000. This paper investigates the impact that these trends will have on the programming language compiler. We examine the dual questions of
  1. 1.

    How will the internal organization and structure of compilers need to change in order to adapt to new technology?

     
  2. 2.

    How will the processing performed by compilers need to change in order to keep up with changes in the underlying hardware?

     

Keywords

Compilation programming language processors technology forecast 

References

  1. Adams, R., Tichy, W. Si Weinert, A. (1994), ‘The cost of selective recompilation and environment processing’, ACM Transactions on Software Engineering and Methodology 3 (1), 3–28.CrossRefGoogle Scholar
  2. Ammons, G., Ball, T. & Larus, J. (1997), Exploiting hardware performance counters with flow and context sensitive profiling, in ‘Proceedings of the ACM Sigplan Symposium on Programming Language Design and Implementation’, pp. 85–96.Google Scholar
  3. Anon (1996), ‘Mitshubishi java device’. URL: http://www.melco.co.jp/service/m32r/
  4. August, D., Hwu, W. & Mahlke, S. (1997), A framework for balancing flow control and prediction, in ‘Proceedings of the 30th International Symposium on Microarchiitecture’.Google Scholar
  5. Baalbergen, E. H. (1988), Design and implementation of parallel make, in U. Association, ed., ‘Computing Systems, Spring, 1988.’, Vol. 1, USENIX, pp. 135–158.Google Scholar
  6. Blainey, B. & Archambault, R. (1997), The toronto portable optimizer: Engineering large scale optimization, in ‘CASCON 97 Compiler Optimization Workshop’, IBM Canada Centre for Advanced Studies.Google Scholar
  7. Burger, D. & Goodman, J. (1997), ‘Billion transister architectures’, IEEE Computer 30 (9), 46–48.CrossRefGoogle Scholar
  8. Cashin, P., Joliat, M., Kamel, R. & Lasker, D. (1981), Experience with a modular typed language: Protel, in ‘Proceedings of the 5th International Conference on Software Engineering’, pp. 136–143.Google Scholar
  9. Chaitin, G. (1982), Register allocation and spilling via graph coloring, in ‘Proceedings of the ACM Sigplan Symposium on Compiler Construction’, pp. 98–105.Google Scholar
  10. Crawford, J. & Huck, J. (1997), Motivation and design approach for the is-64 64-bit instruction set architecture, in ‘Microprocessor Forum’.Google Scholar
  11. Ernst, J., Evans, W., Fraser, C., Lucco, S. & Proebsting, T. (1997), Code compression, in ‘Proceedings of the ACM SIGPLAN ’97 Conference on Programming Language Design and Implementation’, pp. 358–365.Google Scholar
  12. Fischer, C. & LeBlanc, Jr., R. (1991), Advanced Compiler Design Implementation, Benjamin/Cummings Publishing Co.Google Scholar
  13. Goodwin, D. (1997), Interprocedural dataflow analysis in an executable optimizer, in ‘Proceedings of the ACM Sigplan Symposium on Programming Language Design and Implementation’, pp. 122–133.Google Scholar
  14. Hashemi, A., Kaeli, D. & Calder, B. (1997), Efficient procedure mapping using cache line coloring, in ‘Proceedings of the ACM Sigplan Symposium on Programming Language Design and Implementation’, pp. 171–182.Google Scholar
  15. Hillis, W. D. & Steele, Jr., G. L. (1986), ‘Data parallel algorithms’, Communications of the ACM 29 (12), 1170–1183.CrossRefGoogle Scholar
  16. Hwu, W. (1997), Predicated microprocessor architectures and their enabling compiler technology, in ‘GASCON 97 Compiler Optimization Workshop’, IBM Canada Centre for Advanced Studies.Google Scholar
  17. IEEE Spectrum Staff (1997), Technology 1997: Analysis and Forecast Issue, Vol. 34, IEEE Spectrum.Google Scholar
  18. Kalsow, B. (1996), ‘Re: Object-oriented compiler construction’, USENET News comp.compilers.Google Scholar
  19. Kalsow, B., Muller, E. & Heydon, A. (1995), ‘Src modula-3: a tour of the compiler’. URL: http://www.research.digital.com/SRC/modula-3/html/compiler.html
  20. Koehler, B. & Horspool, R. (1996), ‘Ccc: A caching compiler for c’, Software - Practice & Experience.Google Scholar
  21. Linton, M. & Quong, R. (1989), ‘A macroscopic profile of program compilation and linking’, IEEE Transactions on Software Engineering 15(4), 427–436.CrossRefGoogle Scholar
  22. Litman, A. (1993), ‘An implementation of precompiled headers’, Software–Practice & Experience 23 (3), 341–350.CrossRefMathSciNetGoogle Scholar
  23. Morgan, R. (1997), private communication.Google Scholar
  24. Muchnick, S. S. (1997), Crafting a Compiler with C, Morgan Kaufman. Poletto, M., Engler, D. & Kaashoek, M. (1997), tcc: A system for fast flexible and high-level dynamic code generation, in ‘Proceedings of the ACM Sigplan Symposium on Programming Language Design and Implementation’, pp. 109–121.Google Scholar
  25. Sites, R. L. (1979), How to use 1000 registers, in ‘Proceedings of 1st Caltech Conference on VLSI’, Caltech CS dept, pp. 527–532.Google Scholar
  26. Vandevoorde, M. T. (1987), Parallel compilation on a tightly-coupled multiprocessor, Master’s thesis, Massachusetts Institute of Technology.Google Scholar
  27. Waite, W. (1986), ‘The cost of lexical analysis’, Software–Practice H Experience 16 (5), 473–488.CrossRefGoogle Scholar
  28. Wortman, D. & Junkin, M. (1992), A concurrent compiler for modula-2+, in ‘Proceedings of the ACM Sigplan Symposium on Programming Language Design and Implementation’, pp. 68–81.Google Scholar
  29. Yershov, A. (1965), Alpha - an automatic programming system of high efficiency, in ‘IFIP Congress ′65’.Google Scholar
  30. Zhou, S., Zheng, X., Wang, J. & Delisle, P. (1994), ‘Utopia: A load sharing system for large, heterogeneous distributed computer systems’, Software - Practice & Experience.Google Scholar

Copyright information

© IFIP 1998

Authors and Affiliations

  • D. B. Wortman
    • 1
  1. 1.Department of Computer ScienceUniversity of TorontoTorontoCanada

Personalised recommendations