DocumentCode :
2976785
Title :
Profiling Object Life Ranges for Detecting Memory Leaks in Java Virtual Machine
Author :
Qingyue Sun ; Xiaohua Shi ; Junru Xie
Author_Institution :
Sch. of Comput. Sci. & Eng., Beihang Univ., Beijing, China
fYear :
2012
fDate :
14-16 Dec. 2012
Firstpage :
154
Lastpage :
157
Abstract :
Java Virtual Machine (JVM) has its garbage collector (GC) to manage all the java objects and the heap memory. However, in many Java applications, some Java objects will not be visited by the programs, but could not be automatically reclaimed by the garbage collector. These Java objects would cause the memory leaks. Obtaining the life ranges of all Java objects in the heap memory could help programmers to find the kind of memory leaks. This paper presents two approaches to scan the garbage-collector-managed heap memory to record the living status of all Java object at runtime. One approach is called All-Scanning mechanism, and the other is called Incremental-Scanning mechanism. The All-Scanning mechanism scans heap objects after GC reclaiming the objects in a static way. The Incremental-Scanning mechanism could incrementally collect the status of heap objects when GC reclaims the objects. We use SpecJVM98 and SpecJBB2000 to evaluate the runtime performance and analyze the profiling results for both mechanisms. The profiling results of the two mechanisms are consistent, while the Incremental-Scanning mechanism is at least 1.82 times faster than the All-Scanning one on average. From the profiling results, we could figure out the life cycles of every object, the movements of the object allocations, and the potentially leaked objects. We also use three workloads, namely List Leak, Swap Leak and MySql, to demonstrate how to find out the leaked objects from the profiling results.
Keywords :
Java; object-oriented methods; storage management; virtual machines; JVM; Java object management; Java virtual machine; MySQL workload; SpecJBB2000; SpecJVM98; all-scanning mechanism; garbage-collector-managed heap memory; incremental-scanning mechanism; list leak workload; memory leak detection; object life range profiling; swap leak workload; Data structures; Educational institutions; Java; Resource management; Runtime; Garbage Collector; Java Virtual Machine; Memory Leak;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel and Distributed Computing, Applications and Technologies (PDCAT), 2012 13th International Conference on
Conference_Location :
Beijing
Print_ISBN :
978-0-7695-4879-1
Type :
conf
DOI :
10.1109/PDCAT.2012.114
Filename :
6589256
Link To Document :
بازگشت