RFR: JDK-8055845 - Add trace event for promoted objects
Staffan Friberg
staffan.friberg at oracle.com
Mon Aug 25 17:32:40 UTC 2014
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/20140825/b9a83625/attachment.html>
More information about the serviceability-dev
mailing list