Implementation notes: amd64, cryptothinkx, crypto_hash/md6d384

Computer: cryptothinkx
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_hash
Primitive: md6d384
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
35700? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017020120170105
35730? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017020120170105
36108? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017020120170105
36579? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017020120170105
36585? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017020120170105
36687? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017020120170105
36720? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017020120170105
36837? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017020120170105
36933? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017020120170105
36960? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017020120170105
37008? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020120170105
37053? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017020120170105
37080? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017020120170105
37143? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017020120170105
37371? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017020120170105
37527? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017020120170105
37542? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017020120170105
37590? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017020120170105
37599? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017020120170105
37641? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017020120170105
37686? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020120170105
37728? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017020120170105
37773? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017020120170105
37794? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017020120170105
37869? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017020120170105
38235? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017020120170105
38343? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017020120170105
38412? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020120170105
38619? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017020120170105
38622? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017020120170105
38652? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020120170105
38688? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017020120170105
38751? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017020120170105
38778? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017020120170105
38817? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017020120170105
38829? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017020120170105
38880? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017020120170105
38883? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017020120170105
38892? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017020120170105
38907? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017020120170105
38937? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017020120170105
39168? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020120170105
39345? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017020120170105
39624? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017020120170105
40053? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020120170105
40056? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017020120170105
40263? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017020120170105
41316? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017020120170105
41472? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017020120170105
41526? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017020120170105
41541? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017020120170105
41577? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017020120170105
41703? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017020120170105
44172? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017020120170105
44866? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017020120170105
46089? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017020120170105
47745? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017020120170105
47928? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017020120170105
48048? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017020120170105
48084? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020120170105
48354? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017020120170105
48417? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017020120170105
48459? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017020120170105
48528? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017020120170105
49956? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020120170105
50787? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017020120170105
51102? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017020120170105
51141? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017020120170105
51240? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020120170105
51249? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017020120170105
51270? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017020120170105
51273? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017020120170105
51357? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017020120170105
51537? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020120170105
51660? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017020120170105
51771? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020120170105
51939? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017020120170105
52407? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017020120170105
52515? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017020120170105
52554? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017020120170105
52647? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017020120170105
52674? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017020120170105
52743? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017020120170105
52800? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017020120170105
52824? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020120170105
53058? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017020120170105
53571? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020120170105
54699? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017020120170105
54723? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017020120170105
55107? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017020120170105
56931? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017020120170105
56955? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017020120170105
57072? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017020120170105
58170? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017020120170105
58200? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017020120170105
58272? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017020120170105
58485? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017020120170105
58521? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017020120170105
58683? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017020120170105
58860? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017020120170105
58893? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017020120170105
58902? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017020120170105
59019? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017020120170105
59607? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017020120170105
59619? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017020120170105
59757? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017020120170105
60369? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017020120170105
60572? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017020120170105
61590? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017020120170105
61911? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017020120170105
62154? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020120170105
62181? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017020120170105
62307? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017020120170105
62637? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017020120170105
62694? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017020120170105
62727? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020120170105
62793? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017020120170105
62832? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017020120170105
63084? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017020120170105
63336? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017020120170105
64284? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017020120170105
67149? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020120170105
211350? ? ?? ? ?refgcc2017020120170105
226317? ? ?? ? ?refcc2017020120170105
234408? ? ?? ? ?refgcc_-funroll-loops2017020120170105

Compiler output

Implementation: crypto_hash/md6d384/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: if ( (Q == NULL) ) return MD6_NULL_Q;
md6_compress.c: ~~^~~~~~~
md6_compress.c: md6_compress.c:432:11: note: remove extraneous parentheses around the comparison to silence this warning
md6_compress.c: if ( (Q == NULL) ) return MD6_NULL_Q;
md6_compress.c: ~ ^ ~
md6_compress.c: md6_compress.c:432:11: note: use '=' to turn this equality comparison into an assignment
md6_compress.c: if ( (Q == NULL) ) return MD6_NULL_Q;
md6_compress.c: ^~
md6_compress.c: =
md6_compress.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