Implementation notes: amd64, hydra1, crypto_hash/md5

Computer: hydra1
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20161220
Operation: crypto_hash
Primitive: md5
TimeImplementationCompilerBenchmark dateSUPERCOP version
8491refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016101220161009
8491refgcc -march=k8 -O3 -fomit-frame-pointer2016101220161009
8494refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016101220161009
8494refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016101220161009
8495refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016101220161009
8496refclang -O3 -fomit-frame-pointer -Qunused-arguments2016101220161009
8496refgcc -funroll-loops -O3 -fomit-frame-pointer2016101220161009
8496refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016101220161009
8499refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016101220161009
8499refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016101220161009
8501refgcc -O3 -fomit-frame-pointer2016101220161009
8501refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016101220161009
8501refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016101220161009
8501refgcc -m64 -O3 -fomit-frame-pointer2016101220161009
8501refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016101220161009
8501refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016101220161009
8501refgcc -march=barcelona -O3 -fomit-frame-pointer2016101220161009
8502refgcc -march=nocona -O3 -fomit-frame-pointer2016101220161009
8504refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016101220161009
8504refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
8504refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016101220161009
8504refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016101220161009
8505refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
8505refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
8506refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101220161009
8602refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016101220161009
8602refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016101220161009
8602refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016101220161009
8602refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016101220161009
8603refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016101220161009
8603refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016101220161009
8604refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016101220161009
8604refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016101220161009
8605refgcc -funroll-loops -O2 -fomit-frame-pointer2016101220161009
8605refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016101220161009
8605refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016101220161009
8606refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016101220161009
8606refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016101220161009
8608refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016101220161009
8608refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016101220161009
8611refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016101220161009
8613refgcc -funroll-loops -O -fomit-frame-pointer2016101220161009
8613refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016101220161009
8613refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016101220161009
8667refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016101220161009
8667refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016101220161009
8669refgcc -march=barcelona -O2 -fomit-frame-pointer2016101220161009
8669refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016101220161009
8674refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016101220161009
8675refgcc -march=k8 -O2 -fomit-frame-pointer2016101220161009
8677refgcc -O -fomit-frame-pointer2016101220161009
8677refgcc -fno-schedule-insns -O -fomit-frame-pointer2016101220161009
8677refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016101220161009
8677refgcc -march=nocona -O2 -fomit-frame-pointer2016101220161009
8685refgcc -m64 -O -fomit-frame-pointer2016101220161009
8691refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016101220161009
8691refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016101220161009
8691refgcc -march=barcelona -O -fomit-frame-pointer2016101220161009
8693refgcc -O2 -fomit-frame-pointer2016101220161009
8693refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016101220161009
8693refgcc -m64 -O2 -fomit-frame-pointer2016101220161009
8693refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016101220161009
8694refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016101220161009
8694refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016101220161009
8694refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016101220161009
8694refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016101220161009
8717refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016101220161009
8717refgcc -m64 -Os -fomit-frame-pointer2016101220161009
8717refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016101220161009
8717refgcc -march=k8 -Os -fomit-frame-pointer2016101220161009
8723refgcc -Os -fomit-frame-pointer2016101220161009
8724refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016101220161009
8724refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016101220161009
8725refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016101220161009
8725refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016101220161009
8725refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016101220161009
8725refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016101220161009
8725refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016101220161009
8725refgcc -march=barcelona -Os -fomit-frame-pointer2016101220161009
8725refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016101220161009
8725refgcc -march=nocona -Os -fomit-frame-pointer2016101220161009
8730refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016101220161009
8730refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016101220161009
8730refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016101220161009
8733refgcc -m64 -march=nocona -O -fomit-frame-pointer2016101220161009
8733refgcc -march=nocona -O -fomit-frame-pointer2016101220161009
8736refgcc -m64 -march=core2 -O -fomit-frame-pointer2016101220161009
8744refgcc -march=k8 -O -fomit-frame-pointer2016101220161009
8747refgcc -m64 -march=k8 -O -fomit-frame-pointer2016101220161009
8771refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016101220161009
8771refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016101220161009
8771refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016101220161009
8773refgcc -funroll-loops -Os -fomit-frame-pointer2016101220161009
8776refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016101220161009
8776refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016101220161009
8778refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016101220161009
8781refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016101220161009
8781refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016101220161009
9421refcc2016101220161009
9421refgcc2016101220161009
9421refgcc -funroll-loops2016101220161009

