353 lines
14 KiB
Plaintext
353 lines
14 KiB
Plaintext
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail
|
|
# Parameters: (impl = ArrayDeque, size = 1000)
|
|
|
|
# Run progress: 0.00% complete, ETA 00:01:00
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 225049.942 ops/ms
|
|
# Warmup Iteration 2: 216387.082 ops/ms
|
|
Iteration 1: 260204.948 ops/ms
|
|
Iteration 2: 152481.625 ops/ms
|
|
Iteration 3: 199092.571 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail":
|
|
203926.381 ±(99.9%) 985600.610 ops/ms [Average]
|
|
(min, avg, max) = (152481.625, 203926.381, 260204.948), stdev = 54024.095
|
|
CI (99.9%): [≈ 0, 1189526.991] (assumes normal distribution)
|
|
|
|
|
|
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail
|
|
# Parameters: (impl = ArrayDeque, size = 100000)
|
|
|
|
# Run progress: 8.33% complete, ETA 00:00:58
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 73559.495 ops/ms
|
|
# Warmup Iteration 2: 88126.623 ops/ms
|
|
Iteration 1: 82011.079 ops/ms
|
|
Iteration 2: 84538.326 ops/ms
|
|
Iteration 3: 60837.052 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail":
|
|
75795.485 ±(99.9%) 237457.872 ops/ms [Average]
|
|
(min, avg, max) = (60837.052, 75795.485, 84538.326), stdev = 13015.867
|
|
CI (99.9%): [≈ 0, 313253.357] (assumes normal distribution)
|
|
|
|
|
|
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail
|
|
# Parameters: (impl = LinkedList, size = 1000)
|
|
|
|
# Run progress: 16.67% complete, ETA 00:00:54
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 82032.730 ops/ms
|
|
# Warmup Iteration 2: 80584.591 ops/ms
|
|
Iteration 1: 79301.950 ops/ms
|
|
Iteration 2: 88128.376 ops/ms
|
|
Iteration 3: 87233.185 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail":
|
|
84887.837 ±(99.9%) 88631.345 ops/ms [Average]
|
|
(min, avg, max) = (79301.950, 84887.837, 88128.376), stdev = 4858.183
|
|
CI (99.9%): [≈ 0, 173519.182] (assumes normal distribution)
|
|
|
|
|
|
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail
|
|
# Parameters: (impl = LinkedList, size = 100000)
|
|
|
|
# Run progress: 25.00% complete, ETA 00:00:49
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 102529.616 ops/ms
|
|
# Warmup Iteration 2: 75609.806 ops/ms
|
|
Iteration 1: 86058.866 ops/ms
|
|
Iteration 2: 85350.743 ops/ms
|
|
Iteration 3: 85011.734 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail":
|
|
85473.781 ±(99.9%) 9747.596 ops/ms [Average]
|
|
(min, avg, max) = (85011.734, 85473.781, 86058.866), stdev = 534.299
|
|
CI (99.9%): [75726.185, 95221.376] (assumes normal distribution)
|
|
|
|
|
|
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail
|
|
# Parameters: (impl = ArrayList, size = 1000)
|
|
|
|
# Run progress: 33.33% complete, ETA 00:00:43
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 212378.579 ops/ms
|
|
# Warmup Iteration 2: 218438.486 ops/ms
|
|
Iteration 1: 245793.910 ops/ms
|
|
Iteration 2: 245870.397 ops/ms
|
|
Iteration 3: 242681.893 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail":
|
|
244782.067 ±(99.9%) 33189.080 ops/ms [Average]
|
|
(min, avg, max) = (242681.893, 244782.067, 245870.397), stdev = 1819.205
|
|
CI (99.9%): [211592.987, 277971.147] (assumes normal distribution)
|
|
|
|
|
|
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail
|
|
# Parameters: (impl = ArrayList, size = 100000)
|
|
|
|
# Run progress: 41.67% complete, ETA 00:00:37
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 94135.159 ops/ms
|
|
# Warmup Iteration 2: 95652.428 ops/ms
|
|
Iteration 1: 98077.379 ops/ms
|
|
Iteration 2: 100976.549 ops/ms
|
|
Iteration 3: 98379.804 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.offerPollTail":
|
|
99144.577 ±(99.9%) 29075.456 ops/ms [Average]
|
|
(min, avg, max) = (98077.379, 99144.577, 100976.549), stdev = 1593.724
|
|
CI (99.9%): [70069.122, 128220.033] (assumes normal distribution)
|
|
|
|
|
|
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead
|
|
# Parameters: (impl = ArrayDeque, size = 1000)
|
|
|
|
# Run progress: 50.00% complete, ETA 00:00:32
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 298481.803 ops/ms
|
|
# Warmup Iteration 2: 312401.613 ops/ms
|
|
Iteration 1: 299087.963 ops/ms
|
|
Iteration 2: 298466.157 ops/ms
|
|
Iteration 3: 299175.622 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead":
|
|
298909.914 ±(99.9%) 7056.600 ops/ms [Average]
|
|
(min, avg, max) = (298466.157, 298909.914, 299175.622), stdev = 386.796
|
|
CI (99.9%): [291853.313, 305966.514] (assumes normal distribution)
|
|
|
|
|
|
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead
|
|
# Parameters: (impl = ArrayDeque, size = 100000)
|
|
|
|
# Run progress: 58.33% complete, ETA 00:00:26
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 106969.537 ops/ms
|
|
# Warmup Iteration 2: 90907.103 ops/ms
|
|
Iteration 1: 104740.942 ops/ms
|
|
Iteration 2: 105037.254 ops/ms
|
|
Iteration 3: 100438.523 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead":
|
|
103405.573 ±(99.9%) 46955.844 ops/ms [Average]
|
|
(min, avg, max) = (100438.523, 103405.573, 105037.254), stdev = 2573.808
|
|
CI (99.9%): [56449.730, 150361.417] (assumes normal distribution)
|
|
|
|
|
|
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead
|
|
# Parameters: (impl = LinkedList, size = 1000)
|
|
|
|
# Run progress: 66.67% complete, ETA 00:00:21
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 108757.170 ops/ms
|
|
# Warmup Iteration 2: 76136.263 ops/ms
|
|
Iteration 1: 79754.897 ops/ms
|
|
Iteration 2: 87449.217 ops/ms
|
|
Iteration 3: 83960.921 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead":
|
|
83721.678 ±(99.9%) 70288.226 ops/ms [Average]
|
|
(min, avg, max) = (79754.897, 83721.678, 87449.217), stdev = 3852.735
|
|
CI (99.9%): [13433.452, 154009.905] (assumes normal distribution)
|
|
|
|
|
|
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead
|
|
# Parameters: (impl = LinkedList, size = 100000)
|
|
|
|
# Run progress: 75.00% complete, ETA 00:00:16
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 110204.142 ops/ms
|
|
# Warmup Iteration 2: 74155.001 ops/ms
|
|
Iteration 1: 86320.175 ops/ms
|
|
Iteration 2: 83052.660 ops/ms
|
|
Iteration 3: 84954.624 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead":
|
|
84775.820 ±(99.9%) 29939.400 ops/ms [Average]
|
|
(min, avg, max) = (83052.660, 84775.820, 86320.175), stdev = 1641.080
|
|
CI (99.9%): [54836.420, 114715.220] (assumes normal distribution)
|
|
|
|
|
|
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead
|
|
# Parameters: (impl = ArrayList, size = 1000)
|
|
|
|
# Run progress: 83.33% complete, ETA 00:00:10
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 11212.051 ops/ms
|
|
# Warmup Iteration 2: 11024.015 ops/ms
|
|
Iteration 1: 11274.928 ops/ms
|
|
Iteration 2: 11150.226 ops/ms
|
|
Iteration 3: 10960.108 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead":
|
|
11128.421 ±(99.9%) 2892.341 ops/ms [Average]
|
|
(min, avg, max) = (10960.108, 11128.421, 11274.928), stdev = 158.539
|
|
CI (99.9%): [8236.080, 14020.762] (assumes normal distribution)
|
|
|
|
|
|
# JMH version: 1.37
|
|
# VM version: JDK 25.0.4.1, OpenJDK 64-Bit Server VM, 25.0.4.1+1-LTS
|
|
# VM invoker: /tmp/tools/jdk-25.0.4.1+1/bin/java
|
|
# Blackhole mode: compiler (auto-detected, use -Djmh.blackhole.autoDetect=false to disable)
|
|
# Warmup: 2 iterations, 1 s each
|
|
# Measurement: 3 iterations, 1 s each
|
|
# Timeout: 10 min per iteration
|
|
# Threads: 1 thread, will synchronize iterations
|
|
# Benchmark mode: Throughput, ops/time
|
|
# Benchmark: com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead
|
|
# Parameters: (impl = ArrayList, size = 100000)
|
|
|
|
# Run progress: 91.67% complete, ETA 00:00:05
|
|
# Fork: 1 of 1
|
|
# Warmup Iteration 1: 42.851 ops/ms
|
|
# Warmup Iteration 2: 57.144 ops/ms
|
|
Iteration 1: 54.588 ops/ms
|
|
Iteration 2: 57.561 ops/ms
|
|
Iteration 3: 55.350 ops/ms
|
|
|
|
|
|
Result "com.ankurm.listbenchmarks.DequeBenchmark.pushPopHead":
|
|
55.833 ±(99.9%) 28.174 ops/ms [Average]
|
|
(min, avg, max) = (54.588, 55.833, 57.561), stdev = 1.544
|
|
CI (99.9%): [27.658, 84.007] (assumes normal distribution)
|
|
|
|
|
|
# Run complete. Total time: 00:01:04
|
|
|
|
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.
|
|
|
|
NOTE: Current JVM experimentally supports Compiler Blackholes, and they are in use. Please exercise
|
|
extra caution when trusting the results, look into the generated code to check the benchmark still
|
|
works, and factor in a small probability of new VM bugs. Additionally, while comparisons between
|
|
different JVMs are already problematic, the performance difference caused by different Blackhole
|
|
modes can be very significant. Please make sure you use the consistent Blackhole mode for comparisons.
|
|
|
|
Benchmark (impl) (size) Mode Cnt Score Error Units
|
|
DequeBenchmark.offerPollTail ArrayDeque 1000 thrpt 3 203926.381 ± 985600.610 ops/ms
|
|
DequeBenchmark.offerPollTail ArrayDeque 100000 thrpt 3 75795.485 ± 237457.872 ops/ms
|
|
DequeBenchmark.offerPollTail LinkedList 1000 thrpt 3 84887.837 ± 88631.345 ops/ms
|
|
DequeBenchmark.offerPollTail LinkedList 100000 thrpt 3 85473.781 ± 9747.596 ops/ms
|
|
DequeBenchmark.offerPollTail ArrayList 1000 thrpt 3 244782.067 ± 33189.080 ops/ms
|
|
DequeBenchmark.offerPollTail ArrayList 100000 thrpt 3 99144.577 ± 29075.456 ops/ms
|
|
DequeBenchmark.pushPopHead ArrayDeque 1000 thrpt 3 298909.914 ± 7056.600 ops/ms
|
|
DequeBenchmark.pushPopHead ArrayDeque 100000 thrpt 3 103405.573 ± 46955.844 ops/ms
|
|
DequeBenchmark.pushPopHead LinkedList 1000 thrpt 3 83721.678 ± 70288.226 ops/ms
|
|
DequeBenchmark.pushPopHead LinkedList 100000 thrpt 3 84775.820 ± 29939.400 ops/ms
|
|
DequeBenchmark.pushPopHead ArrayList 1000 thrpt 3 11128.421 ± 2892.341 ops/ms
|
|
DequeBenchmark.pushPopHead ArrayList 100000 thrpt 3 55.833 ± 28.174 ops/ms
|
|
|