Implementation notes: amd64, ryzen, crypto_hash/md6d256

Computer: ryzen
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20170904
Operation: crypto_hash
Primitive: md6d256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
27180? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091120170904
27210? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017091120170904
27270? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017091120170904
27450? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017091120170904
27510? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017091120170904
27540? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017091120170904
27570? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091120170904
27570? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017091120170904
27600? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017091120170904
27600? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017091120170904
27720? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017091120170904
27870? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017091120170904
27870? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017091120170904
27870? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017091120170904
27900? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017091120170904
27900? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017091120170904
27930? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017091120170904
27960? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091120170904
27960? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017091120170904
28590? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017091120170904
28650? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017091120170904
29670? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017091120170904
29700? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017091120170904
29700? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017091120170904
29730? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017091120170904
29730? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017091120170904
29730? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017091120170904
29760? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017091120170904
29760? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017091120170904
29790? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017091120170904
29820? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017091120170904
29850? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017091120170904
29880? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017091120170904
29880? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017091120170904
29910? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017091120170904
29940? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017091120170904
29940? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017091120170904
29940? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017091120170904
29970? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017091120170904
29970? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017091120170904
30150? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017091120170904
30150? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017091120170904
30150? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017091120170904
30150? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017091120170904
30150? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017091120170904
30180? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017091120170904
30180? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017091120170904
31440? ? ?? ? ?reficc2017091120170904
31770? ? ?? ? ?reficc_-no-vec2017091120170904
37830? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017091120170904
38520? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017091120170904
38610? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017091120170904
38760? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017091120170904
38790? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017091120170904
38820? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017091120170904
38850? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091120170904
38850? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017091120170904
39210? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017091120170904
39240? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017091120170904
39390? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017091120170904
39420? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017091120170904
39420? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017091120170904
39420? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017091120170904
39420? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017091120170904
39450? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017091120170904
39450? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017091120170904
39480? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017091120170904
39480? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017091120170904
39600? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017091120170904
39600? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017091120170904
39600? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017091120170904
39810? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017091120170904
39840? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017091120170904
39870? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017091120170904
40050? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017091120170904
40110? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017091120170904
40350? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017091120170904
43950? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017091120170904
44010? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017091120170904
44220? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017091120170904
44340? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017091120170904
44520? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017091120170904
44550? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091120170904
44580? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017091120170904
44910? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017091120170904
44940? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017091120170904
44970? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017091120170904
44970? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017091120170904
45150? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017091120170904
45210? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091120170904
45360? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017091120170904
45360? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017091120170904
45360? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017091120170904
45390? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017091120170904
50550? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091120170904
50580? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017091120170904
50580? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017091120170904
50610? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017091120170904
51000? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017091120170904
51030? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017091120170904
51060? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017091120170904
51060? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017091120170904
58890? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017091120170904
68760? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017091120170904
68760? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017091120170904
68880? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017091120170904
68970? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017091120170904
69480? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017091120170904
96450? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017091120170904
113460? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017091120170904
145440? ? ?? ? ?refcc2017091120170904
145440? ? ?? ? ?refgcc2017091120170904
145470? ? ?? ? ?refgcc_-funroll-loops2017091120170904

Compiler output

Implementation: crypto_hash/md6d256/ref
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
md6_compress.c: md6_compress.c:424:11: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
md6_compress.c: if ( (C == NULL) ) return MD6_NULL_C;
md6_compress.c: ~~^~~~~~~
md6_compress.c: md6_compress.c:424:11: note: remove extraneous parentheses around the comparison to silence this warning
md6_compress.c: if ( (C == NULL) ) return MD6_NULL_C;
md6_compress.c: ~ ^ ~
md6_compress.c: md6_compress.c:424:11: note: use '=' to turn this equality comparison into an assignment
md6_compress.c: if ( (C == NULL) ) return MD6_NULL_C;
md6_compress.c: ^~
md6_compress.c: =
md6_compress.c: md6_compress.c:425:11: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
md6_compress.c: if ( (B == NULL) ) return MD6_NULL_B;
md6_compress.c: ~~^~~~~~~
md6_compress.c: md6_compress.c:425:11: note: remove extraneous parentheses around the comparison to silence this warning
md6_compress.c: if ( (B == NULL) ) return MD6_NULL_B;
md6_compress.c: ~ ^ ~
md6_compress.c: md6_compress.c:425:11: note: use '=' to turn this equality comparison into an assignment
md6_compress.c: if ( (B == NULL) ) return MD6_NULL_B;
md6_compress.c: ^~
md6_compress.c: =
md6_compress.c: md6_compress.c:431:11: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
md6_compress.c: if ( (K == NULL) ) return MD6_NULL_K;
md6_compress.c: ~~^~~~~~~
md6_compress.c: md6_compress.c:431:11: note: remove extraneous parentheses around the comparison to silence this warning
md6_compress.c: if ( (K == NULL) ) return MD6_NULL_K;
md6_compress.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_hash/md6d256/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_hash/md6d256/ref
Compiler: icc -O1 -xB -static
hash.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
md6_compress.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
md6_mode.c: icc: command line warning #10131: extension 'B' not supported ignored in option '-x'
md6_nist.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_hash/md6d256/ref
Compiler: icc -O1 -xK -static
hash.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
md6_compress.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
md6_mode.c: icc: command line warning #10131: extension 'K' not supported ignored in option '-x'
md6_nist.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_hash/md6d256/ref
Compiler: icc -O1 -xN -static
hash.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
md6_compress.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
md6_mode.c: icc: command line warning #10131: extension 'N' not supported ignored in option '-x'
md6_nist.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_hash/md6d256/ref
Compiler: icc -O1 -xW -static
hash.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
md6_compress.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
md6_mode.c: icc: command line warning #10131: extension 'W' not supported ignored in option '-x'
md6_nist.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_hash/md6d256/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_hash/md6d256/ref
Compiler: icc -m64 -xHost -vec-report0 -static
hash.c: icc: command line remark #10148: option '-vec-report0' not supported
md6_compress.c: icc: command line remark #10148: option '-vec-report0' not supported
md6_mode.c: icc: command line remark #10148: option '-vec-report0' not supported
md6_nist.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