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

Aleksey Shipilev shade at openjdk.org
Fri Apr 5 16:48:30 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 five additional commits since the last revision:

 - Merge branch 'master' into JDK-8319650-heapdump-cache-class
 - Merge branch 'master' into JDK-8319650-heapdump-cache-class
 - Merge branch 'master' into JDK-8319650-heapdump-cache-class
 - 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/6f08fd87..d061d4f9

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

  Stats: 19759 lines in 455 files changed: 9197 ins; 5854 del; 4708 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