Better Static Memory Management: Improving Region-Based

  • Authors:
  • Alex Aiken;Manuel Fahndrich;Raph Levien

  • Affiliations:
  • -;-;-

  • Venue:
  • Better Static Memory Management: Improving Region-Based
  • Year:
  • 1995

Quantified Score

Hi-index 0.00

Visualization

Abstract

Static memory management replaces runtime garbage collection with compile-time annotations making all memory allocations and deallocations explicit in a program. We improve upon the Tofte/Talpin region-based scheme for compile time memory management. In the Tofte/Talpin approach, all values, including closures, are stored in regions. Region lifetimes coincide with lexical scope, thus forming a runtime stack of regions and eliminating the need for garbage collection. We relax the requirement that region lifetimes be lexical. Rather, regions are allocated late and deallocated as early as possible by explicit memory operations. The determination of where allocate and deallocate annotations are placed is made by solving a system of constraints that expresses all possible annotations. Experiments show that our approach reduces memory requirements significantly, in some cases asymptotically.