skip to main content
10.1145/384197.384212acmconferencesArticle/Chapter ViewAbstractPublication PagescpsweekConference Proceedingsconference-collections
Article

Automatic Accurate Live Memory Analysis for Garbage-Collected Languages

Authors Info & Claims
Published:01 August 2001Publication History

ABSTRACT

This paper describes a general approach for automatic and accurate live heap space and live heap space-bound analyses for high-level languages. The approach is based on program analysis and transformations and is fully automatic. The space-bound analysis produces accurate (tight) upper bounds in the presence of partially known input structures. The analyses have been implemented and experimental results confirm their accuracy.

References

  1. 1.P. Altenbernd. On the false path problem in hard real-time programs. In Proceedings of the 8th EuroMicro Workshop on Real-Time Systems, pages 102-107, L'Aquila, June 1996.Google ScholarGoogle ScholarCross RefCross Ref
  2. 2.W.-N. Chin and S.-C. Khoo. Calculating sized types. In Proceedings of the ACM SIGPLAN 2000 Workshop on Partial Evaluation and Semantics-Based Program Manipulation, pages 62-72. ACM, New York, Jan. 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3.T. H. Cormen, C. E. Leiserson, and R. L. Rivest. Introduction to Algorithms. The MIT Press/McGraw-Hill, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4.K. Crary and S. Weirich. Resource bound certification. In Conference Record of the 27th Annual ACM Symposium on Principles of Programming Languages. ACM, New York, Jan. 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5.Proceedings of the 3rd European Symposium on Programming, volume 432 of Lecture Notes in Computer Science. Springer-Verlag, Berlin, May 1990.Google ScholarGoogle Scholar
  6. 6.P. Flajolet, B. Salvy, and P. Zimmermann. Automatic average-case analysis of algorithms. Theoretical Computer Science, Series A, 79(1):37-109, Feb. 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7.Proceedings of the 4th International Conference on Functional Programming Languages and Computer Architecture. ACM, New York, Sept. 1989. Google ScholarGoogle Scholar
  8. 8.S. Ghosh, M. Martonosi, and S. Malik. Cache miss equations: A compiler framework for analyzing and tuning memory behavior. ACM Trans. Program. Lang. Syst., 21(4):703-746, July 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. 9.R. Henriksson. Scheduling Garbage Collection in Embedded Systems. PhD thesis, Department of Computer Science, Lund University, Sept. 1998.Google ScholarGoogle Scholar
  10. 10.J. Hughes and L. Pareto. Recursion and dynamic data-structures in bounded space: Towards embedded ML programming. In Proceedings of the 1999 ACM SIGPLAN International Conference onFunctional Programming, pages 70-81. ACM, New York, Sept. 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 11.J. Hughes, L. Pareto, and A. Sabry. Proving the correctness of reactive systems using sized types. In Conference Record of the 23rd Annual ACM Symposium on Principles of Programming Languages, pages 410-423. ACM, New York, Jan. 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12.K. Inoue, H. Seki, and H. Yagi. Analysis of functional programs to detect run-time garbage cells. ACM Trans. Program. Lang. Syst., 10(4):555-578, Oct. 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 13.T. P. Jensen and T. Mogensen. A backwards analysis for compile-time garbage collection. In ESOP 1990 {5}, pages 227-239. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. 14.R. Jones and R. Lins. Garbage Collection : Algorithms for Automatic Dynamic Memory Management. John Wiley & Sons, New York, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. 15.S. B. Jones and D. Le Metayer. Compile-time garbage collection by sharing analysis. In FPCA 1989 {7}, pages 54-74. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. 16.D. E. Knuth. The Art of Computer Programming, volume 1. Addison-Wesley, Reading, Mass., 1968. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. 17.Proceedings of the ACM SIGPLAN 1999 Workshop on Languages, Compilers, and Tools for Embedded Systems. ACM, New York, May 1999. Google ScholarGoogle Scholar
  18. 18.D. Le Metayer. Ace: An automatic complexity evaluator. ACM Trans. Program. Lang. Syst., 10(2):248-266, Apr. 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 19.Y. A. Liu and G. Gomez. Automatic accurate time-bound analysis for high-level languages. In Proceedings of the ACM SIGPLAN 1998 Workshop on Languages, Compilers, and Tools for Embedded Systems, volume 1474 of Lecture Notes in Computer Science, pages 31-40. Springer-Verlag, June 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. 20.M. Martonosi, A. Gupta, and T. Anderson. Effectiveness of trace sampling for performance debugging tools. In Proceedings of the 1993 ACM SIGMETRICS Conference onMeasurement and Modeling of Computer Systems, pages 248-259. ACM, New York, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. 21.C. Y. Park. Predicting program execution times by analyzing static and dynamic program paths. Real-Time Systems, 5:31-62, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. 22.P. Persson. Live memory analysis for garbage collection in embedded systems. In LCTES 1999 {17}, pages 45-54. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. 23.W. Pugh. The Omega Test: A fast and practical integer programming algorithm for dependence analysis. Commun. ACM, 31(8), Aug. 1992.Google ScholarGoogle Scholar
  24. 24.M. Rosendahl. Automatic complexity analysis. In FPCA 1989 {7}, pages 144-156. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. 25.I. Ryu. Issues and challenges in developing embedded software for information appliances and telecommunication terminals. In LCTES 1999 {17}, pages 104-120. Invited talk. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. 26.D. Sands. Complexity analysis for a lazy higher-order language. In ESOP 1990 {5}, pages 361-376. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. 27.L. Unnikrishnan, S. D. Stoller, and Y. A. Liu. Automatic accurate stack space and heap space analysis for high-level languages. Technical Report 538, Computer Science Dept., Indiana University, Apr. 2000.Google ScholarGoogle Scholar
  28. 28.R. Wilhelm and C. Ferdinand. On predicting data cache behaviour for real-time systems. In Proceedings of the ACM SIGPLAN 1998 Workshop on Languages, Compilers, and Tools for Embedded Systems, volume 1474 of Lecture Notes in Computer Science, pages 16-30. Springer-Verlag, June 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. 29.P. Zimmermann and W. Zimmermann. The automatic complexity analysis of divide-and-conquer algorithms. In Computer and Information Sciences VI. Elsevier, 1991.Google ScholarGoogle Scholar

Index Terms

  1. Automatic Accurate Live Memory Analysis for Garbage-Collected Languages

        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
          LCTES '01: Proceedings of the ACM SIGPLAN workshop on Languages, compilers and tools for embedded systems
          August 2001
          250 pages
          ISBN:1581134258
          DOI:10.1145/384197

          Copyright © 2001 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: 1 August 2001

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • Article

          Acceptance Rates

          Overall Acceptance Rate116of438submissions,26%

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader