Implementation notes: amd64, glyme, crypto_hash/essence256

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_hash
Primitive: essence256
TimeImplementationCompilerBenchmark dateSUPERCOP version
80900gccgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020120170105
81024gccgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020120170105
81104gccgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020120170105
81148gccgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020120170105
81184gccgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020120170105
82960gccgcc -march=k8 -O3 -fomit-frame-pointer2017020120170105
83636gccgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020120170105
83796gccgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
83804gccgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020120170105
83992gccgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
83996gccgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020120170105
84008gccgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020120170105
84016gccgcc -march=barcelona -O3 -fomit-frame-pointer2017020120170105
84196gccgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020120170105
84220gccgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020120170105
84480gccgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020120170105
84560gccgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020120170105
84560gccgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020120170105
84732gccgcc -O3 -fomit-frame-pointer2017020120170105
84732gccgcc -m64 -O3 -fomit-frame-pointer2017020120170105
85212gccgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020120170105
85928gccgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020120170105
86208gccgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020120170105
86524gccgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020120170105
86536gccgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020120170105
86556gccgcc -funroll-loops -O2 -fomit-frame-pointer2017020120170105
86556gccgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020120170105
86564gccgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020120170105
86688gccgcc -funroll-loops -O3 -fomit-frame-pointer2017020120170105
87824gccgcc -march=nocona -O3 -fomit-frame-pointer2017020120170105
87972gccgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020120170105
88612gccgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020120170105
88676gccgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020120170105
101428gccgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020120170105
101432gccgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020120170105
101440gccgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020120170105
101984gccgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020120170105
102008gccgcc -O2 -fomit-frame-pointer2017020120170105
102112gccgcc -m64 -O2 -fomit-frame-pointer2017020120170105
102988gccgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020120170105
103036gccgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020120170105
103104gccgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020120170105
103124gccgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
103248gccgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020120170105
103252gccgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020120170105
103332gccgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020120170105
103504gccgcc -funroll-loops -O -fomit-frame-pointer2017020120170105
103772gccgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020120170105
103840gccgcc -march=k8 -O2 -fomit-frame-pointer2017020120170105
104036gccgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020120170105
104188gccgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020120170105
104188gccgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020120170105
104316gccgcc -march=barcelona -O2 -fomit-frame-pointer2017020120170105
104404gccclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020120170105
104408gccclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
104788gccgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020120170105
104792gccclang -O3 -fomit-frame-pointer -Qunused-arguments2017020120170105
104840gccgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020120170105
105480gccclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
105608gccclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
105832gccclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020120170105
112928gccgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020120170105
112928gccgcc -march=nocona -O2 -fomit-frame-pointer2017020120170105
123328gccgcc -march=barcelona -O -fomit-frame-pointer2017020120170105
123340gccgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020120170105
123832gccgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
124192gccgcc -march=barcelona -Os -fomit-frame-pointer2017020120170105
124524gccgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020120170105
124528gccgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020120170105
124584gccgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020120170105
124660gccgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020120170105
124708gccgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020120170105
124784gccgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020120170105
124932gccgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020120170105
124936gccgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020120170105
125084gccgcc -m64 -march=core2 -O -fomit-frame-pointer2017020120170105
125556gccgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020120170105
125812gccgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020120170105
126208gccgcc -march=nocona -O -fomit-frame-pointer2017020120170105
126216gccgcc -m64 -march=nocona -O -fomit-frame-pointer2017020120170105
126548gccgcc -m64 -O -fomit-frame-pointer2017020120170105
126652gccgcc -march=k8 -O -fomit-frame-pointer2017020120170105
126708gccgcc -m64 -march=k8 -O -fomit-frame-pointer2017020120170105
127052gccgcc -fno-schedule-insns -O -fomit-frame-pointer2017020120170105
127664gccgcc -O -fomit-frame-pointer2017020120170105
131088gccgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020120170105
131088gccgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020120170105
131108gccgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020120170105
132336gccgcc -Os -fomit-frame-pointer2017020120170105
132340gccgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020120170105
132340gccgcc -march=k8 -Os -fomit-frame-pointer2017020120170105
132348gccgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020120170105
132552gccgcc -m64 -Os -fomit-frame-pointer2017020120170105
133132gccgcc -funroll-loops -Os -fomit-frame-pointer2017020120170105
133136gccgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020120170105
133136gccgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020120170105
133136gccgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020120170105
133148gccgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020120170105
178364gccgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020120170105
178608gccgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020120170105
179292gccgcc -march=nocona -Os -fomit-frame-pointer2017020120170105
179320gccgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020120170105
381616gcccc2017020120170105
583448gccgcc -funroll-loops2017020120170105
583504gccgcc2017020120170105

