RFR(S) 8189688: NMT: Report per-class load metadata information

Zhengyu Gu zgu at redhat.com
Fri Oct 20 14:00:08 UTC 2017


Up to now, there is little visibility into how metaspaces are used, and 
by whom.

This proposed enhancement gives NMT the ability to report metaspace 
usages on per-classloader level, via a new NMT command "metadata"


For example:

2496:
Metaspaces:
   Metadata space: reserved=      8192KB committed=      5888KB
   Class    space: reserved=   1048576KB committed=       640KB

Per-classloader metadata:

ClassLoader: for anonymous class
   Metadata   capacity=      5.00KB used=      1.16KB free=      3.84KB 
waste=      0.05KB
   Class data capacity=      1.00KB used=      0.59KB free=      0.41KB 
waste=      0.00KB

....

ClassLoader: <bootloader>
   Metadata   capacity=   5640.00KB used=   5607.42KB free=     32.58KB 
waste=      0.46KB
   Class data capacity=    520.00KB used=    500.94KB free=     19.06KB 
waste=      0.02KB


Bug: https://bugs.openjdk.java.net/browse/JDK-8189688
Webrev: http://cr.openjdk.java.net/~zgu/8189688/webrev.00/index.html

Test:

   hotspot_tier1_runtime, fastdebug and release on x64 Linux.

Thanks,

-Zhengyu




More information about the hotspot-runtime-dev mailing list