Title
Towards region-based memory management for Go
Abstract
Region-based memory management aims to lower the cost of deallocation through bulk processing: instead of recovering the memory of each object separately, it recovers the memory of a region containing many objects. It relies on static analysis to determine the set of memory regions needed by a program, the program points at which each region should be created and removed, and, for each memory allocation, the region that should supply the memory. The concurrent language Go has features that pose interesting challenges for this analysis. We present a novel design for region-based memory management for Go, combining static analysis, to guide region creation, and lightweight runtime bookkeeping, to help control reclamation. The main advantage of our approach is that it greatly limits the amount of re-work that must be done after each change to the program source code, making our approach more practical than existing RBMM systems. Our prototype implementation covers most of the sequential fragment of Go, and preliminary results are encouraging.
Year
DOI
Venue
2012
10.1145/2247684.2247695
MSPC
Keywords
Field
DocType
concurrent language,rbmm system,region-based memory management,program source code,memory allocation,bulk processing,program point,region creation,memory region,towards region-based memory management,static analysis,source code,region based memory management,program analysis,memory management
Interleaved memory,Extended memory,Computer science,Parallel computing,Memory management,Memory map,Memory segmentation,Flat memory model,Distributed shared memory,Region-based memory management,Distributed computing
Conference
Citations 
PageRank 
References 
1
0.38
10
Authors
4
Name
Order
Citations
PageRank
Matthew Davis110.38
Peter Schachte225622.76
Zoltan Somogyi3571141.85
Harald Søndergaard485879.52