Test failure

Implementation: crypto_hash/md5/ref
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_hash/md5/openssl
Compiler: cc
hash.c: hash.c:2:25: fatal error: openssl/md5.h: No such file or directory
hash.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 92, namely:
CompilerImplementations
cc openssl
gcc openssl
gcc -O2 -fomit-frame-pointer openssl
gcc -O3 -fomit-frame-pointer openssl
gcc -O -fomit-frame-pointer openssl
gcc -Os -fomit-frame-pointer openssl
gcc -fno-schedule-insns -O2 -fomit-frame-pointer openssl
gcc -fno-schedule-insns -O3 -fomit-frame-pointer openssl
gcc -fno-schedule-insns -O -fomit-frame-pointer openssl
gcc -fno-schedule-insns -Os -fomit-frame-pointer openssl
gcc -funroll-loops openssl
gcc -funroll-loops -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -O -fomit-frame-pointer openssl
gcc -funroll-loops -Os -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -O -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -Os -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer openssl
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer openssl
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer openssl
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer openssl
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer openssl
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer openssl
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer openssl
gcc -m64 -O2 -fomit-frame-pointer openssl
gcc -m64 -O3 -fomit-frame-pointer openssl
gcc -m64 -O -fomit-frame-pointer openssl
gcc -m64 -Os -fomit-frame-pointer openssl
gcc -m64 -march=core2 -O2 -fomit-frame-pointer openssl
gcc -m64 -march=core2 -O3 -fomit-frame-pointer openssl
gcc -m64 -march=core2 -O -fomit-frame-pointer openssl
gcc -m64 -march=core2 -Os -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer openssl
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer openssl
gcc -m64 -march=corei7 -O -fomit-frame-pointer openssl
gcc -m64 -march=corei7 -Os -fomit-frame-pointer openssl
gcc -m64 -march=k8 -O2 -fomit-frame-pointer openssl
gcc -m64 -march=k8 -O3 -fomit-frame-pointer openssl
gcc -m64 -march=k8 -O -fomit-frame-pointer openssl
gcc -m64 -march=k8 -Os -fomit-frame-pointer openssl
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer openssl
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer openssl
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer openssl
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer openssl
gcc -m64 -march=nocona -O2 -fomit-frame-pointer openssl
gcc -m64 -march=nocona -O3 -fomit-frame-pointer openssl
gcc -m64 -march=nocona -O -fomit-frame-pointer openssl
gcc -m64 -march=nocona -Os -fomit-frame-pointer openssl
gcc -march=barcelona -O2 -fomit-frame-pointer openssl
gcc -march=barcelona -O3 -fomit-frame-pointer openssl
gcc -march=barcelona -O -fomit-frame-pointer openssl
gcc -march=barcelona -Os -fomit-frame-pointer openssl
gcc -march=k8 -O2 -fomit-frame-pointer openssl
gcc -march=k8 -O3 -fomit-frame-pointer openssl
gcc -march=k8 -O -fomit-frame-pointer openssl
gcc -march=k8 -Os -fomit-frame-pointer openssl
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv openssl
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv openssl
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv openssl
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv openssl
gcc -march=nocona -O2 -fomit-frame-pointer openssl
gcc -march=nocona -O3 -fomit-frame-pointer openssl
gcc -march=nocona -O -fomit-frame-pointer openssl
gcc -march=nocona -Os -fomit-frame-pointer openssl

Compiler output

Implementation: crypto_hash/md5/openssl
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
hash.c: hash.c:2:10: fatal error: 'openssl/md5.h' file not found
hash.c: #include gt;
hash.c: ^
hash.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments openssl
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments openssl
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments openssl
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments openssl
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments openssl
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments openssl

Compiler output

Implementation: crypto_hash/md5/openssl
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
hash.c: hash.c:2:25: fatal error: openssl/md5.h: No such file or directory
hash.c: compilation terminated.
hash.c: hash.c:2:25: fatal error: openssl/md5.h: No such file or directory
hash.c: compilation terminated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer openssl
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer openssl
gcc -m64 -march=barcelona -O -fomit-frame-pointer openssl
gcc -m64 -march=barcelona -Os -fomit-frame-pointer openssl