On Sun, 26 Mar 2023 20:45:19 GMT, Chen Liang <li...@openjdk.org> wrote:
>> This patch aims to improve the performance of MethodTypeDesc in general, as >> it is currently a performance bottleneck in the Classfile API. A previous >> revision changed the parameter storage from an array to a list; this is >> dropped now. Sorry for the force push. >> >> >> Benchmark >> (descString) Mode Cnt Score Error Units >> MethodTypeDescFactories.descriptorString >> (Ljava/lang/Object;Ljava/lang/String;)I avgt 6 27.778 ± 0.573 ns/op >> MethodTypeDescFactories.descriptorString >> ()V avgt 6 13.343 ± 0.235 ns/op >> MethodTypeDescFactories.descriptorString >> ([IJLjava/lang/String;Z)Ljava/util/List; avgt 6 40.828 ± 0.448 ns/op >> MethodTypeDescFactories.descriptorString >> ()[Ljava/lang/String; avgt 6 14.754 ± 0.162 ns/op >> MethodTypeDescFactories.ofArray >> (Ljava/lang/Object;Ljava/lang/String;)I avgt 6 8.616 ± 0.132 ns/op >> MethodTypeDescFactories.ofArray >> ()V avgt 6 2.146 ± 0.293 ns/op >> MethodTypeDescFactories.ofArray >> ([IJLjava/lang/String;Z)Ljava/util/List; avgt 6 14.595 ± 0.235 ns/op >> MethodTypeDescFactories.ofArray >> ()[Ljava/lang/String; avgt 6 2.064 ± 0.085 ns/op >> MethodTypeDescFactories.ofDescriptor >> (Ljava/lang/Object;Ljava/lang/String;)I avgt 6 97.077 ± 2.482 ns/op >> MethodTypeDescFactories.ofDescriptor >> ()V avgt 6 13.563 ± 0.111 ns/op >> MethodTypeDescFactories.ofDescriptor >> ([IJLjava/lang/String;Z)Ljava/util/List; avgt 6 130.543 ± 2.847 ns/op >> MethodTypeDescFactories.ofDescriptor >> ()[Ljava/lang/String; avgt 6 35.286 ± 0.260 ns/op >> MethodTypeDescFactories.ofList >> (Ljava/lang/Object;Ljava/lang/String;)I avgt 6 4.156 ± 0.258 ns/op >> MethodTypeDescFactories.ofList >> ()V avgt 6 2.192 ± 0.063 ns/op >> MethodTypeDescFactories.ofList >> ([IJLjava/lang/String;Z)Ljava/util/List; avgt 6 41.002 ± 0.235 ns/op >> MethodTypeDescFactories.ofList >> ()[Ljava/lang/String; avgt 6 2.200 ± 0.041 ns/op > > Chen Liang has updated the pull request incrementally with one additional > commit since the last revision: > > Fix some inconsistencies in the method descriptor derivation methods Moved this patch to another issue that focus on converting the storage from array to immutable list. The fix for mutation is now a side effect of this patch. ------------- PR Comment: https://git.openjdk.org/jdk/pull/13186#issuecomment-1522789129