A Scalable Reference Counting Garbage Collector (1999)
| Citations: | 3 - 0 self |
BibTeX
@TECHREPORT{Levanoni99ascalable,
author = {Joseph Levanoni and Erez Petrank},
title = {A Scalable Reference Counting Garbage Collector},
institution = {},
year = {1999}
}
OpenURL
Abstract
We study concurrent garbage collection via reference counting. While tracing variants of garbage collection have been well studied with respect to concurrency, the study of reference counting has been somewhat behind. The straightforward concurrent version of reference counting is not at all scalable. Furthermore, a more advanced study by DeTreville yielded an algorithm which acquires a single lock per update of a pointer, thus, executing all updates sequentially and hindering the scalability of the algorithm. In this paper we propose a new concurrent reference counting algorithm with several desired properties. First, the algorithm employs extremely fine synchronization. In particular, updates of pointers and creation of objects require no synchronization overhead whatsoever (even not a compare-and-swap type of operation). Furthermore, the algorithm is non-disruptive: the program threads are never stopped simultaneously to cooperate with the...







