Garbage collection in an uncooperative environment
Software—Practice & Experience
The definition of Standard ML
Lisp and Symbolic Computation
Mostly parallel garbage collection
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
Systems programming with Modula-3
Systems programming with Modula-3
Compiler support for garbage collection in a statically typed language
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
The measured cost of conservative garbage collection
Software—Practice & Experience
SUIF: an infrastructure for research on parallelizing and optimizing compilers
ACM SIGPLAN Notices
TIL: a type-directed optimizing compiler for ML
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
Lag, drag, void and use—heap profiling and space-efficient compilation revisited
Proceedings of the first ACM SIGPLAN international conference on Functional programming
Garbage collection: algorithms for automatic dynamic memory management
Garbage collection: algorithms for automatic dynamic memory management
The measured cost of copying garbage collection mechanisms
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
Garbage collection and local variable type-precision and liveness in Java virtual machines
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Comparing mostly-copying and mark-sweep conservative collection
Proceedings of the 1st international symposium on Memory management
Compiler support to customize the mark and sweep algorithm
Proceedings of the 1st international symposium on Memory management
A brief introduction to regions
Proceedings of the 1st international symposium on Memory management
Support for garbage collection at every instruction in a Java compiler
Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation
On effectiveness of GC in Java
Proceedings of the 2nd international symposium on Memory management
The case for profile-directed selection of garbage collectors
Proceedings of the 2nd international symposium on Memory management
Heap profiling for space-efficient Java
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Accurate garbage collection in an uncooperative environment
Proceedings of the 3rd international symposium on Memory management
The Java Language Specification
The Java Language Specification
Uniprocessor Garbage Collection Techniques
IWMM '92 Proceedings of the International Workshop on Memory Management
Generation Scavenging: A non-disruptive high performance storage reclamation algorithm
SDE 1 Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
A Language-Independent Garbage Collector Toolkit
A Language-Independent Garbage Collector Toolkit
IBM Systems Journal
A comparative evaluation of parallel garbage collector implementations
LCPC'01 Proceedings of the 14th international conference on Languages and compilers for parallel computing
Birrell's distributed reference listing revisited
ACM Transactions on Programming Languages and Systems (TOPLAS)
Gated memory control for memory monitoring, leak detection and garbage collection
Proceedings of the 2005 workshop on Memory system performance
Science of Computer Programming - Special issue: Static analysis symposium (SAS 2003)
Generating object lifetime traces with Merlin
ACM Transactions on Programming Languages and Systems (TOPLAS)
Free-Me: a static analysis for automatic individual object reclamation
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
Heap reference analysis using access graphs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Object ownership profiling: a technique for finding and fixing memory leaks
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
A principled approach to nondeferred reference-counting garbage collection
Proceedings of the fourth ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Precise garbage collection for C
Proceedings of the 2009 international symposium on Memory management
SAS'03 Proceedings of the 10th international conference on Static analysis
Data Linkage Dynamics with Shedding
Fundamenta Informaticae - From Mathematical Beauty to the Truth of Nature: to Jerzy Tiuryn on his 60th Birthday
Elephant tracks: portable production of complete and precise gc traces
Proceedings of the 2013 international symposium on memory management
Hi-index | 0.00 |
The effectiveness of garbage collectors and leak detectors in identifying dead objects depends on the accuracy of their reachability traversal. Accuracy has two orthogonal dimensions: (i) whether the reachability traversal can distinguish between pointers and nonpointers (type accuracy), and (ii) whether the reachability traversal can identify memory locations that will be dereferenced in the future (liveness accuracy). This article presents an experimental study of the importance of type and liveness accuracy for reachability traversals. We show that liveness accuracy reduces the reachable heap size by up to 62% for our benchmark programs. However, the simpler liveness schemes (e.g., intraprocedural analysis of local variables) are largely ineffective for our benchmark runs: one must analyze global variables using interprocedural analysis to obtain significant benefits. Type accuracy has an insignificant impact on a garbage collector's ability to find unreachable objects in our benchmark runs. We report results for programs written in C, C++, and Eiffel.