MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

Dynamic Storage Allocation: A Survey and Critical Review (1995) [153 citations — 6 self]

Abstract:

. Dynamic memory allocation has been a fundamental part of most computer systems since roughly 1960, and memory allocation is widely considered to be either a solved problem or an insoluble one. In this survey, we describe a variety of memory allocator designs and point out issues relevant to their design and evaluation. We then chronologically survey most of the literature on allocators between 1961 and 1995. (Scores of papers are discussed, in varying detail, and over 150 references are given.) We argue that allocator designs have been unduly restricted by an emphasis on mechanism, rather than policy, while the latter is more important; higher-level strategic issues are still more important, but have not been given much attention. Most theoretical analyses and empirical allocator evaluations to date have relied on very strong assumptions of randomness and independence, but real program behavior exhibits important regularities that must be exploited if allocator...

Citations

684 The Design and Implementation of a Log-Structured File System – Rosenblum, Ousterhout - 1991
390 Uniprocessor garbage collection techniques – WILSON - 1992
301 Shade: A fast instruction-set simulator for execution profiling – Cmelik, Keppel - 1994
254 Naming and necessity – Kripke
249 The Art of Computer Programming. Volume 1/Fundamental Algorithms – Knuth - 1973
243 Garbage collection in an uncooperative environment – Boehm, Weiser - 1988
238 Optimally Profiling and Tracing Programs – Ball, Larus - 1994
224 Evaluating Associativity in CPU Caches – Hill, Smith - 1989
217 A real-time garbage collector based on the lifetimes of objects – Lieberman, Hewitt - 1983
182 Notes on Structured Programming – Dijkstra - 1972
172 The Origin of Species – Darwin - 1958
128 Garbage collection in large lisp systems – Moon - 1984
126 The Design and Evaluation of a High Performance Smalltalk System. ACM Distinguished Dissertations – Ungar - 1987
120 Mostly parallel garbage collection – BOEHM, DEMERS, et al. - 1991
96 Virtual Memory – Denning - 1970
95 Texas: An efficient, portable, persistent store – Singhal, Kakkad, et al. - 1992
80 Garbage collection in an uncooperative environment. Software Practice and Experience – Boehm, Weiser - 1988
77 The measured cost of conservative garbage collection. Software Practice and Experience – Zorn - 1993
73 Darwin’s Dangerous Idea – Dennett - 1995
68 Using lifetime predictors to improve memory allocation performance – Barrett, Zorn - 1993
64 Improving the cache locality of memory allocation – Grunwald, Zorn, et al. - 1993
64 A unifying look at data structures – Vuillemin - 1980
63 The data compression book – Nelson - 1992
62 Design of the opportunistic garbage collector – Wilson, Moher - 1989
61 The portable common runtime approach to interoperability – Weiser, Demers, et al. - 1989
59 A fast storage allocator – Knowlton - 1965
54 On the Fractal Dimension of Computer Programs and its Application to the Prediction of the Cache Miss Ratio – Thiebaut - 1989
52 The compression cache: Using on-line compression to extend physical memory – Douglis - 1993
50 Combining generational and conservative garbage collection: Framework and implementations – Demers, Weiser, et al. - 1990
49 Caching considerations for generational garbage collection – Wilson, Lam, et al. - 1992
48 Tenuring policies for generationbased storage reclamation – Ungar, Jackson - 1988
47 Data Structure Techniques – Standish - 1980
45 Mache: No-loss trace compaction – Samples - 1988
45 A System for Adaptive Disk Rearrangement – Vongsathorn, Carson - 1990
44 Fast allocation and deallocation of memory based on object lifetimes. 74 Practice and Experience – Hanson - 1990
41 Using key object opportunism to collect old objects – Hayes - 1991
40 Empirical Analysis of a Lisp System – Shaw - 1988
40 Effective static-graph reorganization to improve locality in garbage-collected systems – Wilson, Lam, et al. - 1991
40 Adaptive Block Rearrangement – Akyürek, Salem - 1995
36 Cache performance of garbage-collected programs – Reinhold
34 Dynamic base register caching: A technique for reducing address bus width – Farrens, Park - 1991
32 CustoMalloc: Efficient Synthesized Memory Allocators – Grunwald, Zorn - 1993
32 The Structure of Scientific Revolutions, second edition – Kuhn - 1970
32 Design of an Optimizing Compiler – Wulf, Johnsson, et al. - 1975
31 Buddy systems – Peterson, Norman - 1977
30 Sleator and Robert Endre Tarjan. Self-adjusting binary search trees – Dominic - 1985
28 Infant mortality’ and generational garbage collection – Baker - 1993
28 Natural kinds – Quine
27 Memory subsystem performance of programs with intensive heap allocation. Submitted for publication – Diwan, Tarditi, et al. - 1993
27 Empirical measurements of six allocation-intensive C programs – Zorn, Grunwald - 1992