RFR: JDK-8310502 : Optimization for j.l.Long.fastUUID() [v19]

温绍锦 duke at openjdk.org
Fri Jun 23 04:55:06 UTC 2023


On Fri, 23 Jun 2023 04:22:07 GMT, 温绍锦 <duke at openjdk.org> wrote:

>> By optimizing the implementation of java.lang.Long#fastUUID, the performance of the java.util.UUID#toString method can be significantly improved.
>> 
>> The following are the test results of JMH: 
>> 
>> Benchmark                     Mode  Cnt      Score      Error   Units
>> UUIDUtilsBenchmark.new       thrpt    5  92676.550 ±  292.213  ops/ms
>> UUIDUtilsBenchmark.original  thrpt    5  37040.165 ± 1023.532  ops/ms
>
> 温绍锦 has updated the pull request incrementally with one additional commit since the last revision:
> 
>   remove unused import

Latest benchmark results:

###  aliyun_c8i.xlarge (+23.25% )
cpu : intel xeon sapphire rapids (x64)
``` diff
 Benchmark           (size)   Mode  Cnt   Score   Error   Units
-UUIDBench.toString   20000  thrpt   15  62.457 ± 0.226  ops/us
+UUIDBench.toString   20000  thrpt   15  76.979 ± 1.011  ops/us


### aliyun_c8a.xlarge (+23.09%)
cpu : amd epc genoa (x64)
``` diff
 Benchmark           (size)   Mode  Cnt   Score   Error   Units
-UUIDBench.toString   20000  thrpt   15  65.673 ± 0.110  ops/us
+UUIDBench.toString   20000  thrpt   15  80.839 ± 0.278  ops/us


### aliyun_c8y.xlarge (+71.92%)
cpu : aliyun yitian 710 (aarch64)
``` diff
 Benchmark           (size)   Mode  Cnt   Score   Error   Units
-UUIDBench.toString   20000  thrpt   15  32.198 ± 0.907  ops/us
+UUIDBench.toString   20000  thrpt   15  55.356 ± 1.882  ops/us


### aws_c5.xlarge (+36.23% )
aws x64
``` diff
 Benchmark           (size)   Mode  Cnt   Score   Error   Units
-UUIDBench.toString   20000  thrpt   15  46.003 ± 0.291  ops/us
+UUIDBench.toString   20000  thrpt   15  62.673 ± 0.259  ops/us


### MacBook Pro M1 Pro (+179.94%)
``` diff
 Benchmark           (size)   Mode  Cnt   Score   Error   Units
-UUIDBench.toString   20000  thrpt   15  36.875 ± 0.902  ops/us
+UUIDBench.toString   20000  thrpt   15  103.229 ± 1.063  ops/us


### Orange Pi 5 Plus (+71.16%)
cpu : RK3588 (aarch64)
``` diff
 Benchmark           (size)   Mode  Cnt   Score   Error   Units
-UUIDBench.toString   20000  thrpt   15  21.691 ± 0.204  ops/us
+UUIDBench.toString   20000  thrpt   15  38.211 ± 0.344  ops/us

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

PR Comment: https://git.openjdk.org/jdk/pull/14578#issuecomment-1603676840


More information about the core-libs-dev mailing list