Visible to the public SmartStealing: Analysis and Optimization of Work Stealing in Parallel Garbage Collection for Java VM.Conflict Detection Enabled

TitleSmartStealing: Analysis and Optimization of Work Stealing in Parallel Garbage Collection for Java VM.
Publication TypeConference Paper
Year of Publication2015
AuthorsJunjie Qian, Witawas Srisa-an, Du Li, Hong Jiang, Sharad Seth, Yaodong Yang
Conference NamePrinciples and Practice of Programming in Java (PPPJ)
Date Published09/2015
PublisherACM New York, NY, USA
Conference LocationMelbourne, FL
ISBN Number978-1-4503-3712-0
KeywordsCMU, Oct'15, Parallel garbage collection; Work stealing

Parallel garbage collection has been used to speedup the collection process on multicore architectures. Similar to other parallel techniques, balancing the workload among threads is critical to ensuring good overall collection performance. To this end, work stealing is employed by the current stateof-the-art Java Virtual Machine, OpenJDK, to keep GC threads from idling during a collection process. However, we found that the current algorithm is not efficient. Its usage can often cause GC performance to be worse than when work stealing is not used. In this paper, we identify three factors that affect work stealing efficiency: determining tasks that can benefit from stealing, frequency with which to attempt stealing, and performance impacts of failed stealing attempts. Based on this analysis, we propose SmartStealing, a new algorithm that can automatically decide whether to attempt stealing at a particular point during execution. If stealing is attempted, it can efficiently identify a task to steal from. We then compare the collection performances when (i) the default work stealing algorithm is used, (ii) work stealing is not used at all, and (iii) the SmartStealing approach is used. Without modifying the remaining garbage collection system, the evaluation result shows that SmartStealing can reduce the parallel GC execution time for 19 of the 21 benchmarks. The average reduction is 50.4% and the highest reduction is 78.7%. We also investigate the performances of SmartStealing on NUMA and UMA architectures.

Citation Keynode-24915

Other available formats:

Qian_SmartStealing_JA.pdfPDF document1.39 MBDownloadPreview