Compiler output

Implementation: crypto_hash/essence256/gcc
Compiler: cc
essence_L_tables.c: In file included from essence_L_tables.c:12:
essence_L_tables.c: ./essence_api.h:13:9: warning: '_ESSENCE_API_H_' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]
essence_L_tables.c: #ifndef _ESSENCE_API_H_
essence_L_tables.c: ^~~~~~~~~~~~~~~
essence_L_tables.c: ./essence_api.h:14:9: note: '_ESSENCE_H_API_' is defined here; did you mean '_ESSENCE_API_H_'?
essence_L_tables.c: #define _ESSENCE_H_API_
essence_L_tables.c: ^~~~~~~~~~~~~~~
essence_L_tables.c: _ESSENCE_API_H_
essence_L_tables.c: 1 warning generated.
essence_api.c: In file included from essence_api.c:11:
essence_api.c: In file included from ./essence.h:11:
essence_api.c: ./essence_api.h:13:9: warning: '_ESSENCE_API_H_' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]
essence_api.c: #ifndef _ESSENCE_API_H_
essence_api.c: ^~~~~~~~~~~~~~~
essence_api.c: ./essence_api.h:14:9: note: '_ESSENCE_H_API_' is defined here; did you mean '_ESSENCE_API_H_'?
essence_api.c: #define _ESSENCE_H_API_
essence_api.c: ^~~~~~~~~~~~~~~
essence_api.c: _ESSENCE_API_H_
essence_api.c: 1 warning generated.
essence_compress_256.c: In file included from essence_compress_256.c:11:
essence_compress_256.c: In file included from ./essence.h:11:
essence_compress_256.c: ./essence_api.h:13:9: warning: '_ESSENCE_API_H_' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]
essence_compress_256.c: #ifndef _ESSENCE_API_H_
essence_compress_256.c: ^~~~~~~~~~~~~~~
essence_compress_256.c: ./essence_api.h:14:9: note: '_ESSENCE_H_API_' is defined here; did you mean '_ESSENCE_API_H_'?
essence_compress_256.c: #define _ESSENCE_H_API_
essence_compress_256.c: ^~~~~~~~~~~~~~~
essence_compress_256.c: _ESSENCE_API_H_
essence_compress_256.c: 1 warning generated.
essence_compress_256_dual.c: In file included from essence_compress_256_dual.c:11:
essence_compress_256_dual.c: In file included from ./essence.h:11:
essence_compress_256_dual.c: ./essence_api.h:13:9: warning: '_ESSENCE_API_H_' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]
essence_compress_256_dual.c: #ifndef _ESSENCE_API_H_
essence_compress_256_dual.c: ^~~~~~~~~~~~~~~
essence_compress_256_dual.c: ./essence_api.h:14:9: note: '_ESSENCE_H_API_' is defined here; did you mean '_ESSENCE_API_H_'?
essence_compress_256_dual.c: #define _ESSENCE_H_API_
essence_compress_256_dual.c: ^~~~~~~~~~~~~~~
essence_compress_256_dual.c: _ESSENCE_API_H_
essence_compress_256_dual.c: 1 warning generated.
essence_compress_512.c: In file included from essence_compress_512.c:10:
essence_compress_512.c: In file included from ./essence.h:11:
essence_compress_512.c: ./essence_api.h:13:9: warning: '_ESSENCE_API_H_' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]
essence_compress_512.c: #ifndef _ESSENCE_API_H_
essence_compress_512.c: ^~~~~~~~~~~~~~~
essence_compress_512.c: ./essence_api.h:14:9: note: '_ESSENCE_H_API_' is defined here; did you mean '_ESSENCE_API_H_'?
essence_compress_512.c: #define _ESSENCE_H_API_
essence_compress_512.c: ^~~~~~~~~~~~~~~
essence_compress_512.c: _ESSENCE_API_H_
essence_compress_512.c: 1 warning generated.
hash.c: In file included from hash.c:2:
hash.c: ./essence_api.h:13:9: warning: '_ESSENCE_API_H_' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]
hash.c: #ifndef _ESSENCE_API_H_
hash.c: ^~~~~~~~~~~~~~~
hash.c: ./essence_api.h:14:9: note: '_ESSENCE_H_API_' is defined here; did you mean '_ESSENCE_API_H_'?
hash.c: #define _ESSENCE_H_API_
hash.c: ^~~~~~~~~~~~~~~
hash.c: _ESSENCE_API_H_
hash.c: 1 warning generated.

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