# 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

