Rodrigues, Helena and Jones, Richard
Cyclic Distributed Garbage Collection with Group Merger.
In: Jul, Eric, ed.
Proceedings of the 12th European Conference on Object-Oriented Programming.
Lecture Notes in Computer Science, 1445.
ISBN 3-540-64737-6 .
(Full text available)
This paper presents a new algorithm for distributed garbage collection and outlines its implementation within the Network Objects system. It supersedes the earlier version, /pubs/1997/548. The algorithm is based on a reference listing scheme augmented by partial tracing in order to collect distributed garbage cycles. Our collector is designed to be flexible thereby allowing efficiency, expediency and fault-tolerance to be traded against completeness. Processes may be dynamically organised into groups, according to appropriate heuristics, in order to reclaim distributed garbage cycles. Unlike previous group-based algorithms, multiple concurrent distributed garbage collections that span groups are supported: when two collections meet they may either merge, overlap or retreat. The algorithm places no overhead on local collectors and suspends local mutators only briefly. Partial tracing of the distributed graph involves only objects thought to be part of a garbage cycle: no collaboration with other processes is required.
- Depositors only (login required):