RFR: 8336856: Efficient hidden class-based string concatenation strategy [v55]

Shaojin Wen duke at openjdk.org
Wed Aug 14 09:47:55 UTC 2024


On Tue, 13 Aug 2024 16:34:18 GMT, Shaojin Wen <duke at openjdk.org> wrote:

>> This PR implements the same algorithm as the current generateMHInlineCopy based on bytecode to improve startup performance.
>
> Shaojin Wen has updated the pull request incrementally with two additional commits since the last revision:
> 
>  - static final
>  - code style

In the `StringConcat.concat123String` scenario, setting the inlineThreshold to 150 still shows a performance improvement, although this is crazy. But this can be used as a performance optimization parameter.

Here are the performance numbers for the current version running on a MacBook M1 Pro


make test TEST="micro:java.lang.StringConcat.concat123String" 

Benchmark                     (intValue)  Mode  Cnt     Score   Error  Units
StringConcat.concat123String        4711  avgt   15  1089.723 ? 9.913  ns/op

make test TEST="micro:java.lang.StringConcat.concat123String" MICRO="VM_OPTIONS=-Djava.lang.invoke.StringConcat.inlineThreshold=150"

Benchmark                     (intValue)  Mode  Cnt    Score    Error  Units
StringConcat.concat123String        4711  avgt   15  719.557 ? 10.208  ns/op

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

PR Comment: https://git.openjdk.org/jdk/pull/20273#issuecomment-2288314682


More information about the core-libs-dev mailing list