Implementation notes: amd64, cryptothinkx, crypto_aead/trivia0v1

Computer: cryptothinkx
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_aead
Primitive: trivia0v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
174885? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017021420170105
177921? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017021420170105
184089? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
184134? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
184179? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
184485? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017021420170105
186936? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017021420170105
186966? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017021420170105
196596? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017021420170105
200896? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017021420170105
207843? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017021420170105
208152? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017021420170105
208407? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017021420170105
209790? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017021420170105
210081? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017021420170105
210351? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
210423? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
213210? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
213480? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
213552? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017021420170105
214215? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017021420170105
214650? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017021420170105
215109? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017021420170105
215187? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017021420170105
215262? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017021420170105
215403? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
215553? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017021420170105
215955? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017021420170105
219897? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
219927? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
220149? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017021420170105
220836? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017021420170105
221142? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017021420170105
221601? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017021420170105
222471? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017021420170105
222483? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017021420170105
222675? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
222798? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
224595? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017021420170105
224670? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017021420170105
226809? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017021420170105
230502? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017021420170105
235284? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017021420170105
238428? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017021420170105
239058? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017021420170105
239151? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017021420170105
239205? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017021420170105
239349? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017021420170105
239607? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017021420170105
239706? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
244095? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017021420170105
245613? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017021420170105
246600? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017021420170105
246885? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017021420170105
246999? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017021420170105
247131? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017021420170105
247149? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017021420170105
247170? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017021420170105
255138? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017021420170105
263814? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017021420170105
264342? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
264843? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017021420170105
266445? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017021420170105
272223? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
273660? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017021420170105
277272? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017021420170105
277407? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017021420170105
279813? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
281013? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
281106? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
282198? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017021420170105
282378? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017021420170105
282483? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017021420170105
283038? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017021420170105
286539? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017021420170105
294999? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017021420170105
301854? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017021420170105
304617? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
304926? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017021420170105
305667? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017021420170105
306162? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017021420170105
313611? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
314313? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017021420170105
314367? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017021420170105
315573? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017021420170105
316002? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017021420170105
327996? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017021420170105
328356? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017021420170105
328854? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017021420170105
334896? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017021420170105
348944? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017021420170105
350968? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017021420170105
355845? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017021420170105
360816? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017021420170105
366537? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
375612? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017021420170105
375696? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017021420170105
376767? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
377094? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017021420170105
377373? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017021420170105
380820? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017021420170105
384375? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017021420170105
384804? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017021420170105
385077? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
385317? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017021420170105
385467? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017021420170105
385710? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
385833? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017021420170105
386031? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017021420170105
386154? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017021420170105
386388? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
387594? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
388938? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017021420170105
398370? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
399948? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017021420170105
399951? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
399957? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017021420170105
400059? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017021420170105
400494? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017021420170105
414246? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017021420170105
421964? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017021420170105
443508? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017021420170105
1576656? ? ?? ? ?refcc2017021420170105
1663830? ? ?? ? ?refgcc2017021420170105
1732536? ? ?? ? ?refgcc_-funroll-loops2017021420170105

Compiler output

Implementation: crypto_aead/trivia0v1/ref
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
encrypt.c: encrypt.c:123: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:123: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:123: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:189: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:189: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