[jdk17u-dev] RFR: 8315559: Delay TempSymbol cleanup to avoid symbol table churn [v2]
Oli Gillespie
ogillespie at openjdk.org
Mon Jun 3 10:26:21 UTC 2024
> Hi all,
>
> This pull request contains a backport of commit [d23f4f12](https://github.com/openjdk/jdk/commit/d23f4f12adf1ea26b8c340efe2c3854e50b68301) from the [openjdk/jdk](https://git.openjdk.org/jdk) repository.
>
> The commit being backported was authored by Oli Gillespie on 4 Dec 2023 and was reviewed by Coleen Phillimore, Kim Barrett and Aleksey Shipilev.
>
> Thanks!
>
> The backport is not clean. `symbolHandle` does not exist in 17, so I put the same functionality in `symbolTable` where `TempNewSymbol` resides for 17. The functionality itself is essentially identical, with the other change being that `maybe_decrement_refcount` helper also does not exist, so I just added a null check.
> `test/hotspot/gtest/classfile/test_placeholders.cpp` does not exist, so it didn't need to be fixed. `test_symbolTable.cpp` failed as expected before fixing, and applied cleanly.
>
>
> Testing on the original benchmark confirms this fixes the performance regression:
>
> java -Xmx1G -Xms1G -XX:+AlwaysPreTouch -jar dacapo-9.120-MR1.jar --size large --iterations 30 pmd
>
> Before:
> ...
> ===== DaCapo 9.12-MR1 pmd PASSED in 1072 msec =====
>
> After:
> ...
> ===== DaCapo 9.12-MR1 pmd PASSED in 1013 msec =====
Oli Gillespie 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 'openjdk:master' into backport-olivergillespie-d23f4f12
- Backport d23f4f12adf1ea26b8c340efe2c3854e50b68301
-------------
Changes:
- all: https://git.openjdk.org/jdk17u-dev/pull/2424/files
- new: https://git.openjdk.org/jdk17u-dev/pull/2424/files/6eff5e59..8a766688
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk17u-dev&pr=2424&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk17u-dev&pr=2424&range=00-01
Stats: 11318 lines in 249 files changed: 6886 ins; 3183 del; 1249 mod
Patch: https://git.openjdk.org/jdk17u-dev/pull/2424.diff
Fetch: git fetch https://git.openjdk.org/jdk17u-dev.git pull/2424/head:pull/2424
PR: https://git.openjdk.org/jdk17u-dev/pull/2424
More information about the jdk-updates-dev
mailing list