Distributed Garbage Collection Algorithms stefan brunthaler Overview • Brief Introduction • Reference Counting • Weighted Reference Counting • Indirect Reference Counting • Mark & Sweep • Marktree • Tracing with timestamps • Stop & Copy Introduction – Definitions, 1 What is a distributed system? “A system in which hardware or software components located at networked computers communicate and coordinate their actions only by message passing.” --Colouris, 2001 Introduction – Definitions, 2 What is a distributed system? “A distributed system is a collection of independent computers that appear to the users of the system as a single computer.” --Tanenbaum, 1994 Introduction – Nomenclature A distributed system: A B C Introduction – Nomenclature local objects: A B C Introduction – Nomenclature global objects: A B C Introduction – Nomenclature export record: A B C Introduction – Nomenclature import record: A B C Introduction – Nomenclature intrasite references: A B C Introduction – Nomenclature intersite references: A B C Introduction – Networking problems: latency A B C Introduction – Networking problems: non-causality A B C Reference Counting • Reference Counting • Weighted Reference Counting • Indirect Reference Counting Weighted Reference Counting • proposed independently by [Watson and Watson, 1987], and [Bevan, 1987] Weighted Reference Counting Where are we? A B C Weighted Reference Counting Memory cell layout count weight ref Weighted Reference Counting Algorithm 96 128 128 64 32 Weighted Reference Counting Algorithm 1 128 1 64 128 Weighted Reference Counting Domino effect [Rudalics, 1990] A B C 1 Weighted Reference Counting pros: • no race conditions (latency) cons: • susceptible to unreliable messaging • duplicated messages, • message failures. Indirect Reference Counting • proposed by [Ichisugi and Yonezawa, 1990], [Rudalics, 1990], and [Piquer, 1991] Indirect Reference Counting Where are we? A B C Indirect Reference Counting Memory cell layout copies parent ref Indirect Reference Counting Algorithm A B C Indirect Reference Counting inverted diffusion tree 1 2 2 1 1 0 0 0 0 Mark & Sweep • Mark & Sweep • Marktree • Tracing with timestamps Marktree • after [Hudak and Keller, 1982], • based on on-the-fly garbage collector as proposed by [Dijkstra et al., 1978], • instead of recursion uses mark tasks, • back propagation using uptree tasks, • tricolor scheme. Marktree Tracing with timestamps • based on Hughes, 1985 Tracing with timestamps Algorithm A m&s B m&s C m&s Stop & Copy • based on Rudalics, 1986 rootspace fromspace tospace Danke für Eure Aufmerksamkeit Fragen?
Pages to are hidden for
"Distributed Garbage Collection Algorithms"Please download to view full document