skip to main content
10.1145/277650.277748acmconferencesArticle/Chapter ViewAbstractPublication PagespldiConference Proceedingsconference-collections
Article
Free Access

Memory management with explicit regions

Authors Info & Claims
Published:01 May 1998Publication History

ABSTRACT

Much research has been devoted to studies of and algorithms for memory management based on garbage collection or explicit allocation and deallocation. An alternative approach, region-based memory management, has been known for decades, but has not been well-studied. In a region-based system each allocation specifies a region, and memory is reclaimed by destroying a region, freeing all the storage allocated therein. We show that on a suite of allocation-intensive C programs, regions are competitive with malloc/free and sometimes substantially faster. We also show that regions support safe memory management with low overhead. Experience with our benchmarks suggests that modifying many existing programs to use regions is not difficult.

References

  1. AFL95.Alexander Aiken, Manuel Fahndrich, and Raph Levien. Better static memory management' improving region-based analysis of higher-order languages. In Proceedings of the A CM SIGPLAN '95 Conference on Programming Language Design and Implementation (PLDI), pages 174-185, La Jolla, CA, June 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Bak78.Henry G. Baker. List processing in real-time on a serial computer. Communications of the A CM, 21(4):280-94, 1978. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Bob80.Daniel G. Bobrow. Managing re-entrant structures using reference counts. A CM Transactions on Programming Languages and Systems, 2(3):269-273, July 1980. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. BTV96.Lars Birkedal, Mads Tofte, and Magnus Vejlstrup. From region inference to yon Neumann machines via region representation inference. In Proceedings of the ~3rd A CM SIGPLAN-$IGACT Symposium on Principles of Programming Languages, St. Petersburg Beach, FL, January 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. BW88.Hans-Juergen Boehm and Mark Weiser. Garbage collection in an uncooperative environment. Software Practice and Experience, 18(9):807-820, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. BZ93.David A. Barrett and Benjamin G. Zorn. Using lifetime predictors to improve memory allocation performance. In Proceedings of the A CM SIGPLAN '93 Conference on Programming Languages Design and Implementation, pages 187-196, Albuquerque, New Mexico, June 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. DB76.L. Peter Deutsch and Daniel G. Bobrow. An efficient incremental automatic garbage collector. Communications of the A CM, 19(9):522-526, September 1976. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. DDZ94.David Detlefs, Al Dosser, and Benjamin Zorn. Memory allocation costs in large C and C++ programs. Software Practice and Experience, 24(6), 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. FH95.Chris W. Fraser and David R. Hanson. A Retargetable C Compiler: Design and Implementation. Benjamin/Cummings Pub. Co., Redwood City, CA, USA, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. GJS96.j. Gosling, B. Joy, and G. Steele. The Java Language Specification. The Java Series. Addison-Wesley, Reading, MA, USA, June 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. GZ93.Dirk Grtmwald and Benjamin Zorn. Customalloc: Efficient, synthesised memory allocators. Software Practice and Experience, 23:851-869, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. GZH93.Dirk Grunwald, Benjamin Zorn, and Robert Henderson. Improving the cache locality of memory allocation. In Proceedings of the A CM SIGPLAN '93 Conference on Programming Languages Design and Implementation, pages 177-186, Albuquerque, New Mexico, June 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Han90.David R. Hanson. Fast allocation and deallocation of memory based on object lifetimes. Software Practice and Experience, 20(1):5-12, January 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. IY90.Yuuji Ichisugi and Akinori Yonezawa. Distributed garbage collection using group reference counting. In OOPSLA/ECOOP '90 Workshop on Garbage Collection in Object- Oriented Systems, October 1990.Google ScholarGoogle Scholar
  15. Ros67.D.T. Ross. The AED free storage package. Communications of the A CM, 10(8):481- 492, August 1967. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. SO96.David Stoutamire and Stephen Omohundro. The Sather 1.1 Specification. Technical Report TR-96-012, International Computer Science Institute, Berkeley, CA, August 1996.Google ScholarGoogle Scholar
  17. Sto97.D. Stoutamire. Portable, Modular Expression of Locality. PhD thesis, University of California at Berkeley, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. TT97.Mads Tofte and Jean-Pierre Talpin. Regionbased memory management. Information and Computation, 132(2):109-176, February 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Vo96.Kiem-Phong Vo. Vmalloc: A general and efficient memory allocator. Software Practice and Experience, 26(3):357-374, March 1996.Google ScholarGoogle ScholarCross RefCross Ref
  20. Wil92.Paul R. Wilson. Uniprocessor garbage collection techniques. In Proceedings of International Workshop on Memory Management, volume 637 of Lecture Notes in Computer Science, St Malo, France, September 1992. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. WJ93.Paul R. Wilson and Mark S. Johnstone. Truly real-time non-copying garbage collection. In OOPSLA/ECOOP '93 Workshop on Garbage Collection in Object-Oriented Systems, October 1993.Google ScholarGoogle Scholar
  22. WJNB95.Paul R. Wilson, Mark S. Johnstone, Michael Neely, and David Boles. Dynamic storage allocation: A survey and critical review. In Proceedings of International Workshop on Memory Management, volume 986 of Lecture Notes in Computer Science, Kinross, Scotland, September 1995. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. YSP+98.Kathy Yelick, Luigi Semenzato, Geoff Pike, Carleton Miyamoto, Ben Liblit, Arvind Krishnamurthy, Paul Hilfmger, Susan Graham, David Gay, Phil Colella, and Alex Aiken. Titanium: A High-Performance Java Dialect. In Proceedings of A CM 1998 Workshop on Java for High-Performance Network Computing, pages 1-14, Palo Alto, CA, February 1998.Google ScholarGoogle Scholar

Index Terms

  1. Memory management with explicit regions

    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
      PLDI '98: Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
      May 1998
      357 pages
      ISBN:0897919874
      DOI:10.1145/277650

      Copyright © 1998 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 May 1998

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • Article

      Acceptance Rates

      PLDI '98 Paper Acceptance Rate31of136submissions,23%Overall Acceptance Rate406of2,067submissions,20%

      Upcoming Conference

      PLDI '24

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader