# JMH version: 1.21 # VM version: JDK 10.0.2, Java HotSpot(TM) 64-Bit Server VM, 10.0.2+13 # VM invoker: C:\Program Files\Java\jre-10.0.2\bin\java.exe # VM options: # Warmup: 10 iterations, 10 s each # Measurement: 10 iterations, 10 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: pl.thisismyway.updateobjectinlist.UpdateObjectInOneListBasedOnSecondOne.streamOfStream # Run progress: 0,00% complete, ETA 00:10:00 # Fork: 1 of 1 # Warmup Iteration 1: 6828,586 ns/op # Warmup Iteration 2: 6641,766 ns/op # Warmup Iteration 3: 6631,987 ns/op # Warmup Iteration 4: 6696,749 ns/op # Warmup Iteration 5: 7117,383 ns/op # Warmup Iteration 6: 6847,845 ns/op # Warmup Iteration 7: 6884,007 ns/op # Warmup Iteration 8: 6612,738 ns/op # Warmup Iteration 9: 6599,637 ns/op # Warmup Iteration 10: 6661,669 ns/op Iteration 1: 6693,925 ns/op Iteration 2: 6669,279 ns/op Iteration 3: 7018,504 ns/op Iteration 4: 6655,432 ns/op Iteration 5: 6619,946 ns/op Iteration 6: 6618,315 ns/op Iteration 7: 6632,399 ns/op Iteration 8: 6678,364 ns/op Iteration 9: 7468,671 ns/op Iteration 10: 6698,816 ns/op Result "pl.thisismyway.updateobjectinlist.UpdateObjectInOneListBasedOnSecondOne.streamOfStream": 6775,365 ±(99.9%) 408,353 ns/op [Average] (min, avg, max) = (6618,315, 6775,365, 7468,671), stdev = 270,100 CI (99.9%): [6367,012, 7183,718] (assumes normal distribution) # JMH version: 1.21 # VM version: JDK 10.0.2, Java HotSpot(TM) 64-Bit Server VM, 10.0.2+13 # VM invoker: C:\Program Files\Java\jre-10.0.2\bin\java.exe # VM options: # Warmup: 10 iterations, 10 s each # Measurement: 10 iterations, 10 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: pl.thisismyway.updateobjectinlist.UpdateObjectInOneListBasedOnSecondOne.streamOptimized # Run progress: 33,33% complete, ETA 00:06:41 # Fork: 1 of 1 # Warmup Iteration 1: 5547,046 ns/op # Warmup Iteration 2: 5312,305 ns/op # Warmup Iteration 3: 5553,086 ns/op # Warmup Iteration 4: 5433,378 ns/op # Warmup Iteration 5: 5213,229 ns/op # Warmup Iteration 6: 5268,863 ns/op # Warmup Iteration 7: 5243,235 ns/op # Warmup Iteration 8: 5210,920 ns/op # Warmup Iteration 9: 5170,157 ns/op # Warmup Iteration 10: 5208,977 ns/op Iteration 1: 5209,094 ns/op Iteration 2: 5317,667 ns/op Iteration 3: 5251,098 ns/op Iteration 4: 5210,835 ns/op Iteration 5: 6219,360 ns/op Iteration 6: 5312,156 ns/op Iteration 7: 5164,600 ns/op Iteration 8: 5151,164 ns/op Iteration 9: 5868,244 ns/op Iteration 10: 5175,558 ns/op Result "pl.thisismyway.updateobjectinlist.UpdateObjectInOneListBasedOnSecondOne.streamOptimized": 5387,978 ±(99.9%) 544,119 ns/op [Average] (min, avg, max) = (5151,164, 5387,978, 6219,360), stdev = 359,901 CI (99.9%): [4843,858, 5932,097] (assumes normal distribution) # JMH version: 1.21 # VM version: JDK 10.0.2, Java HotSpot(TM) 64-Bit Server VM, 10.0.2+13 # VM invoker: C:\Program Files\Java\jre-10.0.2\bin\java.exe # VM options: # Warmup: 10 iterations, 10 s each # Measurement: 10 iterations, 10 s each # Timeout: 10 min per iteration # Threads: 1 thread, will synchronize iterations # Benchmark mode: Average time, time/op # Benchmark: pl.thisismyway.updateobjectinlist.UpdateObjectInOneListBasedOnSecondOne.usedForLoop # Run progress: 66,67% complete, ETA 00:03:20 # Fork: 1 of 1 # Warmup Iteration 1: 5724,946 ns/op # Warmup Iteration 2: 5785,363 ns/op # Warmup Iteration 3: 5467,303 ns/op # Warmup Iteration 4: 5500,289 ns/op # Warmup Iteration 5: 5467,795 ns/op # Warmup Iteration 6: 5555,617 ns/op # Warmup Iteration 7: 5472,146 ns/op # Warmup Iteration 8: 5426,968 ns/op # Warmup Iteration 9: 5419,136 ns/op # Warmup Iteration 10: 5452,164 ns/op Iteration 1: 5417,683 ns/op Iteration 2: 5415,492 ns/op Iteration 3: 5480,730 ns/op Iteration 4: 5656,576 ns/op Iteration 5: 5440,974 ns/op Iteration 6: 5439,175 ns/op Iteration 7: 5442,653 ns/op Iteration 8: 5628,807 ns/op Iteration 9: 5462,702 ns/op Iteration 10: 5812,732 ns/op Result "pl.thisismyway.updateobjectinlist.UpdateObjectInOneListBasedOnSecondOne.usedForLoop": 5519,753 ±(99.9%) 202,310 ns/op [Average] (min, avg, max) = (5415,492, 5519,753, 5812,732), stdev = 133,816 CI (99.9%): [5317,442, 5722,063] (assumes normal distribution) # Run complete. Total time: 00:10:02 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 UpdateObjectInOneListBasedOnSecondOne.streamOfStream avgt 10 6775,365 ± 408,353 ns/op UpdateObjectInOneListBasedOnSecondOne.streamOptimized avgt 10 5387,978 ± 544,119 ns/op UpdateObjectInOneListBasedOnSecondOne.usedForLoop avgt 10 5519,753 ± 202,310 ns/op