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

Thomas Stuefe stuefe at openjdk.org
Thu Oct 26 15:02:53 UTC 2023


> Analysts and supporters often use /proc/xx/maps to make sense of the memory footprint of a process.
> 
> Interpreting the memory map correctly can help when used as a complement to other tools (e.g. NMT). There even exist tools out there that attempt to annotate the process memory map with JVM information.
> 
> That, however, can be more accurately done from within the JVM, at least for mappings originating from hotspot. After all, we can correlate the mapping information in NMT with the VMA map.
> 
> Example output (from a spring petstore run):
> 
> [example_system_map.txt](https://github.com/openjdk/jdk/files/13179054/example_system_map.txt)
> 
> This patch adds the VM annotations for VMAs that are *mmaped*. I also have an experimental patch that works with malloc'ed memory, but it is not ready yet for consumption and I leave that part of for now.

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

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

Changes: https://git.openjdk.org/jdk/pull/16301/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=16301&range=02
  Stats: 675 lines in 14 files changed: 673 ins; 1 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/16301.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/16301/head:pull/16301

PR: https://git.openjdk.org/jdk/pull/16301


More information about the serviceability-dev mailing list