Implementation notes: amd64, cryptothinkx, crypto_aead/trivia128v1

Computer: cryptothinkx
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_aead
Primitive: trivia128v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
166113? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017021420170105
166119? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017021420170105
174606? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
176964? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017021420170105
180162? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
180609? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017021420170105
180915? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017021420170105
181110? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
182892? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017021420170105
186132? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
214461? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
215949? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
216015? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
216399? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017021420170105
216918? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
217026? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017021420170105
217260? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017021420170105
217332? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017021420170105
218136? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
222567? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
223083? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
223872? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017021420170105
225231? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
225303? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
226149? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017021420170105
226356? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017021420170105
227097? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017021420170105
228132? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
230628? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017021420170105
230715? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017021420170105
230931? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017021420170105
231234? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017021420170105
231288? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017021420170105
231624? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017021420170105
233214? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017021420170105
234435? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017021420170105
234738? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017021420170105
237903? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017021420170105
239121? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017021420170105
239151? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017021420170105
239196? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017021420170105
239775? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017021420170105
239835? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017021420170105
239838? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017021420170105
239979? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
241509? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017021420170105
241935? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017021420170105
247461? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017021420170105
249216? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017021420170105
250443? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017021420170105
253542? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017021420170105
254880? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017021420170105
257475? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017021420170105
258258? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017021420170105
258363? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
258456? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
260896? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017021420170105
262350? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017021420170105
266868? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017021420170105
266934? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017021420170105
267285? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
273663? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
273903? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017021420170105
277056? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017021420170105
278961? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017021420170105
279264? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017021420170105
281037? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
282474? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
282687? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017021420170105
282918? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017021420170105
283041? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017021420170105
283692? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017021420170105
285903? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017021420170105
285957? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017021420170105
289272? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
292128? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017021420170105
292245? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017021420170105
301860? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017021420170105
301899? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017021420170105
311859? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017021420170105
311997? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017021420170105
312300? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017021420170105
313044? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017021420170105
313914? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
314436? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017021420170105
315156? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
316332? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
317352? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
322257? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
323016? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017021420170105
324045? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017021420170105
324168? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017021420170105
324468? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
324732? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017021420170105
333993? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017021420170105
335349? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
337124? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017021420170105
338728? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017021420170105
340976? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017021420170105
343791? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017021420170105
346368? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017021420170105
350253? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017021420170105
352587? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017021420170105
357816? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017021420170105
358632? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017021420170105
359127? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017021420170105
362712? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017021420170105
365247? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
374397? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
374481? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017021420170105
384261? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017021420170105
385926? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
386208? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017021420170105
386838? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017021420170105
389781? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017021420170105
398889? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
399669? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
412980? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017021420170105
427611? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
492736? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017021420170105
774900? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017021420170105
1232260? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
1605603? ? ?? ? ?refgcc2017021420170105
1627623? ? ?? ? ?refcc2017021420170105
1652442? ? ?? ? ?refgcc_-funroll-loops2017021420170105

Compiler output

Implementation: crypto_aead/trivia128v1/ref
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: encrypt.c:118:12: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
encrypt.c: if((a>>31)&1==1) result = result^(CONST_alpha_32);
encrypt.c: ^~~~~
encrypt.c: encrypt.c:118:12: note: place parentheses around the '==' expression to silence this warning
encrypt.c: if((a>>31)&1==1) result = result^(CONST_alpha_32);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: encrypt.c:118:12: note: place parentheses around the & expression to evaluate it first
encrypt.c: if((a>>31)&1==1) result = result^(CONST_alpha_32);
encrypt.c: ^
encrypt.c: ...
encrypt.c: ^~~~~
encrypt.c: encrypt.c:184:6: note: place parentheses around the '==' expression to silence this warning
encrypt.c: if(b&1==1) result=result^a;
encrypt.c: ^
encrypt.c: ( )
encrypt.c: encrypt.c:184:6: note: place parentheses around the & expression to evaluate it first
encrypt.c: if(b&1==1) result=result^a;
encrypt.c: ^
encrypt.c: ( )
encrypt.c: 4 warnings generated.

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref