Implementation notes: amd64, cryptothinkx, crypto_hash/md6d512

Computer: cryptothinkx
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_hash
Primitive: md6d512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
43953? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017020120170105
44349? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017020120170105
44601? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017020120170105
44865? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020120170105
44904? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017020120170105
45009? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017020120170105
45396? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017020120170105
45447? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017020120170105
45462? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017020120170105
45465? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017020120170105
45603? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017020120170105
45753? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017020120170105
45813? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017020120170105
45840? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017020120170105
45864? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017020120170105
45894? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017020120170105
45975? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020120170105
46152? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017020120170105
46185? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017020120170105
46260? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017020120170105
46476? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017020120170105
46515? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017020120170105
46515? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017020120170105
46644? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017020120170105
46698? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017020120170105
46923? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017020120170105
46968? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017020120170105
46986? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020120170105
46998? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017020120170105
47007? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020120170105
47010? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017020120170105
47016? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017020120170105
47022? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017020120170105
47163? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017020120170105
47178? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017020120170105
47199? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017020120170105
47232? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017020120170105
47232? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017020120170105
47355? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017020120170105
47391? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017020120170105
47391? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017020120170105
47412? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017020120170105
47466? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017020120170105
47784? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017020120170105
47985? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017020120170105
48558? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017020120170105
48681? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017020120170105
49026? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017020120170105
49056? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017020120170105
49098? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017020120170105
49104? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017020120170105
49566? ? ?? ? ?refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2017020120170105
51292? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017020120170105
52852? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017020120170105
53208? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017020120170105
57696? ? ?? ? ?refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020120170105
59139? ? ?? ? ?refclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017020120170105
59586? ? ?? ? ?refclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017020120170105
59589? ? ?? ? ?refclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020120170105
59865? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2017020120170105
61350? ? ?? ? ?refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2017020120170105
61605? ? ?? ? ?refclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020120170105
62547? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017020120170105
62586? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017020120170105
63132? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017020120170105
63192? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017020120170105
63273? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020120170105
64227? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017020120170105
64305? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017020120170105
64350? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017020120170105
64392? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017020120170105
64446? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017020120170105
64455? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017020120170105
64473? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020120170105
64617? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017020120170105
64623? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017020120170105
64662? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017020120170105
64710? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017020120170105
64713? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017020120170105
64779? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017020120170105
64986? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017020120170105
64986? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017020120170105
65004? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017020120170105
65094? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017020120170105
65343? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017020120170105
65424? ? ?? ? ?refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017020120170105
66148? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017020120170105
66450? ? ?? ? ?refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2017020120170105
66558? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017020120170105
68500? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017020120170105
68961? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017020120170105
69036? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017020120170105
69636? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017020120170105
69810? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017020120170105
69825? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020120170105
69876? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017020120170105
70539? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017020120170105
71979? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017020120170105
72096? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017020120170105
72444? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017020120170105
72627? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017020120170105
72678? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017020120170105
72882? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017020120170105
72954? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017020120170105
72987? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017020120170105
73002? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017020120170105
73035? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017020120170105
73470? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017020120170105
73548? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017020120170105
73593? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017020120170105
73656? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017020120170105
74367? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017020120170105
76228? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017020120170105
76434? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017020120170105
76491? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017020120170105
76854? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020120170105
77070? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017020120170105
77220? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017020120170105
77361? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017020120170105
77460? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017020120170105
81192? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017020120170105
85480? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017020120170105
251460? ? ?? ? ?refcc2017020120170105
259365? ? ?? ? ?refgcc_-funroll-loops2017020120170105
259500? ? ?? ? ?refgcc2017020120170105

Compiler output

Implementation: crypto_hash/md6d512/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