[jdk21u-dev] RFR: 8319650: Improve heap dump performance with class metadata caching [v2]

Aleksey Shipilev shade at openjdk.org
Wed Jan 10 15:33:46 UTC 2024


> Transplanted from https://github.com/openjdk/jdk21u/pull/388
> 
> Unclean backport to improve heap dump performance. The uncleanliness comes from [JDK-8306441](https://bugs.openjdk.org/browse/JDK-8306441) that does not exist in JDK 21, and which I don't think we want to backport at the moment. I had to add a few more `ResourceMark`-s near `HeapDumpWriter` to manage the cache allocations.
> 
> Additional testing:
>  - [x] MacOS AArch64 server release, heap dump performance improved
>  - [x]  Linux x86_64 server fastdebug, serviceability/ (contains heap dump tests)
>  - [x] Linux x86_64 server fastdebug, runtime/ErrorHandling (contains heap dump on failure tests)
>  - [x] Linux x86_64 server fastdebug, gc/epsilon (contains heap dump on failure tests)
>  - [x] Linux x86_64 server fastdebug, sun/tools/jhsdb (contains heap dump tests)

Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains two additional commits since the last revision:

 - Merge branch 'master' into JDK-8319650-heapdump-cache-class
 - Backport 03db82818b905f21cb5ad1d56a687e238b4a6e33

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

Changes:
  - all: https://git.openjdk.org/jdk21u-dev/pull/8/files
  - new: https://git.openjdk.org/jdk21u-dev/pull/8/files/d0ba9f6e..da6d93ed

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk21u-dev&pr=8&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk21u-dev&pr=8&range=00-01

  Stats: 18883 lines in 952 files changed: 8445 ins; 2921 del; 7517 mod
  Patch: https://git.openjdk.org/jdk21u-dev/pull/8.diff
  Fetch: git fetch https://git.openjdk.org/jdk21u-dev.git pull/8/head:pull/8

PR: https://git.openjdk.org/jdk21u-dev/pull/8


More information about the jdk-updates-dev mailing list