Integrated: JDK-8277383: VM.metaspace optionally show chunk freelist details

Thomas Stuefe stuefe at openjdk.java.net
Tue Dec 7 14:18:21 UTC 2021


On Thu, 18 Nov 2021 11:32:51 GMT, Thomas Stuefe <stuefe at openjdk.org> wrote:

> A tiny patch to add an optional suboption to print out chunk freelist details with VM.metaspace; this is a followup from analyzing https://bugs.openjdk.java.net/browse/JDK-8277092.
> 
> -----
> 
> Tested: GHA, SAP nightlies, manual on x64, x86 Linux
> Failing compiler test on x86-32 (compiler/c2/irTests/TestUnsignedComparison.java) unrelated, see JDK-8277324
> "C2 compilation fails with "bad AD file" on x86-32 after JDK-8276162 due to missing match rule"
> 
> -----
> 
> Example use:
> 
> 
> jcmd  HelloWorld VM.metaspace chunkfreelist
> 
>  ...
>  
> Chunk freelist details:
>    Non-Class:
> cm non-class-space: 7 chunks, total word size: 326144.
> -- List[lv00]: empty
> -- List[lv01]:  - <Chunk @0x00007f50d8122db0, state f, base 0x00007f5084600000, level lv01 (262144 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv02]: empty
> -- List[lv03]: empty
> -- List[lv04]:  - <Chunk @0x00007f50d8122e88, state f, base 0x00007f5084540000, level lv04 (32768 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv05]:  - <Chunk @0x00007f50d8122ed0, state f, base 0x00007f5084520000, level lv05 (16384 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv06]:  - <Chunk @0x00007f50d8122f18, state f, base 0x00007f5084510000, level lv06 (8192 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv07]:  - <Chunk @0x00007f50d8122f60, state f, base 0x00007f5084508000, level lv07 (4096 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv08]:  - <Chunk @0x00007f50d8122fa8, state f, base 0x00007f5084504000, level lv08 (2048 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv09]: empty
> -- List[lv10]:  - <Chunk @0x00007f50d8123038, state f, base 0x00007f5084503000, level lv10 (512 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv11]: empty
> -- List[lv12]: empty
> total chunks: 7, total word size: 326144.
> 
>        Class:
> cm class-space: 6 chunks, total word size: 465920.
> -- List[lv00]: empty
> -- List[lv01]:  - <Chunk @0x00007f50d81229c0, state f, base 0x00000007c0200000, level lv01 (262144 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv02]:  - <Chunk @0x00007f50d8122a08, state f, base 0x00000007c0100000, level lv02 (131072 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv03]:  - <Chunk @0x00007f50d8122a50, state f, base 0x00000007c0080000, level lv03 (65536 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv04]: empty
> -- List[lv05]: empty
> -- List[lv06]: empty
> -- List[lv07]:  - <Chunk @0x00007f50d8122b70, state f, base 0x00000007c0008000, level lv07 (4096 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv08]:  - <Chunk @0x00007f50d8122bb8, state f, base 0x00000007c0004000, level lv08 (2048 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv09]:  - <Chunk @0x00007f50d8122c00, state f, base 0x00000007c0002000, level lv09 (1024 words), used 0 words, committed 0 words.> - total : 1 chunks.
> -- List[lv10]: empty
> -- List[lv11]: empty
> -- List[lv12]: empty
> total chunks: 6, total word size: 465920.

This pull request has now been integrated.

Changeset: 35361270
Author:    Thomas Stuefe <stuefe at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/35361270cb3aae9fa560736f8d05f1b258704c87
Stats:     48 lines in 5 files changed: 47 ins; 0 del; 1 mod

8277383: VM.metaspace optionally show chunk freelist details

Reviewed-by: coleenp, shade

-------------

PR: https://git.openjdk.java.net/jdk/pull/6452


More information about the hotspot-runtime-dev mailing list