< prev index next >
test/jdk/jdk/incubator/vector/benchmark/src/main/java/benchmark/jdk/incubator/vector/FloatMaxVector.java
Print this page
rev 55606 : 8221812: Fine-tune jmh test for vector api
Summary: To compare performance of vector api and auto vectorization, vector
api and scalar test cases are updated to keep aligned.
Reviewed-by: duke
*** 1,7 ****
/*
! * Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
--- 1,7 ----
/*
! * Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*** 301,405 ****
@Benchmark
public void addAll(Blackhole bh) {
float[] a = fa.apply(SPECIES.length());
- float[] r = fr.apply(SPECIES.length());
float ra = 0;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
- for (int i = 0; i < a.length; i += SPECIES.length()) {
- FloatVector av = FloatVector.fromArray(SPECIES, a, i);
- r[i] = av.addAll();
- }
- }
-
- for (int ic = 0; ic < INVOC_COUNT; ic++) {
ra = 0;
for (int i = 0; i < a.length; i += SPECIES.length()) {
FloatVector av = FloatVector.fromArray(SPECIES, a, i);
ra += av.addAll();
}
}
-
bh.consume(ra);
- bh.consume(r);
}
@Benchmark
public void mulAll(Blackhole bh) {
float[] a = fa.apply(SPECIES.length());
- float[] r = fr.apply(SPECIES.length());
float ra = 1;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
- for (int i = 0; i < a.length; i += SPECIES.length()) {
- FloatVector av = FloatVector.fromArray(SPECIES, a, i);
- r[i] = av.mulAll();
- }
- }
-
- for (int ic = 0; ic < INVOC_COUNT; ic++) {
ra = 1;
for (int i = 0; i < a.length; i += SPECIES.length()) {
FloatVector av = FloatVector.fromArray(SPECIES, a, i);
ra *= av.mulAll();
}
}
-
bh.consume(ra);
- bh.consume(r);
}
@Benchmark
public void minAll(Blackhole bh) {
float[] a = fa.apply(SPECIES.length());
- float[] r = fr.apply(SPECIES.length());
float ra = Float.POSITIVE_INFINITY;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
- for (int i = 0; i < a.length; i += SPECIES.length()) {
- FloatVector av = FloatVector.fromArray(SPECIES, a, i);
- r[i] = av.minAll();
- }
- }
-
- for (int ic = 0; ic < INVOC_COUNT; ic++) {
ra = Float.POSITIVE_INFINITY;
for (int i = 0; i < a.length; i += SPECIES.length()) {
FloatVector av = FloatVector.fromArray(SPECIES, a, i);
ra = (float)Math.min(ra, av.minAll());
}
}
-
bh.consume(ra);
- bh.consume(r);
}
@Benchmark
public void maxAll(Blackhole bh) {
float[] a = fa.apply(SPECIES.length());
- float[] r = fr.apply(SPECIES.length());
float ra = Float.NEGATIVE_INFINITY;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
- for (int i = 0; i < a.length; i += SPECIES.length()) {
- FloatVector av = FloatVector.fromArray(SPECIES, a, i);
- r[i] = av.maxAll();
- }
- }
-
- for (int ic = 0; ic < INVOC_COUNT; ic++) {
ra = Float.NEGATIVE_INFINITY;
for (int i = 0; i < a.length; i += SPECIES.length()) {
FloatVector av = FloatVector.fromArray(SPECIES, a, i);
ra = (float)Math.max(ra, av.maxAll());
}
}
-
bh.consume(ra);
- bh.consume(r);
}
@Benchmark
--- 301,365 ----
< prev index next >