Implementation notes: amd64, genji154, crypto_hash/md6d256

Computer: genji154
Architecture: amd64
CPU ID: GenuineIntel-00050671-bfebfbff
SUPERCOP version: 20170228
Operation: crypto_hash
Primitive: md6d256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
61685? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017022620170105
62257? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017022620170105
62270? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2017022620170105
62322? ? ?? ? ?reficc_-xMIC-AVX512_-O2_-fomit-frame-pointer2017022620170105
62426? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2017022620170105
62439? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017022620170105
62699? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017022620170105
62725? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2017022620170105
62764? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017022620170105
62764? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017022620170105
62959? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017022620170105
63024? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017022620170105
63284? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2017022620170105
63284? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2017022620170105
63310? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017022620170105
63323? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017022620170105
63375? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2017022620170105
63466? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017022620170105
63531? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017022620170105
63570? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2017022620170105
63635? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017022620170105
63648? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2017022620170105
63765? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2017022620170105
63843? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017022620170105
64181? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017022620170105
64220? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017022620170105
64272? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017022620170105
64350? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2017022620170105
64376? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017022620170105
64389? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017022620170105
64415? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017022620170105
64441? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017022620170105
64506? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2017022620170105
64519? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017022620170105
64545? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2017022620170105
64571? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017022620170105
64597? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017022620170105
64610? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017022620170105
64740? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2017022620170105
64753? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017022620170105
64753? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017022620170105
64753? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017022620170105
64766? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017022620170105
64779? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017022620170105
64831? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017022620170105
64857? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017022620170105
65000? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2017022620170105
65065? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2017022620170105
65078? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2017022620170105
65091? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017022620170105
65143? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2017022620170105
65923? ? ?? ? ?refgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2017022620170105
66313? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017022620170105
71838? ? ?? ? ?reficc2017022620170105
72124? ? ?? ? ?reficc_-no-vec2017022620170105
88257? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017022620170105
88439? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017022620170105
89492? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017022620170105
89726? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017022620170105
90675? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2017022620170105
90857? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017022620170105
90948? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017022620170105
91494? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017022620170105
91715? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017022620170105
91754? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2017022620170105
91936? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017022620170105
92131? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017022620170105
92443? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017022620170105
92573? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017022620170105
92586? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017022620170105
92716? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017022620170105
92833? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017022620170105
92885? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2017022620170105
92924? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2017022620170105
92976? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017022620170105
93119? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2017022620170105
93197? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2017022620170105
93249? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2017022620170105
93301? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017022620170105
93392? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2017022620170105
93639? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017022620170105
93665? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017022620170105
93717? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2017022620170105
93964? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2017022620170105
94029? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2017022620170105
94263? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2017022620170105
94445? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2017022620170105
95134? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2017022620170105
95433? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2017022620170105
96304? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2017022620170105
96369? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2017022620170105
96811? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017022620170105
96967? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017022620170105
97019? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017022620170105
97058? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2017022620170105
97136? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017022620170105
97422? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2017022620170105
97487? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2017022620170105
98085? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017022620170105
98241? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017022620170105
99242? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017022620170105
100048? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2017022620170105
100425? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017022620170105
100633? ? ?? ? ?refgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2017022620170105
100919? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017022620170105
102609? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017022620170105
102843? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017022620170105
105651? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017022620170105
106405? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2017022620170105
107653? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017022620170105
107666? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2017022620170105
116142? ? ?? ? ?reficc_-xMIC-AVX512_-O3_-fomit-frame-pointer2017022620170105
567723? ? ?? ? ?refgcc2017022620170105
569985? ? ?? ? ?refgcc_-funroll-loops2017022620170105
583518? ? ?? ? ?refcc2017022620170105

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