On Mon, 20 Feb 2023 16:23:32 GMT, Claes Redestad <redes...@openjdk.org> wrote:
>> Is it not already in CharacterDataLatin1? >> >> Here is a comparison of relying on improvements in >> `CharacterDataLatin1.toUpperCase/toLowerCase` only vs. using >> `CharacterDataLatin1.equalsIgnoreCase`: >> >> Character.toUpperCase/toLowerCase only: >> >> >> Benchmark (codePoints) (size) Mode Cnt >> Score Error Units >> RegionMatchesIC.Latin1.regionMatchesIC ascii-match 1024 avgt 15 >> 1310.582 ± 84.777 ns/op >> RegionMatchesIC.Latin1.regionMatchesIC ascii-mismatch 1024 avgt 15 >> 4.547 ± 0.545 ns/op >> RegionMatchesIC.Latin1.regionMatchesIC number-match 1024 avgt 15 >> 686.947 ± 11.850 ns/op >> RegionMatchesIC.Latin1.regionMatchesIC number-mismatch 1024 avgt 15 >> 3.836 ± 0.634 ns/op >> RegionMatchesIC.Latin1.regionMatchesIC lat1-match 1024 avgt 15 >> 2107.219 ± 17.662 ns/op >> RegionMatchesIC.Latin1.regionMatchesIC lat1-mismatch 1024 avgt 15 >> 4.924 ± 0.829 ns/op >> >> >> CharacterDataLatin1.equalsIgnoreCase: >> >> >> Benchmark (codePoints) (size) Mode Cnt >> Score Error Units >> RegionMatchesIC.Latin1.regionMatchesIC ascii-match 1024 avgt 15 >> 742.467 ± 34.490 ns/op >> RegionMatchesIC.Latin1.regionMatchesIC ascii-mismatch 1024 avgt 15 >> 3.960 ± 0.046 ns/op >> RegionMatchesIC.Latin1.regionMatchesIC number-match 1024 avgt 15 >> 361.158 ± 37.096 ns/op >> RegionMatchesIC.Latin1.regionMatchesIC number-mismatch 1024 avgt 15 >> 4.039 ± 0.521 ns/op >> RegionMatchesIC.Latin1.regionMatchesIC lat1-match 1024 avgt 15 >> 1158.091 ± 41.617 ns/op >> RegionMatchesIC.Latin1.regionMatchesIC lat1-mismatch 1024 avgt 15 >> 4.358 ± 0.123 ns/op > > Oops, I lost context and thought this was in `StringLatin1`. > > Thanks for running the numbers with #12623. Looks like you're getting big > enough of an improvement on top. Yes, seems `equalsIgnoreCase` carries its weight. ------------- PR: https://git.openjdk.org/jdk/pull/12632