Collecting cyclic distributed garbage by controlled migration
Distributed systems with a large number of nodes use internode reference counting for timely and fault-tolerant garbage collection. However, this fails to collect cyclic garbage distributed across nodes. One fix is to migrate all objects on a garbage cycle to a single node, where they can be collect...
Gespeichert in:
Veröffentlicht in: | Distributed computing 1997, Vol.10 (2), p.79-86 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Distributed systems with a large number of nodes use internode reference counting for timely and fault-tolerant garbage collection. However, this fails to collect cyclic garbage distributed across nodes. One fix is to migrate all objects on a garbage cycle to a single node, where they can be collected by the tracing-based local collector. Existing proposals based on this technique have practical problems due to unnecessary migration of objects. We propose a scheme that avoids migration of live objects, batches objects to avoid a cascade of migration messages, and short-cuts the migration path to avoid multiple migrations. We use simple estimates to detect objects that are highly likely to be cyclic garbage and to select a node to which such objects are migrated. The scheme collects all distributed cyclic garbage, has low overhead, and preserves the decentralized and fault-tolerant nature of distributed reference counting and migration. |
---|---|
ISSN: | 0178-2770 1432-0452 |
DOI: | 10.1007/s004460050026 |