We have been using NMT to study java memory footprint, especially the cost of classes.
However, NMT has no visibility into metaspace so far, it results that we usually overestimate to cost, as we count committed memory as fully occupied/used.
I would like to propose that NMT reports metaspace information under "Class" summary section, to give us some insight into metaspace memory usage.
Sample output:
- Class (reserved=1056908KB, committed=5004KB)
(classes #457)
(malloc=140KB #577)
(mmap: reserved=1056768KB, committed=4864KB)
( Metaspace: )
( reserved=8192KB, committed=4352KB)
( capacity=4100KB, used=3484KB, free=252KB)
( Class space: )
( reserved=1048576KB, committed=512KB)
( capacity=386KB, used=316KB, free=126KB)
However, NMT has no visibility into metaspace so far, it results that we usually overestimate to cost, as we count committed memory as fully occupied/used.
I would like to propose that NMT reports metaspace information under "Class" summary section, to give us some insight into metaspace memory usage.
Sample output:
- Class (reserved=1056908KB, committed=5004KB)
(classes #457)
(malloc=140KB #577)
(mmap: reserved=1056768KB, committed=4864KB)
( Metaspace: )
( reserved=8192KB, committed=4352KB)
( capacity=4100KB, used=3484KB, free=252KB)
( Class space: )
( reserved=1048576KB, committed=512KB)
( capacity=386KB, used=316KB, free=126KB)