RFR: 8309413: Improve the performance of MethodTypeDesc::descriptorString [v7]
Chen Liang
liach at openjdk.org
Tue Jun 6 00:37:18 UTC 2023
> 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 two additional commits since the last revision:
- Review changes
- Apply suggestions from code review
Co-authored-by: Mandy Chung <mandy.chung at oracle.com>
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/13186/files
- new: https://git.openjdk.org/jdk/pull/13186/files/6d47e9bf..fa66020a
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=13186&range=06
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=13186&range=05-06
Stats: 13 lines in 2 files changed: 1 ins; 7 del; 5 mod
Patch: https://git.openjdk.org/jdk/pull/13186.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/13186/head:pull/13186
PR: https://git.openjdk.org/jdk/pull/13186
More information about the core-libs-dev
mailing list