RFR: JDK-8055845 - Add trace event for promoted objects
Bengt Rutisson
bengt.rutisson at oracle.com
Tue Aug 26 08:50:31 UTC 2014
Hi all,
Staffan sent me an updated webrev based on Erik's comments. I uploaded
it here:
http://cr.openjdk.java.net/~brutisso/8055845/webrev.01/
Thanks,
Bengt
On 2014-08-25 19:32, Staffan Friberg wrote:
> Hi Erik,
>
> No issue with naming the field class, since the event is similar to
> the Allocation event I used that as a starting point and it also uses
> class as name together with a couple of other events.
>
> Will go through the descriptions and remove periods.
>
> Object age is basically the how many times an object has been kept in
> survivor region, it is incremented each time a YC happens and the
> object is aged.
> Will see how I can update the description to make it clearer. Calling
> the field tenuringAge might help?
>
>> From the documentation,
>> http://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html
>>
>> -XX:MaxTenuringThreshold=/threshold/
>>
>> Sets the maximum tenuring threshold for use in adaptive GC
>> sizing. The largest value is 15. The default value is 15 for the
>> parallel (throughput) collector, and 6 for the CMS collector.
>>
>> The following example shows how to set the maximum tenuring
>> threshold to 10:
>>
>> -XX:MaxTenuringThreshold=10
>>
>>
>> -XX:+PrintTenuringDistribution
>>
>> Enables printing of tenuring age information. The following is an
>> example of the output:
>>
>> Desired survivor size 48286924 bytes, new threshold 10 (max 10)
>> - age 1: 28992024 bytes, 28992024 total
>> - age 2: 1366864 bytes, 30358888 total
>> - age 3: 1425912 bytes, 31784800 total
>> ...
>>
>> Age 1 objects are the youngest survivors (they were created after
>> the previous scavenge, survived the latest scavenge, and moved
>> from eden to survivor space). Age 2 objects have survived two
>> scavenges (during the second scavenge they were copied from one
>> survivor space to the next). And so on.
>>
>> In the preceding example, 28 992 024 bytes survived one scavenge
>> and were copied from eden to survivor space, 1 366 864 bytes are
>> occupied by age 2 objects, etc. The third value in each row is
>> the cumulative size of objects of age n or less.
>>
>> By default, this option is disabled.
>>
>
> Thanks for the comments,
> Staffan
>
> On 08/25/2014 09:55 AM, Erik Gahlin wrote:
>> Did you manage to call the field "class"? It's a reserved word in
>> C++, so we had to use "klass" in the past
>>
>> Descriptions with only one sentence shouldn't end with "."
>>
>> How is "Object Age" measured?
>>
>> As a user, I would expect the number to be in seconds/minutes/hours,
>> but that is not the case. Perhaps an explanation in the description
>> and/or a field name that better reflects what we really mean with age.
>>
>> Otherwise trace.xml looks good!
>>
>> Erik
>>
>> Staffan Friberg skrev 25/08/14 18:28:
>>> Hi,
>>>
>>> Could I please get reviews for this RFE that adds a trace event for
>>> aging and promotion for young collections in G1, CMS and Parallel GC.
>>> It works similarly to allocation events, and generates the event on
>>> the slow path when either a direct copy occurs or a new PLAB is
>>> request.
>>>
>>> Since I'm adding an event I cc:ed the serviceability list in case
>>> anyone has any comments on the event and changes to trace.xml.
>>>
>>> RFE: https://bugs.openjdk.java.net/browse/JDK-8055845
>>> Webrev: http://cr.openjdk.java.net/~brutisso/8055845/webrev.00
>>>
>>> Bengt has been kind and agreed to both sponsor and host the the webrev.
>>>
>>> Thanks,
>>> Staffan
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/serviceability-dev/attachments/20140826/fc9f83ab/attachment.html>
More information about the serviceability-dev
mailing list