RFR: JDK-8318636: Add jcmd to print annotated process memory map [v3]

Thomas Stuefe stuefe at openjdk.org
Sat Oct 28 12:57:34 UTC 2023


On Fri, 27 Oct 2023 09:42:19 GMT, Johan Sjölen <jsjolen at openjdk.org> wrote:

>> Thomas Stuefe has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits:
>> 
>>  - Merge master and solve merge conflicts
>>  - small fixes
>>  - start from VM op; show more thread details
>>  - start
>
> Hi,
> 
> Thank you for this PR. These comments are just a first pass, I haven't finished going through the code.

@jdksjolen @gerard-ziemski 

Thank you both for looking at this.

I rewrote this and simplified this to address speed- and space-concerns.

Differences:
- we now pre-cache all NMT region information before starting to iterate VMAs, in a very cache-friendly form. I tested this with a process where we have 20 million NMT-registered mappings, and I brought the time needed down from > 2 minutes to 3 seconds.
- Since this is now fast enough even for weird outlier cases, I removed the timeout handling completely
- I removed the need for a VM op and now run outside of a VM operation.
- Since the output can get very large, I changed the command to write a file instead of to the output stream.

I hope that's it.

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

PR Comment: https://git.openjdk.org/jdk/pull/16301#issuecomment-1783802198


More information about the hotspot-runtime-dev mailing list