< prev index next >

test/jdk/jdk/incubator/vector/benchmark/src/main/java/benchmark/crypto/Poly1305Bench.java

Print this page
rev 55594 : tests and benchmark changes

*** 76,100 **** private static final int BITS_PER_LIMB = 26; private static final int LIMB_MASK = (1 << BITS_PER_LIMB) - 1; private static final int KEY_LENGTH = 32; private static final int RS_LENGTH = KEY_LENGTH / 2; ! private final LongVector.LongSpecies longSpecies; ! private final IntVector.IntSpecies intSpecies; private final int vectorWidth; private final int parBlockCount; private final LongVector.Shuffle<Long> inShuffle0; private final LongVector.Shuffle<Long> inShuffle1; private final IntVector.Mask<Long> inMask; public Poly1305Vector(Vector.Shape shape) { ! this.longSpecies = LongVector.species(shape); int intSize = shape.bitSize() / 2; Vector.Shape intShape = Vector.Shape.forBitSize(intSize); ! this.intSpecies = IntVector.species(intShape); this.vectorWidth = longSpecies.length(); this.parBlockCount = vectorWidth * 16; this.inShuffle0 = makeInShuffle0(); this.inShuffle1 = makeInShuffle1(); --- 76,100 ---- private static final int BITS_PER_LIMB = 26; private static final int LIMB_MASK = (1 << BITS_PER_LIMB) - 1; private static final int KEY_LENGTH = 32; private static final int RS_LENGTH = KEY_LENGTH / 2; ! private final Vector.Species<Long> longSpecies; ! private final Vector.Species<Integer> intSpecies; private final int vectorWidth; private final int parBlockCount; private final LongVector.Shuffle<Long> inShuffle0; private final LongVector.Shuffle<Long> inShuffle1; private final IntVector.Mask<Long> inMask; public Poly1305Vector(Vector.Shape shape) { ! this.longSpecies = Vector.Species.of(long.class, shape); int intSize = shape.bitSize() / 2; Vector.Shape intShape = Vector.Shape.forBitSize(intSize); ! this.intSpecies = Vector.Species.of(int.class, intShape); this.vectorWidth = longSpecies.length(); this.parBlockCount = vectorWidth * 16; this.inShuffle0 = makeInShuffle0(); this.inShuffle1 = makeInShuffle1();
*** 273,287 **** for (int i = 1; i < vectorWidth; i++) { r[i] = multiply(r[i - 1], r[0]); } int rUpIndex = vectorWidth - 1; ! IntVector rUp0_int = intSpecies.broadcast(r[rUpIndex][0]); ! IntVector rUp1_int = intSpecies.broadcast(r[rUpIndex][1]); ! IntVector rUp2_int = intSpecies.broadcast(r[rUpIndex][2]); ! IntVector rUp3_int = intSpecies.broadcast(r[rUpIndex][3]); ! IntVector rUp4_int = intSpecies.broadcast(r[rUpIndex][4]); IntVector r5Up1_int = rUp1_int.mul(5); IntVector r5Up2_int = rUp2_int.mul(5); IntVector r5Up3_int = rUp3_int.mul(5); IntVector r5Up4_int = rUp4_int.mul(5); --- 273,287 ---- for (int i = 1; i < vectorWidth; i++) { r[i] = multiply(r[i - 1], r[0]); } int rUpIndex = vectorWidth - 1; ! IntVector rUp0_int = IntVector.broadcast(intSpecies, r[rUpIndex][0]); ! IntVector rUp1_int = IntVector.broadcast(intSpecies, r[rUpIndex][1]); ! IntVector rUp2_int = IntVector.broadcast(intSpecies, r[rUpIndex][2]); ! IntVector rUp3_int = IntVector.broadcast(intSpecies, r[rUpIndex][3]); ! IntVector rUp4_int = IntVector.broadcast(intSpecies, r[rUpIndex][4]); IntVector r5Up1_int = rUp1_int.mul(5); IntVector r5Up2_int = rUp2_int.mul(5); IntVector r5Up3_int = rUp3_int.mul(5); IntVector r5Up4_int = rUp4_int.mul(5);
< prev index next >