ПФ
Size: a a a
ПФ
ПФ
@Warmup(iterations = 1)
@Measurement(iterations = 3)
@BenchmarkMode(Mode.AverageTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
@Fork(1)
@State(Scope.Benchmark)
public class JavaSimpleStreamBenchmark {
@Param({"10", "100", "1000", "10000"})
public int arrSz;
int[] values;
private final Random random = new Random();
@Setup(Level.Invocation)
public void setup() {
values = new int[arrSz];
for (int i = 0; i < arrSz; i++) {
values[i] = random.nextInt();
}
}
@Benchmark
public void testMethod(Blackhole b) {
b.consume(Arrays.stream(values)
.map(x -> x + 1)
.map(x -> x * 2)
.map(x -> x + 2)
.reduce(0, Integer::sum));
}
@Benchmark
public void baseline(Blackhole b) {
int result = 0;
for (int i = 0; i < arrSz; i++) {
int x = values[i] * 2 + 2 + 2;
result += x;
}
b.consume(result);
}
}
ПФ
Benchmark (arrSz) Mode Cnt Score Error Units
JavaSimpleStreamBenchmark.baseline 10 avgt 3 26.944 ± 4.251 ns/op
JavaSimpleStreamBenchmark.baseline 100 avgt 3 34.266 ± 9.123 ns/op
JavaSimpleStreamBenchmark.baseline 1000 avgt 3 154.049 ± 31.702 ns/op
JavaSimpleStreamBenchmark.baseline 10000 avgt 3 963.724 ± 362.114 ns/op
JavaSimpleStreamBenchmark.testMethod 10 avgt 3 27.755 ± 11.820 ns/op
JavaSimpleStreamBenchmark.testMethod 100 avgt 3 629.005 ± 61.492 ns/op
JavaSimpleStreamBenchmark.testMethod 1000 avgt 3 6369.043 ± 5394.312 ns/op
JavaSimpleStreamBenchmark.testMethod 10000 avgt 3 62350.669 ± 7573.276 ns/op
ПФ
ПФ
Benchmark (arrSz) Mode Cnt Score Error Units
JavaSimpleStreamBenchmark.baseline 10 avgt 3 26.727 ± 6.653 ns/op
JavaSimpleStreamBenchmark.baseline 100 avgt 3 57.084 ± 38.360 ns/op
JavaSimpleStreamBenchmark.baseline 1000 avgt 3 367.417 ± 24.354 ns/op
JavaSimpleStreamBenchmark.baseline 10000 avgt 3 3442.745 ± 1873.309 ns/op
JavaSimpleStreamBenchmark.testMethod 10 avgt 3 212.559 ± 79.546 ns/op
JavaSimpleStreamBenchmark.testMethod 100 avgt 3 1258.077 ± 320.338 ns/op
JavaSimpleStreamBenchmark.testMethod 1000 avgt 3 11999.778 ± 12045.574 ns/op
JavaSimpleStreamBenchmark.testMethod 10000 avgt 3 117829.041 ± 85594.170 ns/op
ПФ
ПФ
ВВ
ПФ
ВВ
ПФ
ПФ
ПФ
ПФ
ВВ
ПФ
Benchmark (arrSz) Mode Cnt Score Error Units
JavaSimpleStreamBenchmark.baseline 10 avgt 3 8.440 ± 8.761 ns/op
JavaSimpleStreamBenchmark.baseline 100 avgt 3 16.169 ± 14.450 ns/op
JavaSimpleStreamBenchmark.baseline 1000 avgt 3 94.041 ± 13.297 ns/op
JavaSimpleStreamBenchmark.baseline 10000 avgt 3 939.374 ± 512.982 ns/op
JavaSimpleStreamBenchmark.testMethod 10 avgt 3 11.141 ± 9.547 ns/op
JavaSimpleStreamBenchmark.testMethod 100 avgt 3 632.958 ± 395.795 ns/op
JavaSimpleStreamBenchmark.testMethod 1000 avgt 3 6183.166 ± 1122.487 ns/op
JavaSimpleStreamBenchmark.testMethod 10000 avgt 3 58363.432 ± 22114.588 ns/op
ПФ
ПФ
ПФ
ПФ