Title
Exploiting FIFO Scheduler to Improve Parallel Garbage Collection Performance.
Abstract
Recent studies have found that parallel garbage collection performs worse with more CPUs and more collector threads. As part of this work, we further investigate this enomenon and find that poor scalability is worst in highly scalable Java applications. Our investigation to find the causes clearly reveals that efficient multi-threading in an application can prolong the average object lifespan, which results in less effective garbage collection. We also find that prolonging lifespan is the direct result of Linuxu0027s Completely Fair Scheduler due to its round-robin like behavior that can increase the heap contention between the application threads. Instead, if we use pseudo first-in-first-out to schedule application threads in large multicore systems, the garbage collection scalability is significantly improved while the time spent in garbage collection is reduced by as much as 21%. The average execution time of the 24 Java applications used in our study is also reduced by 11%. Based on this observation, we propose two approaches to optimally select scheduling policies based on application scalability profile. Our first approach uses the profile information from one execution to tune the subsequent executions. Our second approach dynamically collects profile information and performs policy selection during execution.
Year
DOI
Venue
2016
10.1145/2892242.2892248
VEE
Keywords
Field
DocType
garbage collection, object lifespan, process scheduling
Garbage,Computer science,Manual memory management,Scheduling (computing),Parallel computing,Heap (data structure),Real-time computing,Thread (computing),Garbage collection,Java,Operating system,Scalability
Conference
Volume
Issue
ISSN
51
7
0362-1340
ISBN
Citations 
PageRank 
978-1-4503-3947-6
1
0.35
References 
Authors
16
6
Name
Order
Citations
PageRank
Junjie Qian182.13
Witawas Srisa-an229428.67
Sharad C. Seth367193.61
Hong Jiang42137157.96
Du Li539824.03
Pan Yi610.35