< prev index next >

test/jdk/jdk/incubator/vector/benchmark/src/main/java/benchmark/jdk/incubator/vector/Short128Vector.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.
*** 483,667 **** @Benchmark public void andAll(Blackhole bh) { short[] a = fa.apply(SPECIES.length()); - short[] r = fr.apply(SPECIES.length()); short ra = -1; for (int ic = 0; ic < INVOC_COUNT; ic++) { - for (int i = 0; i < a.length; i += SPECIES.length()) { - ShortVector av = ShortVector.fromArray(SPECIES, a, i); - r[i] = av.andAll(); - } - } - - for (int ic = 0; ic < INVOC_COUNT; ic++) { ra = -1; for (int i = 0; i < a.length; i += SPECIES.length()) { ShortVector av = ShortVector.fromArray(SPECIES, a, i); ra &= av.andAll(); } } - bh.consume(ra); - bh.consume(r); } @Benchmark public void orAll(Blackhole bh) { short[] a = fa.apply(SPECIES.length()); - short[] r = fr.apply(SPECIES.length()); short ra = 0; for (int ic = 0; ic < INVOC_COUNT; ic++) { - for (int i = 0; i < a.length; i += SPECIES.length()) { - ShortVector av = ShortVector.fromArray(SPECIES, a, i); - r[i] = av.orAll(); - } - } - - for (int ic = 0; ic < INVOC_COUNT; ic++) { ra = 0; for (int i = 0; i < a.length; i += SPECIES.length()) { ShortVector av = ShortVector.fromArray(SPECIES, a, i); ra |= av.orAll(); } } - bh.consume(ra); - bh.consume(r); } @Benchmark public void xorAll(Blackhole bh) { short[] a = fa.apply(SPECIES.length()); - short[] r = fr.apply(SPECIES.length()); short ra = 0; for (int ic = 0; ic < INVOC_COUNT; ic++) { - for (int i = 0; i < a.length; i += SPECIES.length()) { - ShortVector av = ShortVector.fromArray(SPECIES, a, i); - r[i] = av.xorAll(); - } - } - - for (int ic = 0; ic < INVOC_COUNT; ic++) { ra = 0; for (int i = 0; i < a.length; i += SPECIES.length()) { ShortVector av = ShortVector.fromArray(SPECIES, a, i); ra ^= av.xorAll(); } } - bh.consume(ra); - bh.consume(r); } @Benchmark public void addAll(Blackhole bh) { short[] a = fa.apply(SPECIES.length()); - short[] r = fr.apply(SPECIES.length()); short ra = 0; for (int ic = 0; ic < INVOC_COUNT; ic++) { - for (int i = 0; i < a.length; i += SPECIES.length()) { - ShortVector av = ShortVector.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()) { ShortVector av = ShortVector.fromArray(SPECIES, a, i); ra += av.addAll(); } } - bh.consume(ra); - bh.consume(r); } @Benchmark public void mulAll(Blackhole bh) { short[] a = fa.apply(SPECIES.length()); - short[] r = fr.apply(SPECIES.length()); short ra = 1; for (int ic = 0; ic < INVOC_COUNT; ic++) { - for (int i = 0; i < a.length; i += SPECIES.length()) { - ShortVector av = ShortVector.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()) { ShortVector av = ShortVector.fromArray(SPECIES, a, i); ra *= av.mulAll(); } } - bh.consume(ra); - bh.consume(r); } @Benchmark public void minAll(Blackhole bh) { short[] a = fa.apply(SPECIES.length()); - short[] r = fr.apply(SPECIES.length()); short ra = Short.MAX_VALUE; for (int ic = 0; ic < INVOC_COUNT; ic++) { - for (int i = 0; i < a.length; i += SPECIES.length()) { - ShortVector av = ShortVector.fromArray(SPECIES, a, i); - r[i] = av.minAll(); - } - } - - for (int ic = 0; ic < INVOC_COUNT; ic++) { ra = Short.MAX_VALUE; for (int i = 0; i < a.length; i += SPECIES.length()) { ShortVector av = ShortVector.fromArray(SPECIES, a, i); ra = (short)Math.min(ra, av.minAll()); } } - bh.consume(ra); - bh.consume(r); } @Benchmark public void maxAll(Blackhole bh) { short[] a = fa.apply(SPECIES.length()); - short[] r = fr.apply(SPECIES.length()); short ra = Short.MIN_VALUE; for (int ic = 0; ic < INVOC_COUNT; ic++) { - for (int i = 0; i < a.length; i += SPECIES.length()) { - ShortVector av = ShortVector.fromArray(SPECIES, a, i); - r[i] = av.maxAll(); - } - } - - for (int ic = 0; ic < INVOC_COUNT; ic++) { ra = Short.MIN_VALUE; for (int i = 0; i < a.length; i += SPECIES.length()) { ShortVector av = ShortVector.fromArray(SPECIES, a, i); ra = (short)Math.max(ra, av.maxAll()); } } - bh.consume(ra); - bh.consume(r); } @Benchmark public void anyTrue(Blackhole bh) { --- 483,597 ----
< prev index next >