On Tue, 26 Apr 2022 17:20:55 GMT, Claes Redestad <redes...@openjdk.org> wrote:

>> test/micro/org/openjdk/bench/java/lang/invoke/MethodTypeAcquire.java line 
>> 104:
>> 
>>> 102:     @Benchmark
>>> 103:     public MethodType testMultiPType_ObjectOnly() {
>>> 104:         return MethodType.methodType(Object.class, Object.class, 
>>> Object.class, Object.class, Object.class, Object.class, Object.class);
>> 
>> It might be interesting to add a benchmark where all types are `Object`, but 
>> non-constants, to see if that case improves as well.
>
> Right.. I did a quick experiment and there's a large speed-up in the trivial 
> `methodType(obj, obj)` case:
> 
> Benchmark                                      Mode  Cnt   Score   Error  
> Units
> MethodTypeAcquire.testObjectObjectNonConstant  avgt    5  30.052 ? 3.440  
> ns/op # baseline
> MethodTypeAcquire.testObjectObjectNonConstant  avgt    5  1.171  ? 0.001  
> ns/op # patch
> 
> 
> I'll add a non-constant variant for the multi-arg Object variants, too. It 
> should scale linearly and see a gain in the same ballpark. I think we need to 
> keep the number of microbenchmarks here somewhat under control, though.

That sounds good, thanks

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

PR: https://git.openjdk.java.net/jdk/pull/8398

Reply via email to