Docstoc

Distributed Garbage Collection Algorithms

Document Sample
Distributed Garbage Collection Algorithms Powered By Docstoc
					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?

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:11
posted:6/4/2012
language:English
pages:33