RFR: 8372353: API to compute the byte length of a String encoded in a given Charset [v2]
Liam Miller-Cushon
cushon at openjdk.org
Wed Jan 14 10:59:32 UTC 2026
> This implements an API to return the byte length of a String encoded in a given charset. See [JDK-8372353](https://bugs.openjdk.org/browse/JDK-8372353) for background.
>
> ---
>
>
> Benchmark (encoding) (stringLength) Mode Cnt Score Error Units
> StringLoopJmhBenchmark.getBytes ASCII 10 thrpt 5 406782650.595 ± 16960032.852 ops/s
> StringLoopJmhBenchmark.getBytes ASCII 100 thrpt 5 172936926.189 ± 4532029.201 ops/s
> StringLoopJmhBenchmark.getBytes ASCII 1000 thrpt 5 38830681.232 ± 2413274.766 ops/s
> StringLoopJmhBenchmark.getBytes ASCII 100000 thrpt 5 458881.155 ± 12818.317 ops/s
> StringLoopJmhBenchmark.getBytes LATIN1 10 thrpt 5 37193762.990 ± 3962947.391 ops/s
> StringLoopJmhBenchmark.getBytes LATIN1 100 thrpt 5 55400876.236 ± 1267331.434 ops/s
> StringLoopJmhBenchmark.getBytes LATIN1 1000 thrpt 5 11104514.001 ± 41718.545 ops/s
> StringLoopJmhBenchmark.getBytes LATIN1 100000 thrpt 5 182535.414 ± 10296.120 ops/s
> StringLoopJmhBenchmark.getBytes UTF16 10 thrpt 5 113474681.457 ± 8326589.199 ops/s
> StringLoopJmhBenchmark.getBytes UTF16 100 thrpt 5 37854103.127 ± 4808526.773 ops/s
> StringLoopJmhBenchmark.getBytes UTF16 1000 thrpt 5 4139833.009 ± 70636.784 ops/s
> StringLoopJmhBenchmark.getBytes UTF16 100000 thrpt 5 57644.637 ± 1887.112 ops/s
> StringLoopJmhBenchmark.getBytesLength ASCII 10 thrpt 5 946701647.247 ± 76938927.141 ops/s
> StringLoopJmhBenchmark.getBytesLength ASCII 100 thrpt 5 396615374.479 ± 15167234.884 ops/s
> StringLoopJmhBenchmark.getBytesLength ASCII 1000 thrpt 5 100464784.979 ± 794027.897 ops/s
> StringLoopJmhBenchmark.getBytesLength ASCII 100000 thrpt 5 1215487.689 ± 1916.468 ops/s
> StringLoopJmhBenchmark.getBytesLength LATIN1 10 thrpt 5 221265102.323 ± 17013983.056 ops/s
> StringLoopJmhBenchmark.getBytesLength LATIN1 100 thrpt 5 137617873.887 ± 5842185.781 ops/s
> StringLoopJmhBenchmark.getBytesLength LATIN1 1000 thrpt 5 92540259.130 ± 3839233.582 ops/s
> StringLoopJmhBenchmark.ge...
Liam Miller-Cushon has updated the pull request incrementally with one additional commit since the last revision:
Review feedback
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/28454/files
- new: https://git.openjdk.org/jdk/pull/28454/files/5c6c4f13..791954d6
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=28454&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=28454&range=00-01
Stats: 36 lines in 1 file changed: 29 ins; 0 del; 7 mod
Patch: https://git.openjdk.org/jdk/pull/28454.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/28454/head:pull/28454
PR: https://git.openjdk.org/jdk/pull/28454
More information about the core-libs-dev
mailing list