Distributed Garbage Collection for Mobile Actor

Distributed Garbage Collection for Mobile Actor Wei-Jen Wang Carlos A. Varela Automatic distributed garbage collection (GC) gives abstraction to grid application development, promoting code quality and improving resource management. Unreachability of active objects or actors from the root set is not a sufficient condition to collect actor garbage, making passive object GC algorithms unsafe when directly used on actor systems. In practical actor languages, all actors have references to the root set since they can interact with users, e.g., through standard input or output streams. Based on this observation, we introduce pseudo roots: a dynamic set of actors that can be viewed as the root set. Pseudo roots use protected (undeletable) references to ensure that no actors are erroneously collected even with messages in transit. Following this idea, we introduce a new direction of actor GC, and demonstrate it by developing a distributed GC framework. The framework can thus be used for automatic life time management of mobile reactive processes with unordered asynchronous communication. This report is an extended version of [42]. It provides more information about how we built a distributed garbage collector with the help of the pseudo root approach. It also shows experimental results for local GC. Department of Computer Science, Rensselaer Polytechnic Institute, Troy, NY cs-06-04

Distributed Garbage Collection for Mobile Actor

Wei-Jen Wang

Carlos A. Varela

Automatic distributed garbage collection (GC) gives abstraction to grid application development, promoting code quality and improving resource management. Unreachability of active objects or actors from the root set is not a sufficient condition to collect actor garbage, making passive object GC algorithms unsafe when directly used on actor systems. In practical actor languages, all actors have references to the root set since they can interact with users, e.g., through standard input or output streams. Based on this observation, we introduce pseudo roots: a dynamic set of actors that can be viewed as the root set. Pseudo roots use protected (undeletable) references to ensure that no actors are erroneously collected even with messages in transit. Following this idea, we introduce a new direction of actor GC, and demonstrate it by developing a distributed GC framework. The framework can thus be used for automatic life time management of mobile reactive processes with unordered asynchronous communication. This report is an extended version of [42]. It provides more information about how we built a distributed garbage collector with the help of the pseudo root approach. It also shows experimental results for local GC.

Department of Computer Science, Rensselaer Polytechnic Institute, Troy, NY

cs-06-04