RFR(xs): 8245926: JFR: Remove chunkSz and rename blockSz from classloader statistics
Erik Gahlin
erik.gahlin at oracle.com
Wed May 27 08:05:51 UTC 2020
Hi Thomas,
An important use case for JFR is to have all relevant information available for support since they can’t typically run jcmd. If jcmd has better information, I think we should strive to make that information available for JFR as well.
An alternative would be to create a new event for metaspace targeted for JVM engineers/support, with similar information as jcmd(?), and only keep fields relevant to a Java developer in ClassLoaderStatistics.
Thanks
Erik
> On 27 May 2020, at 08:57, Thomas Stüfe <thomas.stuefe at gmail.com> wrote:
>
> Hi,
>
> may I have opinions/reviews for this change please:
>
> JBS: https://bugs.openjdk.java.net/browse/JDK-8245926
> Webrev:
> http://cr.openjdk.java.net/~stuefe/webrevs/8245926-jfr-remove-chunksz-rename-blocksz/webrev.00/webrev/
>
> This is part of an effort to reduce exposure of Metaspace implementation
> details somewhat in preparation for JDK-8221173.
>
> In JFR, the classloader statistics event contains the following fields:
>
> chunkSize
> blockSize
> hiddenChunkSize
> hiddenBlockSize
>
> blockSize is the interesting one, the number of bytes of Metaspace used by
> this class loader for storing metadata. I propose to rename this to
> "totalMetaspaceUsed" resp. "hiddenClassesMetaspaceUsed".
>
> chunkSize is the total size of chunks given to a class loader. Delta
> between blockSize and chunkSize constitutes waste if the loader stops
> loading; however, as far as waste goes this is not very informative since
> it only is a usually small part of waste in the current metaspace
> allocator.
>
> Moreover, with JDK-8221173 chunks may be partially uncommitted, so that the
> delta between chunkSize and blockSize may or may not contribute to RSS. So
> the chunkSize stat becomes more meaningless.
>
> I'd argue that this stat is quite useless to the average JFR user; and to
> the VM developer interested in fixing up Metaspace there are better tools
> (e.g. jcmd VM.metaspace). Therefore I would like to simply remove this stat.
>
> --
>
> Please note that this is my first change to JFR events. Some things are
> unclear to me, e.g. how backward compatibility in JMC is handled. So if
> something is missing from the patch, please advice.
>
>
> Thanks!
>
> .. Thomas
More information about the hotspot-jfr-dev
mailing list