Implementation notes: amd64, glyme, crypto_hash/md6d256

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_hash
Primitive: md6d256
TimeImplementationCompilerBenchmark dateSUPERCOP version
43816refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020120170105
43856refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020120170105
44480refgcc -march=nocona -O2 -fomit-frame-pointer2017020120170105
44508refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020120170105
44916refgcc -funroll-loops -O2 -fomit-frame-pointer2017020120170105
45004refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020120170105
45080refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020120170105
45224refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
45292refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020120170105
45300refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020120170105
45308refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020120170105
45332refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020120170105
45336refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020120170105
45336refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020120170105
45352refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020120170105
45372refgcc -m64 -O2 -fomit-frame-pointer2017020120170105
45388refgcc -O2 -fomit-frame-pointer2017020120170105
45392refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020120170105
45468refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020120170105
45612refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
45700refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020120170105
45768refgcc -march=k8 -O2 -fomit-frame-pointer2017020120170105
45772refgcc -march=barcelona -O2 -fomit-frame-pointer2017020120170105
46116refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020120170105
47024refgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020120170105
47088refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020120170105
47176refgcc -march=nocona -Os -fomit-frame-pointer2017020120170105
47200refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020120170105
47212refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020120170105
47660refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020120170105
47700refgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020120170105
47748refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020120170105
47760refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020120170105
47760refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020120170105
47840refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020120170105
47868refgcc -funroll-loops -Os -fomit-frame-pointer2017020120170105
47892refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
47896refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020120170105
47900refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020120170105
48020refgcc -march=k8 -Os -fomit-frame-pointer2017020120170105
48032refgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020120170105
48076refgcc -Os -fomit-frame-pointer2017020120170105
48076refgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020120170105
48092refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
48116refgcc -march=barcelona -Os -fomit-frame-pointer2017020120170105
48356refgcc -m64 -Os -fomit-frame-pointer2017020120170105
59052refgcc -funroll-loops -O3 -fomit-frame-pointer2017020120170105
59060refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020120170105
59076refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020120170105
60620refgcc -m64 -O3 -fomit-frame-pointer2017020120170105
60688refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020120170105
60792refgcc -O3 -fomit-frame-pointer2017020120170105
60800refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020120170105
60800refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020120170105
60836refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020120170105
60852refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020120170105
61056refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020120170105
61516refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020120170105
61680refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020120170105
62880refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020120170105
62896refgcc -march=nocona -O3 -fomit-frame-pointer2017020120170105
67592refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
67732refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020120170105
67804refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020120170105
68080refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020120170105
68424refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020120170105
68424refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020120170105
68508refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
68580refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020120170105
68596refgcc -march=barcelona -O3 -fomit-frame-pointer2017020120170105
68628refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020120170105
68712refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
68908refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020120170105
68976refgcc -funroll-loops -O -fomit-frame-pointer2017020120170105
69096refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020120170105
69364refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020120170105
70508refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020120170105
70760refgcc -m64 -O -fomit-frame-pointer2017020120170105
70828refgcc -m64 -march=k8 -O -fomit-frame-pointer2017020120170105
70876refgcc -O -fomit-frame-pointer2017020120170105
70888refgcc -fno-schedule-insns -O -fomit-frame-pointer2017020120170105
71152refgcc -march=nocona -O -fomit-frame-pointer2017020120170105
71232refgcc -march=k8 -O -fomit-frame-pointer2017020120170105
71236refgcc -m64 -march=nocona -O -fomit-frame-pointer2017020120170105
71264refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020120170105
71384refgcc -march=barcelona -O -fomit-frame-pointer2017020120170105
71540refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020120170105
71560refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020120170105
71648refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020120170105
72160refgcc -m64 -march=core2 -O -fomit-frame-pointer2017020120170105
72176refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020120170105
72372refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
73672refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020120170105
73796refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020120170105
74920refgcc -march=k8 -O3 -fomit-frame-pointer2017020120170105
75140refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020120170105
280812refgcc2017020120170105
280872refgcc -funroll-loops2017020120170105

Compiler output

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