Title
A parallel, incremental and concurrent GC for servers
Abstract
Multithreaded applications with multi-gigabyte heaps running on modern servers provide new challenges for garbage collection (GC). The challenges for "server-oriented" GC include: ensuring short pause times on a multi-gigabyte heap, while minimizing throughput penalty, good scaling on multiprocessor hardware, and keeping the number of expensive multi-cycle fence instructions required by weak ordering to a minimum. We designed and implemented a fully parallel, incremental, mostly concurrent collector, which employs several novel techniques to meet these challenges. First, it combines incremental GC to ensure short pause times with concurrent low-priority background GC threads to take advantage of processor idle time. Second, it employs a low-overhead work packet mechanism to enable full parallelism among the incremental and concurrent collecting threads and ensure load balancing. Third, it reduces memory fence instructions by using batching techniques: one fence for each block of small objects allocated, one fence for each group of objects marked, and no fence at all in the write barrier. When compared to the mature well-optimized parallel stop-the-world mark-sweep collector already in the IBM JVM, our collector prototype reduces the maximum pause time from 284 ms to 101 ms, and the average pause time from 266 ms to 66 ms while only losing 10% throughput when running the SPECjbb2000 benchmark on a 256 MB heap on a 4-way 550 MHz Pentium multiprocessor.
Year
DOI
Venue
2002
10.1145/512529.512546
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Keywords
Field
DocType
garbage collection,load balance,weak ordering,java
Programming language,Computer science,Server,Heap (data structure),Real-time computing,Write barrier,Load balancing (computing),Parallel computing,Thread (computing),Multiprocessing,Garbage collection,Pentium,Operating system
Conference
Volume
Issue
ISSN
37
5
0362-1340
ISBN
Citations 
PageRank 
1-58113-463-0
26
1.32
References 
Authors
26
6
Name
Order
Citations
PageRank
Yoav Ossia1874.16
Ori Ben-Yitzhak21367.04
Irit Goft3703.67
Elliot K. Kolodner448383.65
Victor Leikehman5703.67
Avi Owshanko6533.05