Implementation notes: amd64, ryzen, crypto_aead/trivia0v1

Computer: ryzen
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20170904
Operation: crypto_aead
Primitive: trivia0v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
192510? ? ?? ? ?reficc_-no-vec2017091220170904
196050? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017091220170904
196050? ? ?? ? ?reficc2017091220170904
196230? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017091220170904
196350? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017091220170904
196470? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091220170904
203220? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017091220170904
203250? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017091220170904
203760? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091220170904
203760? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017091220170904
203820? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017091220170904
207270? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017091220170904
207300? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017091220170904
207420? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017091220170904
207570? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017091220170904
207570? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017091220170904
207600? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091220170904
207690? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017091220170904
207810? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017091220170904
207810? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017091220170904
207840? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017091220170904
208560? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017091220170904
210150? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017091220170904
212640? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017091220170904
215580? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091220170904
220320? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017091220170904
220350? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017091220170904
220680? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017091220170904
220890? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017091220170904
221010? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017091220170904
221010? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017091220170904
221640? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017091220170904
221790? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017091220170904
221970? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017091220170904
222120? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017091220170904
296280? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017091220170904
296280? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017091220170904
297660? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017091220170904
314640? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017091220170904
315810? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017091220170904
327360? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017091220170904
327600? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017091220170904
328560? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017091220170904
328590? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017091220170904
328800? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017091220170904
329550? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017091220170904
332880? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017091220170904
333060? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017091220170904
334740? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017091220170904
358890? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017091220170904
360090? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017091220170904
486150? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
487350? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
488520? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
491040? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017091220170904
491490? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
506460? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
507090? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
507630? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
508710? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
606900? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017091220170904
609090? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
609450? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091220170904
610920? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017091220170904
612540? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
632130? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
632670? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017091220170904
633060? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017091220170904
633090? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017091220170904
643470? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
740790? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017091220170904
844950? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
845100? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
858690? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017091220170904
859140? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017091220170904
872430? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017091220170904
902310? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
902940? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
904890? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
905400? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017091220170904
910770? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017091220170904
911340? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017091220170904
911370? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017091220170904
911790? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017091220170904
912660? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017091220170904
912930? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017091220170904
914670? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017091220170904
930270? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
930570? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017091220170904
932430? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017091220170904
932880? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
932970? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017091220170904
932970? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
933360? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017091220170904
933570? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017091220170904
933750? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017091220170904
933960? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017091220170904
937080? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017091220170904
937530? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017091220170904
980100? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017091220170904
980430? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
982020? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017091220170904
983610? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017091220170904
985140? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017091220170904
985500? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017091220170904
985710? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017091220170904
1532940? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091220170904
1611750? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017091220170904
1783650? ? ?? ? ?refgcc_-funroll-loops2017091220170904
1784850? ? ?? ? ?refcc2017091220170904
1784940? ? ?? ? ?refgcc2017091220170904
2182710? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017091220170904
2335050? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017091220170904

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:148:12: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
encrypt.c: if((b>>63)&1==1) result = result^(CONST_beta_64);
encrypt.c: ^~~~~
encrypt.c: encrypt.c:148:12: note: place parentheses around the '==' expression to silence this warning
encrypt.c: if((b>>63)&1==1) result = result^(CONST_beta_64);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: encrypt.c:148:12: note: place parentheses around the & expression to evaluate it first
encrypt.c: if((b>>63)&1==1) result = result^(CONST_beta_64);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: encrypt.c:183:8: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
encrypt.c: if(b&1==1) result=a;
encrypt.c: ^~~~~
encrypt.c: ...

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

Compiler output

Implementation: crypto_aead/trivia0v1/ref
Compiler: icc -O1 -static
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
icc -O1 -static ref
icc -O1 -static -no-vec ref
icc -O2 -static ref
icc -O2 -static -no-vec ref
icc -O3 -static ref
icc -O3 -static -no-vec ref
icc -Os -static ref
icc -Os -static -no-vec ref
icc -m64 -O1 -static ref
icc -m64 -O1 -static -no-vec ref
icc -m64 -O2 -static ref
icc -m64 -O2 -static -no-vec ref
icc -m64 -O3 -static ref
icc -m64 -O3 -static -no-vec ref
icc -m64 -Os -static ref
icc -m64 -Os -static -no-vec ref

Compiler output

Implementation: crypto_aead/trivia0v1/ref
Compiler: icc -O1 -xB -static
encrypt.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xB -static ref
icc -O1 -xB -static -no-vec ref
icc -O2 -xB -static ref
icc -O2 -xB -static -no-vec ref
icc -O3 -xB -static ref
icc -O3 -xB -static -no-vec ref
icc -Os -xB -static ref
icc -Os -xB -static -no-vec ref

Compiler output

Implementation: crypto_aead/trivia0v1/ref
Compiler: icc -O1 -xK -static
encrypt.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xK -static ref
icc -O1 -xK -static -no-vec ref
icc -O2 -xK -static ref
icc -O2 -xK -static -no-vec ref
icc -O3 -xK -static ref
icc -O3 -xK -static -no-vec ref
icc -Os -xK -static ref
icc -Os -xK -static -no-vec ref

Compiler output

Implementation: crypto_aead/trivia0v1/ref
Compiler: icc -O1 -xN -static
encrypt.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xN -static ref
icc -O1 -xN -static -no-vec ref
icc -O2 -xN -static ref
icc -O2 -xN -static -no-vec ref
icc -O3 -xN -static ref
icc -O3 -xN -static -no-vec ref
icc -Os -xN -static ref
icc -Os -xN -static -no-vec ref

Compiler output

Implementation: crypto_aead/trivia0v1/ref
Compiler: icc -O1 -xW -static
encrypt.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xW -static ref
icc -O1 -xW -static -no-vec ref
icc -O2 -xW -static ref
icc -O2 -xW -static -no-vec ref
icc -O3 -xW -static ref
icc -O3 -xW -static -no-vec ref
icc -Os -xW -static ref
icc -Os -xW -static -no-vec ref

Compiler output

Implementation: crypto_aead/trivia0v1/ref
Compiler: icc -fast
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/kernelrandombytes.o; was the source file compiled with -ipo
try.c: ipo: warning #11003: no IR in object file /root/supercop-20170904/supercop-data/ryzen/amd64/lib/cpucycles.o; was the source file compiled with -ipo
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -fast ref

Compiler output

Implementation: crypto_aead/trivia0v1/ref
Compiler: icc -m64 -xHost -vec-report0 -static
encrypt.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: icc: command line remark #10148: option '-vec-report0' not supported
try.c: ld: cannot find -lcrypto

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
icc -m64 -xHost -vec-report0 -static ref