[jdk17u-dev] RFR: 8315559: Delay TempSymbol cleanup to avoid symbol table churn

Oli Gillespie ogillespie at openjdk.org
Thu Apr 25 09:22:33 UTC 2024


On Mon, 22 Apr 2024 15:35:14 GMT, Oli Gillespie <ogillespie at openjdk.org> wrote:

> 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 =====

Cool, thanks!

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

PR Comment: https://git.openjdk.org/jdk17u-dev/pull/2424#issuecomment-2076741196


More information about the jdk-updates-dev mailing list