Implementation notes: amd64, glyme, crypto_hash/md6d384

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_hash
Primitive: md6d384
TimeImplementationCompilerBenchmark dateSUPERCOP version
56716refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020120170105
56780refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020120170105
57388refgcc -march=nocona -O2 -fomit-frame-pointer2017020120170105
57488refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020120170105
58256refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020120170105
58284refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020120170105
58320refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020120170105
58336refgcc -funroll-loops -O2 -fomit-frame-pointer2017020120170105
58352refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020120170105
58452refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020120170105
58468refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020120170105
58476refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020120170105
58500refgcc -O2 -fomit-frame-pointer2017020120170105
58520refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020120170105
58536refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020120170105
58612refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
58672refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020120170105
58724refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
58740refgcc -march=barcelona -O2 -fomit-frame-pointer2017020120170105
58828refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020120170105
58836refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020120170105
58880refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020120170105
58896refgcc -march=k8 -O2 -fomit-frame-pointer2017020120170105
58948refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020120170105
59044refgcc -m64 -O2 -fomit-frame-pointer2017020120170105
59984refgcc -march=nocona -Os -fomit-frame-pointer2017020120170105
59996refgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020120170105
60196refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020120170105
60204refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020120170105
60600refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020120170105
60688refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020120170105
60760refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
60780refgcc -funroll-loops -Os -fomit-frame-pointer2017020120170105
60796refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020120170105
60808refgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020120170105
60896refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020120170105
60908refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020120170105
60972refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020120170105
61036refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020120170105
61220refgcc -march=k8 -Os -fomit-frame-pointer2017020120170105
61232refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
61252refgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020120170105
61296refgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020120170105
61300refgcc -Os -fomit-frame-pointer2017020120170105
61324refgcc -march=barcelona -Os -fomit-frame-pointer2017020120170105
61340refgcc -m64 -Os -fomit-frame-pointer2017020120170105
76648refgcc -funroll-loops -O3 -fomit-frame-pointer2017020120170105
76864refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020120170105
76888refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020120170105
78596refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020120170105
78652refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020120170105
78668refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020120170105
78716refgcc -m64 -O3 -fomit-frame-pointer2017020120170105
78908refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020120170105
79792refgcc -O3 -fomit-frame-pointer2017020120170105
79872refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020120170105
79924refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020120170105
80080refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020120170105
80808refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020120170105
81452refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020120170105
81812refgcc -march=nocona -O3 -fomit-frame-pointer2017020120170105
87320refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020120170105
87428refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020120170105
87536refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020120170105
88436refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
88440refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020120170105
88500refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020120170105
88512refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
88568refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020120170105
88572refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020120170105
88764refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020120170105
88776refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
88780refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020120170105
88948refgcc -funroll-loops -O -fomit-frame-pointer2017020120170105
89120refgcc -march=barcelona -O3 -fomit-frame-pointer2017020120170105
89444refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020120170105
90820refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020120170105
90844refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020120170105
90988refgcc -m64 -march=k8 -O -fomit-frame-pointer2017020120170105
91084refgcc -march=k8 -O -fomit-frame-pointer2017020120170105
91156refgcc -fno-schedule-insns -O -fomit-frame-pointer2017020120170105
91172refgcc -m64 -O -fomit-frame-pointer2017020120170105
91412refgcc -m64 -march=nocona -O -fomit-frame-pointer2017020120170105
91476refgcc -march=nocona -O -fomit-frame-pointer2017020120170105
91544refgcc -O -fomit-frame-pointer2017020120170105
92124refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020120170105
92128refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020120170105
92188refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020120170105
92404refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
92512refgcc -march=barcelona -O -fomit-frame-pointer2017020120170105
92796refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020120170105
92852refgcc -m64 -march=core2 -O -fomit-frame-pointer2017020120170105
95664refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020120170105
95928refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020120170105
97316refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020120170105
97664refgcc -march=k8 -O3 -fomit-frame-pointer2017020120170105
363596refgcc -funroll-loops2017020120170105
365104refgcc2017020120170105

Compiler output

Implementation: crypto_hash/md6d384/ref
Compiler: cc
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: 7, namely:
CompilerImplementations
cc ref
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=native -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