|
-Xverbosegc<options>
The syntax is
-Xverbosegc usage: -Xverbosegc[:help]|[0|1][:file=[stdout|stderr|<filename>]]
:help prints this message.
0|1 controls the printing of heap information:
0 Print after every Old Generation GC or Full GC
1 (default) Print after every Scavenge and Old Generation GC
or Full GC
:file=[stdout|stderr|<filename>] specifies output file
stderr (default) directs output to standard error stream
stdout directs output to standard output stream
<filename> file to which the output will be written
At every garbage collection, the following 20 fields are printed:
<GC: %1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11 %12 %13 %14 %15 %16 %17 %18 %19 %20>
%1: Indicates the type of the garbage collection.
1: represents a Scavenge (GC of New Generation only)
%2: indicates if this is a parallel scavenge.
0: non-parallel scavenge
n(>0): parallel scavenge, n represents the number of
parallel GC threads
2: represents an Old Generation GC or a Full GC
%2: indicates the GC reason:
1: Allocation failure
2: Call to System.gc
3: Tenured Generation full
4: Permanent Generation full
5: Train Generation full
6: Concurrent-Mark-Sweep (CMS) Generation full
7: Old generation expanded on last scavenge
8: Old generation too full to scavenge
9: FullGCAlot
10: Allocation profiler triggered
11: Last ditch collection
If the heap area holding the reflection objects (representing classes and methods) is
full, VM first invokes permanent generation collection. If that fails, then it tries to
expand permanent generation.
If that also fails, it invokes last ditch collection, to reclaim as much space as possible.
12: Heap dump triggered
13: gcLocker triggered
14: No cause specified
(Number 11: "Last ditch collection" is added since 1.4.2.03. Number 12, 13 and 14 are added since 1.4.2.10).
3: represents a complete background CMS GC
%2: indicates the GC reason:
1: Occupancy > initiatingOccupancy
2: Expanded recently
3: Incremental collection will fail
4: Linear allocation will fail
5: Anticipated promotion
4: represents an incomplete background CMS GC
(exited after yielding to foreground GC)
%2: n.m
n indicates the GC reason:
1: Occupancy > initiatingOccupancy
2: Expanded recently
3: Incremental collection will fail
4: Linear allocation will fail
5: Anticipated promotion
m indicates the background CMS state when yielding:
0: Resetting
1: Idling
2: InitialMarking
3: Marking
4: FinalMarking
5: Precleaning
6: Sweeping
%3: Program time at the beginning of the collection, in seconds
%4: Garbage collection invocation. Counts of background CMS GCs
and other GCs are maintained separately
%5: Size of the object allocation request that forced the GC,
in bytes
%6: Tenuring threshold - determines how long the new born object
remains in the New Generation
The report includes the size of each space:
Occupied before garbage collection (Before)
Occupied after garbage collection (After)
Current capacity (Capacity)
All values are in bytes
Eden Sub-space (within the New Generation)
%7: Before
%8: After
%9: Capacity
Survivor Sub-space (within the New Generation)
%10: Before
%11: After
%12: Capacity
Old Generation
%13: Before
%14: After
%15: Capacity
Permanent Generation (Storage of Reflective Objects)
%16: Before
%17: After
%18: Capacity
%19: The total stop-the-world duration, in seconds.
%20: The total time used in collection, in seconds.
|