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

Shaojin Wen swen at openjdk.org
Wed Jun 25 02:01:18 UTC 2025


> 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

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/24773/files
  - new: https://git.openjdk.org/jdk/pull/24773/files/2a45cfc1..18463718

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=24773&range=06
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=24773&range=05-06

  Stats: 4 lines in 1 file changed: 0 ins; 2 del; 2 mod
  Patch: https://git.openjdk.org/jdk/pull/24773.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/24773/head:pull/24773

PR: https://git.openjdk.org/jdk/pull/24773


More information about the core-libs-dev mailing list