< prev index next >
test/jdk/jdk/incubator/vector/benchmark/src/main/java/benchmark/jdk/incubator/vector/ShortScalar.java
Print this page
rev 55894 : 8222897: [vector] Renaming of shift, rotate operations. Few other api changes.
Summary: Renaming of shift, rotate operations. Few other api changes.
Reviewed-by: jrose, briangoetz
*** 319,384 ****
!
@Benchmark
! public void aShiftRShift(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
for (int ic = 0; ic < INVOC_COUNT; ic++) {
for (int i = 0; i < as.length; i++) {
short a = as[i];
short b = bs[i];
! rs[i] = (short)((a >> (b & 15)));
}
}
bh.consume(rs);
}
@Benchmark
! public void aShiftRMaskedShift(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
boolean[] ms = fm.apply(size);
for (int ic = 0; ic < INVOC_COUNT; ic++) {
for (int i = 0; i < as.length; i++) {
short a = as[i];
short b = bs[i];
! boolean m = ms[i % ms.length];
! rs[i] = (m ? (short)((a >> (b & 15))) : a);
}
}
bh.consume(rs);
}
@Benchmark
! public void shiftLShift(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
for (int ic = 0; ic < INVOC_COUNT; ic++) {
--- 319,468 ----
+ @Benchmark
+ public void shiftLeft(Blackhole bh) {
+ short[] as = fa.apply(size);
+ short[] bs = fb.apply(size);
+ short[] rs = fr.apply(size);
+ for (int ic = 0; ic < INVOC_COUNT; ic++) {
+ for (int i = 0; i < as.length; i++) {
+ short a = as[i];
+ short b = bs[i];
+ rs[i] = (short)((a << (b & 0xF)));
+ }
+ }
+ bh.consume(rs);
+ }
+ @Benchmark
+ public void shiftLeftMasked(Blackhole bh) {
+ short[] as = fa.apply(size);
+ short[] bs = fb.apply(size);
+ short[] rs = fr.apply(size);
+ boolean[] ms = fm.apply(size);
! for (int ic = 0; ic < INVOC_COUNT; ic++) {
! for (int i = 0; i < as.length; i++) {
! short a = as[i];
! short b = bs[i];
! if (ms[i % ms.length]) {
! rs[i] = (short)((a << (b & 0xF)));
! } else {
! rs[i] = a;
! }
! }
! }
! bh.consume(rs);
! }
@Benchmark
! public void shiftRight(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
for (int ic = 0; ic < INVOC_COUNT; ic++) {
for (int i = 0; i < as.length; i++) {
short a = as[i];
short b = bs[i];
! rs[i] = (short)((a >>> (b & 0xF)));
}
}
bh.consume(rs);
}
@Benchmark
! public void shiftRightMasked(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
boolean[] ms = fm.apply(size);
for (int ic = 0; ic < INVOC_COUNT; ic++) {
for (int i = 0; i < as.length; i++) {
short a = as[i];
short b = bs[i];
! if (ms[i % ms.length]) {
! rs[i] = (short)((a >>> (b & 0xF)));
! } else {
! rs[i] = a;
! }
! }
! }
! bh.consume(rs);
! }
!
!
!
!
!
!
!
! @Benchmark
! public void shiftArithmeticRight(Blackhole bh) {
! short[] as = fa.apply(size);
! short[] bs = fb.apply(size);
! short[] rs = fr.apply(size);
!
! for (int ic = 0; ic < INVOC_COUNT; ic++) {
! for (int i = 0; i < as.length; i++) {
! short a = as[i];
! short b = bs[i];
! rs[i] = (short)((a >> (b & 0xF)));
}
}
bh.consume(rs);
}
@Benchmark
! public void shiftArithmeticRightMasked(Blackhole bh) {
! short[] as = fa.apply(size);
! short[] bs = fb.apply(size);
! short[] rs = fr.apply(size);
! boolean[] ms = fm.apply(size);
!
! for (int ic = 0; ic < INVOC_COUNT; ic++) {
! for (int i = 0; i < as.length; i++) {
! short a = as[i];
! short b = bs[i];
! if (ms[i % ms.length]) {
! rs[i] = (short)((a >> (b & 0xF)));
! } else {
! rs[i] = a;
! }
! }
! }
! bh.consume(rs);
! }
!
!
!
!
!
!
!
! @Benchmark
! public void shiftLeftShift(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
for (int ic = 0; ic < INVOC_COUNT; ic++) {
*** 393,403 ****
}
@Benchmark
! public void shiftLMaskedShift(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
boolean[] ms = fm.apply(size);
--- 477,487 ----
}
@Benchmark
! public void shiftLeftMaskedShift(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
boolean[] ms = fm.apply(size);
*** 413,424 ****
bh.consume(rs);
}
@Benchmark
! public void shiftRShift(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
for (int ic = 0; ic < INVOC_COUNT; ic++) {
--- 497,512 ----
bh.consume(rs);
}
+
+
+
+
@Benchmark
! public void shiftRightShift(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
for (int ic = 0; ic < INVOC_COUNT; ic++) {
*** 433,443 ****
}
@Benchmark
! public void shiftRMaskedShift(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
boolean[] ms = fm.apply(size);
--- 521,531 ----
}
@Benchmark
! public void shiftRightMaskedShift(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
boolean[] ms = fm.apply(size);
*** 452,461 ****
--- 540,593 ----
bh.consume(rs);
}
+
+
+
+
+
+ @Benchmark
+ public void shiftArithmeticRightShift(Blackhole bh) {
+ short[] as = fa.apply(size);
+ short[] bs = fb.apply(size);
+ short[] rs = fr.apply(size);
+
+ for (int ic = 0; ic < INVOC_COUNT; ic++) {
+ for (int i = 0; i < as.length; i++) {
+ short a = as[i];
+ short b = bs[i];
+ rs[i] = (short)((a >> (b & 15)));
+ }
+ }
+
+ bh.consume(rs);
+ }
+
+
+
+ @Benchmark
+ public void shiftArithmeticRightMaskedShift(Blackhole bh) {
+ short[] as = fa.apply(size);
+ short[] bs = fb.apply(size);
+ short[] rs = fr.apply(size);
+ boolean[] ms = fm.apply(size);
+
+ for (int ic = 0; ic < INVOC_COUNT; ic++) {
+ for (int i = 0; i < as.length; i++) {
+ short a = as[i];
+ short b = bs[i];
+ boolean m = ms[i % ms.length];
+ rs[i] = (m ? (short)((a >> (b & 15))) : a);
+ }
+ }
+
+ bh.consume(rs);
+ }
+
+
@Benchmark
public void max(Blackhole bh) {
short[] as = fa.apply(size);
short[] bs = fb.apply(size);
short[] rs = fr.apply(size);
*** 488,498 ****
bh.consume(rs);
}
@Benchmark
! public void andAll(Blackhole bh) {
short[] as = fa.apply(size);
short r = -1;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = -1;
for (int i = 0; i < as.length; i++) {
--- 620,630 ----
bh.consume(rs);
}
@Benchmark
! public void andLanes(Blackhole bh) {
short[] as = fa.apply(size);
short r = -1;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = -1;
for (int i = 0; i < as.length; i++) {
*** 503,513 ****
}
@Benchmark
! public void orAll(Blackhole bh) {
short[] as = fa.apply(size);
short r = 0;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = 0;
for (int i = 0; i < as.length; i++) {
--- 635,645 ----
}
@Benchmark
! public void orLanes(Blackhole bh) {
short[] as = fa.apply(size);
short r = 0;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = 0;
for (int i = 0; i < as.length; i++) {
*** 518,528 ****
}
@Benchmark
! public void xorAll(Blackhole bh) {
short[] as = fa.apply(size);
short r = 0;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = 0;
for (int i = 0; i < as.length; i++) {
--- 650,660 ----
}
@Benchmark
! public void xorLanes(Blackhole bh) {
short[] as = fa.apply(size);
short r = 0;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = 0;
for (int i = 0; i < as.length; i++) {
*** 532,542 ****
bh.consume(r);
}
@Benchmark
! public void addAll(Blackhole bh) {
short[] as = fa.apply(size);
short r = 0;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = 0;
for (int i = 0; i < as.length; i++) {
--- 664,674 ----
bh.consume(r);
}
@Benchmark
! public void addLanes(Blackhole bh) {
short[] as = fa.apply(size);
short r = 0;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = 0;
for (int i = 0; i < as.length; i++) {
*** 545,555 ****
}
bh.consume(r);
}
@Benchmark
! public void mulAll(Blackhole bh) {
short[] as = fa.apply(size);
short r = 1;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = 1;
for (int i = 0; i < as.length; i++) {
--- 677,687 ----
}
bh.consume(r);
}
@Benchmark
! public void mulLanes(Blackhole bh) {
short[] as = fa.apply(size);
short r = 1;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = 1;
for (int i = 0; i < as.length; i++) {
*** 558,568 ****
}
bh.consume(r);
}
@Benchmark
! public void minAll(Blackhole bh) {
short[] as = fa.apply(size);
short r = Short.MAX_VALUE;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = Short.MAX_VALUE;
for (int i = 0; i < as.length; i++) {
--- 690,700 ----
}
bh.consume(r);
}
@Benchmark
! public void minLanes(Blackhole bh) {
short[] as = fa.apply(size);
short r = Short.MAX_VALUE;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = Short.MAX_VALUE;
for (int i = 0; i < as.length; i++) {
*** 571,581 ****
}
bh.consume(r);
}
@Benchmark
! public void maxAll(Blackhole bh) {
short[] as = fa.apply(size);
short r = Short.MIN_VALUE;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = Short.MIN_VALUE;
for (int i = 0; i < as.length; i++) {
--- 703,713 ----
}
bh.consume(r);
}
@Benchmark
! public void maxLanes(Blackhole bh) {
short[] as = fa.apply(size);
short r = Short.MIN_VALUE;
for (int ic = 0; ic < INVOC_COUNT; ic++) {
r = Short.MIN_VALUE;
for (int i = 0; i < as.length; i++) {
< prev index next >