# JMH version: 1.33
# VM version: JDK 17.0.1, Java HotSpot(TM) 64-Bit Server VM, 17.0.1+12-LTS-39
# VM invoker: /usr/local/java/jdk-17.0.1/bin/java
# VM options: -Dvisualvm.id=173221627574053 -javaagent:/home/wuweijie/.local/share/JetBrains/Toolbox/apps/IDEA-U/ch-0/213.5744.223/lib/idea_rt.jar=33189:/home/wuweijie/.local/share/JetBrains/Toolbox/apps/IDEA-U/ch-0/213.5744.223/bin -Dfile.encoding=UTF-8
# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect)
# Warmup: 3 iterations, 5 s each
# Measurement: 3 iterations, 5 s each
# Timeout: 10 min per iteration
# Threads: 16 threads, will synchronize iterations
# Benchmark mode: Throughput, ops/time
# Benchmark: icu.wwj.jmh.dangling.ConcurrentHashMapBenchmark.benchComputeIfAbsent
# Run progress: 0.00% complete, ETA 00:03:00
# Fork: 1 of 3
# Warmup Iteration 1: 1544327446.565 ops/s
# Warmup Iteration 2: 1475077923.449 ops/s
# Warmup Iteration 3: 1565544222.606 ops/s
Iteration 1: 1564346089.698 ops/s
Iteration 2: 1560062375.891 ops/s
Iteration 3: 1552569020.412 ops/s
# Run progress: 16.67% complete, ETA 00:02:33
# Fork: 2 of 3
# Warmup Iteration 1: 1617143507.004 ops/s
# Warmup Iteration 2: 1433136907.916 ops/s
# Warmup Iteration 3: 1527623176.866 ops/s
Iteration 1: 1522331660.180 ops/s
Iteration 2: 1524798683.186 ops/s
Iteration 3: 1522686827.744 ops/s
# Run progress: 33.33% complete, ETA 00:02:02
# Fork: 3 of 3
# Warmup Iteration 1: 1671732222.173 ops/s
# Warmup Iteration 2: 1462966231.429 ops/s
# Warmup Iteration 3: 1553792663.545 ops/s
Iteration 1: 1549840468.944 ops/s
Iteration 2: 1549245571.349 ops/s
Iteration 3: 1554801575.735 ops/s
Result "icu.wwj.jmh.dangling.ConcurrentHashMapBenchmark.benchComputeIfAbsent":
1544520252.571 ±(99.9%) 27953594.118 ops/s [Average]
(min, avg, max) = (1522331660.180, 1544520252.571, 1564346089.698), stdev = 16634735.479
CI (99.9%): [1516566658.453, 1572473846.689] (assumes normal distribution)
# JMH version: 1.33
# VM version: JDK 17.0.1, Java HotSpot(TM) 64-Bit Server VM, 17.0.1+12-LTS-39
# VM invoker: /usr/local/java/jdk-17.0.1/bin/java
# VM options: -Dvisualvm.id=173221627574053 -javaagent:/home/wuweijie/.local/share/JetBrains/Toolbox/apps/IDEA-U/ch-0/213.5744.223/lib/idea_rt.jar=33189:/home/wuweijie/.local/share/JetBrains/Toolbox/apps/IDEA-U/ch-0/213.5744.223/bin -Dfile.encoding=UTF-8
# Blackhole mode: full + dont-inline hint (default, use -Djmh.blackhole.autoDetect=true to auto-detect)
# Warmup: 3 iterations, 5 s each
# Measurement: 3 iterations, 5 s each
# Timeout: 10 min per iteration的
# Threads: 16 threads, will synchronize iterations
# Benchmark mode: Throughput, ops/time
# Benchmark: icu.wwj.jmh.dangling.ConcurrentHashMapBenchmark.benchGetBeforeComputeIfAbsent
# Run progress: 50.00% complete, ETA 00:01:31
# Fork: 1 of 3
# Warmup Iteration 1: 1813078468.960 ops/s
# Warmup Iteration 2: 1944438216.902 ops/s
# Warmup Iteration 3: 2232703681.960 ops/s
Iteration 1: 2233727123.664 ops/s
Iteration 2: 2233657163.983 ops/s
Iteration 3: 2229008772.953 ops/s
# Run progress: 66.67% complete, ETA 00:01:01
# Fork: 2 of 3
# Warmup Iteration 1: 1767187585.805 ops/s
# Warmup Iteration 2: 1900420998.518 ops/s
# Warmup Iteration 3: 2175122268.840 ops/s
Iteration 1: 2180409680.029 ops/s
Iteration 2: 2181398523.091 ops/s
Iteration 3: 2176454597.329 ops/s
# Run progress: 83.33% complete, ETA 00:00:30
# Fork: 3 of 3
# Warmup Iteration 1: 1822355551.990 ops/s
# Warmup Iteration 2: 1832618832.110 ops/s
# Warmup Iteration 3: 2225265888.631 ops/s
Iteration 1: 2240765668.888 ops/s
Iteration 2: 2225847700.599 ops/s
Iteration 3: 2232257415.965 ops/s
Result "icu.wwj.jmh.dangling.ConcurrentHashMapBenchmark.benchGetBeforeComputeIfAbsent":
2214836294.056 ±(99.9%) 45190341.578 ops/s [Average]
(min, avg, max) = (2176454597.329, 2214836294.056, 2240765668.888), stdev = 26892047.412
CI (99.9%): [2169645952.478, 2260026635.633] (assumes normal distribution)
# Run complete. Total time: 00:03:03
REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on
why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial
experiments, perform baseline and negative tests that provide experimental control, make sure
the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts.
Do not assume the numbers tell you what you want them to tell.
Benchmark Mode Cnt Score Error Units
ConcurrentHashMapBenchmark.benchComputeIfAbsent thrpt 9 1544520252.571 ± 27953594.118 ops/s
ConcurrentHashMapBenchmark.benchGetBeforeComputeIfAbsent thrpt 9 2214836294.056 ± 45190341.578 ops/s