On Tue, 7 Feb 2023 19:10:08 GMT, Francesco Nigro <d...@openjdk.org> wrote:

>> Claes Redestad has updated the pull request incrementally with one 
>> additional commit since the last revision:
>> 
>>   copyrights
>
> Thanks @cl4es to look into this!

@franz1981 idea seems to apply nicely here, and going back and applying it to 
`Arrays.copyOfRange` end up on top for the common case where `copyOfRange` 
copies the entire range:


Benchmark                                            (size)  Mode  Cnt   Score  
 Error  Units
StringConstructor.newStringFromArray                      7  avgt   15  14.666 
± 0.336  ns/op
StringConstructor.newStringFromArrayWithCharset           7  avgt   15  14.582 
± 0.288  ns/op
StringConstructor.newStringFromArrayWithCharsetName       7  avgt   15  20.339 
± 0.328  ns/op


We might still benefit for some cases to specialize a `copyBytes` method, but 
this solution might help more cases. If others agree I might take a step back 
and apply this optimization to all the `copyOfRange` methods and add some 
microbenchmarking to verify this more widely.

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

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

Reply via email to