RFR: 8355177: Speed up StringBuilder::append(char[]) via Unsafe::copyMemory [v7]

Roger Riggs rriggs at openjdk.org
Wed Jun 25 13:17:29 UTC 2025


On Wed, 25 Jun 2025 02:01:18 GMT, Shaojin Wen <swen at openjdk.org> wrote:

>> In BufferedReader.readLine and other similar scenarios, we need to use StringBuilder.append(char[]) to build the string.
>> 
>> For these scenarios, we can Unsafe.copyMemory instead of the character copy of the char-by-char loop to improve the speed.
>> 
>> @RogerRiggs completed the optimization when the encoder is LATIN1 in PR #24967. This PR continues to complete the optimization when the encoder is UTF16.
>
> Shaojin Wen has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Microbenchmark java.lang.StringBuilders is modified to not re-use existing StringBuilders, from @RogerRiggs

A nice clean improvement. Thanks for the updates.

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

Marked as reviewed by rriggs (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/24773#pullrequestreview-2958114296


More information about the core-libs-dev mailing list