< prev index next >

test/jdk/jdk/incubator/vector/benchmark/src/main/java/benchmark/jdk/incubator/vector/SumOfUnsignedBytes.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

*** 78,92 **** var acc = IntVector.zero(I256); for (int i = 0; i < data.length; i += B256.length()) { var vb = ByteVector.fromArray(B256, data, i); var vi = (IntVector)vb.reinterpret(I256); for (int j = 0; j < 4; j++) { ! var tj = vi.shiftR(j * 8).and(lobyte_mask); acc = acc.add(tj); } } ! return (int)Integer.toUnsignedLong(acc.addAll()); } // 2. 16-bit accumulators @Benchmark public int vectorShort() { --- 78,92 ---- var acc = IntVector.zero(I256); for (int i = 0; i < data.length; i += B256.length()) { var vb = ByteVector.fromArray(B256, data, i); var vi = (IntVector)vb.reinterpret(I256); for (int j = 0; j < 4; j++) { ! var tj = vi.shiftRight(j * 8).and(lobyte_mask); acc = acc.add(tj); } } ! return (int)Integer.toUnsignedLong(acc.addLanes()); } // 2. 16-bit accumulators @Benchmark public int vectorShort() {
*** 96,114 **** var acc = ShortVector.zero(S256); for (int i = 0; i < data.length; i += B256.length()) { var vb = ByteVector.fromArray(B256, data, i); var vs = (ShortVector)vb.reinterpret(S256); for (int j = 0; j < 2; j++) { ! var tj = vs.shiftR(j * 8).and(lobyte_mask); acc = acc.add(tj); } } int mid = S128.length(); var accLo = ((IntVector)(acc .reshape(S128).cast(I256))).and(0xFFFF); // low half as ints ! var accHi = ((IntVector)(acc.shiftEL(mid).reshape(S128).cast(I256))).and(0xFFFF); // high half as ints ! return accLo.addAll() + accHi.addAll(); } /* // 3. 8-bit halves (MISSING: _mm_adds_epu8) @Benchmark --- 96,114 ---- var acc = ShortVector.zero(S256); for (int i = 0; i < data.length; i += B256.length()) { var vb = ByteVector.fromArray(B256, data, i); var vs = (ShortVector)vb.reinterpret(S256); for (int j = 0; j < 2; j++) { ! var tj = vs.shiftRight(j * 8).and(lobyte_mask); acc = acc.add(tj); } } int mid = S128.length(); var accLo = ((IntVector)(acc .reshape(S128).cast(I256))).and(0xFFFF); // low half as ints ! var accHi = ((IntVector)(acc.shiftLanesLeft(mid).reshape(S128).cast(I256))).and(0xFFFF); // high half as ints ! return accLo.addLanes() + accHi.addLanes(); } /* // 3. 8-bit halves (MISSING: _mm_adds_epu8) @Benchmark
< prev index next >