how to CMS gc logs

Srinivas Ramakrishna ysr1729 at gmail.com
Mon Dec 17 10:21:58 PST 2012


Hi Matthew --

On Mon, Dec 17, 2012 at 6:44 AM, Matthew Young <taigetco at gmail.com> wrote:

> Hi all,
>
> Currently I am working on promotion failure about CMS, using the
> commanding line, -XX:+CMSDumpAtPromotionFailure -XX:+CMSPrintChunksInDump
> -XX:+CMSPrintObjectsInDump, below is gc log segment,
>
> (0: promotion failure size = 10)  (1: promotion failure size = 14)
> //question1, the size unit is bye or block?
>

I believe it's "heap words" (4 byte units in the case of the 32 bit JVM or
the compressed-refs 64-bit jvm, and 8 bytes in the case f of the regular
64-bit jvm).
Thus, 10 above means 40 bytes and 14 means 56 bytes (given that it appears
you are using a 32-bit JVM below).


> 0x039c0000: free block of size 16384:
> Next: 0x00000000 Prev: 0x00000000 [can't coalesce]
> //question2, what does this mean? Should I look into JVM source code to
> find the answer? if not, where to get references?
>

CMS GC uses a few blocks in the old generation to keep some book-keeping
data structures around when objects are promoted
during a scavenge. This is such a block. You can consider it CMS overhead.
I  don't know if this is explicitly called out in any of the
verbose heap options, but perhaps should be. Please look at "PromotionInfo"
and "SpoolBlock" for more information and details.


> size           bfrsurp           surplus           desired
> prvSwep           bfrSwep             count           cBirths
> cDeaths           sBirths           sDeaths
> //question3, can anyone explain these words?
>

This is a recounting of the census of historical statistics of various
kinds kept by CMS, and used to forecast demand for objects of
various sizes, and drives free block list population and free block
coalition decisions. More information on these columns can be found in
the header file allocationStats.hpp

-- ramki


> thanks
>
> _______________________________________________
> hotspot-gc-use mailing list
> hotspot-gc-use at openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-gc-use/attachments/20121217/182f9ffc/attachment.html 


More information about the hotspot-gc-use mailing list