Algorithms for on-the-fly garbage collection
ACM Transactions on Programming Languages and Systems (TOPLAS)
A distributed garbage collection algorithm
Proc. of a conference on Functional programming languages and computer architecture
Cyclic reference counting for combinator machines
Proc. of a conference on Functional programming languages and computer architecture
ORBIT: an optimizing compiler for scheme
SIGPLAN '86 Proceedings of the 1986 SIGPLAN symposium on Compiler construction
Distributed garbage collection using reference counting
Volume II: Parallel Languages on PARLE: Parallel Architectures and Languages Europe
An efficient garbage collection scheme for parallel computer architectures
Volume II: Parallel Languages on PARLE: Parallel Architectures and Languages Europe
Parallel garbage collection for graph machines
Proc. of a workshop on Graph reduction
A protocol for distributed reference counting
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
Garbage Collection of Linked Data Structures
ACM Computing Surveys (CSUR)
List processing in real time on a serial computer
Communications of the ACM
On-the-fly garbage collection: an exercise in cooperation
Communications of the ACM
An efficient, incremental, automatic garbage collector
Communications of the ACM
Garbage collection and task deletion in distributed applicative processing systems
LFP '82 Proceedings of the 1982 ACM symposium on LISP and functional programming
AN ABSTRACT IMPLEMENTATION FOR A GENERALIZED DATA FLOW LANGUAGE
AN ABSTRACT IMPLEMENTATION FOR A GENERALIZED DATA FLOW LANGUAGE
Object and task reclamation in distributed applicative processing systems
Object and task reclamation in distributed applicative processing systems
Reference escape analysis: optimizing reference counting based on the lifetime of references
PEPM '91 Proceedings of the 1991 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The derivation of distributed termination detection algorithms from garbage collection schemes
ACM Transactions on Programming Languages and Systems (TOPLAS)
A bibliography on garbage collection and related topics
ACM SIGPLAN Notices
Indirect distributed garbage collection: handling object migration
ACM Transactions on Programming Languages and Systems (TOPLAS)
PPOPP '97 Proceedings of the sixth ACM SIGPLAN symposium on Principles and practice of parallel programming
Hierarchical distributed reference counting
Proceedings of the 1st international symposium on Memory management
A distributed garbage collector with diffusion tree reorganisation and mobile objects
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Garbage collecting the Internet: a survey of distributed garbage collection
ACM Computing Surveys (CSUR)
Garbage Collection in a Distributed Object-Oriented System
IEEE Transactions on Knowledge and Data Engineering
Fractional Weighted Reference Counting
Euro-Par '01 Proceedings of the 7th International Euro-Par Conference Manchester on Parallel Processing
Strong stable properties in distributed systems
Distributed Computing
Fast local-spin abortable mutual exclusion with bounded space
OPODIS'10 Proceedings of the 14th international conference on Principles of distributed systems
Hi-index | 0.00 |
This paper describes generational reference counting, a new distributed storage reclamation scheme for loosely-coupled multiprocessors. It has a significantly lower communication overhead than distributed versions of conventional reference counting. Although generational reference counting has greater computational and space requirements than ordinary reference counting, it may provide a significant saving in overall execution time on machines in which message passing is expensive.The communication overhead for generational reference counting is one message for each copy of an interprocessor reference (pointer). Unlike conventional reference counting, when a reference to an object is copied no message is sent to the processor on which the object lies. A message is sent only when a reference is discarded. Unfortunately, generational reference counting shares conventional reference counting's inability to reclaim cyclical structures.In this paper, we present the generational reference counting algorithm, prove it correct, and discuss some refinements that make it more efficient. We also compare it with weighted reference counting, another distributed reference counting scheme described in the literature.