ParMarkSplit: A Parallel Mark-Split Garbage Collector Based on a Lock-Free Skip-List
Paper i proceeding, 2014

Mark-split is a garbage collection algorithm that combines advantages of both the mark-sweep and the copying collection algorithms. In this paper, we present a parallel mark-split garbage collector (GC). Our parallel design introduces and makes use of an efficient concurrency control mechanism for handling the list of free memory intervals. This mechanism is based on a lock-free skip-list design which supports an extended set of operations. Beside basic operations, it can perform a composite one that can search and remove and also insert two elements atomically. We have implemented the parallel mark-split GC in OpenJDK’s HotSpot virtual machine. We experimentally evaluate our collector and compare it with the default concurrent mark-sweep GC in HotSpot, using the DaCapo benchmarks, on two contemporary multiprocessor systems; one has 12 Intel Nehalem cores with HyperThreading and the other has 48 AMD Bulldozer cores. The evaluation shows that our parallel mark-split keeps the characteristics of the sequential mark-split, that it performs better than the concurrent mark-sweep in applications that have low live/garbage ratio, and have live objects locating contiguously, therefore being marked consecutively. Our parallel mark-split performs significantly better than a trivial parallelization based on locks in terms of both collection time and scalability.

Lock-free

Skip-List

Parallel

Garbage Collector

JAVA

Författare

Dang Nhan Nguyen

Chalmers, Data- och informationsteknik, Nätverk och system

Philippas Tsigas

Chalmers, Data- och informationsteknik, Nätverk och system

Håkan Sundell

Högskolan i Borås

Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

03029743 (ISSN) 16113349 (eISSN)

Vol. 8878 372-387
978-3-319-14471-9 (ISBN)

Ämneskategorier

Datorteknik

Data- och informationsvetenskap

Datavetenskap (datalogi)

Styrkeområden

Informations- och kommunikationsteknik

DOI

10.1007/978-3-319-14472-6_25

ISBN

978-3-319-14471-9

Mer information

Senast uppdaterat

2018-03-08