Implementation notes: amd64, h3neo, crypto_hash/essence512

Computer: h3neo
Architecture: amd64
CPU ID: AuthenticAMD-00100f63-078bfbff
SUPERCOP version: 20170105
Operation: crypto_hash
Primitive: essence512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
70276? ? ?? ? ?gccgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2016101220161009
70319? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2016101220161009
70982? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2016101220161009
71104? ? ?? ? ?gccgcc_-march=barcelona_-O3_-fomit-frame-pointer2016101220161009
71118? ? ?? ? ?gccgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2016101220161009
71121? ? ?? ? ?gccgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2016101220161009
71234? ? ?? ? ?gccgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2016101220161009
71310? ? ?? ? ?gccgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2016101220161009
71780? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2016101220161009
71874? ? ?? ? ?gccgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2016101220161009
72648? ? ?? ? ?gccgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2016101220161009
72741? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2016101220161009
73928? ? ?? ? ?gccgcc_-march=k8_-O3_-fomit-frame-pointer2016101220161009
75470? ? ?? ? ?gccgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2016101220161009
80017? ? ?? ? ?gccgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2016101220161009
80048? ? ?? ? ?gccgcc_-m64_-O3_-fomit-frame-pointer2016101220161009
80198? ? ?? ? ?gccgcc_-O3_-fomit-frame-pointer2016101220161009
80891? ? ?? ? ?gccgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2016101220161009
80912? ? ?? ? ?gccgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2016101220161009
80983? ? ?? ? ?gccgcc_-funroll-loops_-O3_-fomit-frame-pointer2016101220161009
82600? ? ?? ? ?gccgcc_-funroll-loops_-O2_-fomit-frame-pointer2016101220161009
82611? ? ?? ? ?gccgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2016101220161009
83019? ? ?? ? ?gccgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2016101220161009
85258? ? ?? ? ?gccgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2016101220161009
85291? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016101220161009
86353? ? ?? ? ?gccgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2016101220161009
87557? ? ?? ? ?gccgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2016101220161009
87559? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2016101220161009
92026? ? ?? ? ?gccgcc_-m64_-Os_-fomit-frame-pointer2016101220161009
92282? ? ?? ? ?gccgcc_-march=k8_-O2_-fomit-frame-pointer2016101220161009
92283? ? ?? ? ?gccgcc_-funroll-loops_-Os_-fomit-frame-pointer2016101220161009
92308? ? ?? ? ?gccgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2016101220161009
92332? ? ?? ? ?gccgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2016101220161009
92517? ? ?? ? ?gccgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2016101220161009
92553? ? ?? ? ?gccgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2016101220161009
93155? ? ?? ? ?gccgcc_-O2_-fomit-frame-pointer2016101220161009
93281? ? ?? ? ?gccgcc_-m64_-O2_-fomit-frame-pointer2016101220161009
93364? ? ?? ? ?gccgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2016101220161009
93609? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2016101220161009
93643? ? ?? ? ?gccgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2016101220161009
94046? ? ?? ? ?gccclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016101220161009
94049? ? ?? ? ?gccclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2016101220161009
94267? ? ?? ? ?gccgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2016101220161009
94306? ? ?? ? ?gccgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2016101220161009
94501? ? ?? ? ?gccgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2016101220161009
94503? ? ?? ? ?gccgcc_-march=barcelona_-O2_-fomit-frame-pointer2016101220161009
94734? ? ?? ? ?gccgcc_-march=barcelona_-Os_-fomit-frame-pointer2016101220161009
95214? ? ?? ? ?gccgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016101220161009
95215? ? ?? ? ?gccgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2016101220161009
96271? ? ?? ? ?gccgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2016101220161009
96278? ? ?? ? ?gccgcc_-march=nocona_-O3_-fomit-frame-pointer2016101220161009
96489? ? ?? ? ?gccgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2016101220161009
97187? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2016101220161009
97884? ? ?? ? ?gccgcc_-march=k8_-Os_-fomit-frame-pointer2016101220161009
97916? ? ?? ? ?gccgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2016101220161009
97966? ? ?? ? ?gccgcc_-Os_-fomit-frame-pointer2016101220161009
97968? ? ?? ? ?gccgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2016101220161009
99122? ? ?? ? ?gccgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2016101220161009
99163? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2016101220161009
100086? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2016101220161009
100094? ? ?? ? ?gccgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2016101220161009
100392? ? ?? ? ?gccclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016101220161009
100448? ? ?? ? ?gccclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016101220161009
100555? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2016101220161009
100701? ? ?? ? ?gccclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016101220161009
100706? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2016101220161009
101420? ? ?? ? ?gccclang_-O3_-fomit-frame-pointer_-Qunused-arguments2016101220161009
101543? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2016101220161009
101630? ? ?? ? ?gccgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2016101220161009
102199? ? ?? ? ?gccgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2016101220161009
102473? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2016101220161009
102483? ? ?? ? ?gccgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2016101220161009
102490? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2016101220161009
102571? ? ?? ? ?gccgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2016101220161009
103035? ? ?? ? ?gccgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2016101220161009
103129? ? ?? ? ?gccgcc_-funroll-loops_-O_-fomit-frame-pointer2016101220161009
108016? ? ?? ? ?gccgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2016101220161009
113477? ? ?? ? ?gccgcc_-march=nocona_-Os_-fomit-frame-pointer2016101220161009
113803? ? ?? ? ?gccgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2016101220161009
115190? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2016101220161009
116008? ? ?? ? ?gccgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2016101220161009
117559? ? ?? ? ?gccgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2016101220161009
117591? ? ?? ? ?gccgcc_-march=barcelona_-O_-fomit-frame-pointer2016101220161009
117885? ? ?? ? ?gccgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2016101220161009
118472? ? ?? ? ?gccgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2016101220161009
120654? ? ?? ? ?gccgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2016101220161009
120809? ? ?? ? ?gccgcc_-march=nocona_-O2_-fomit-frame-pointer2016101220161009
125537? ? ?? ? ?gccgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2016101220161009
125553? ? ?? ? ?gccgcc_-march=nocona_-O_-fomit-frame-pointer2016101220161009
128384? ? ?? ? ?gccgcc_-O_-fomit-frame-pointer2016101220161009
128391? ? ?? ? ?gccgcc_-m64_-O_-fomit-frame-pointer2016101220161009
128556? ? ?? ? ?gccgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2016101220161009
130031? ? ?? ? ?gccgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2016101220161009
130587? ? ?? ? ?gccgcc_-march=k8_-O_-fomit-frame-pointer2016101220161009
130644? ? ?? ? ?gccgcc_-m64_-march=k8_-O_-fomit-frame-pointer2016101220161009
131786? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2016101220161009
131881? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2016101220161009
131898? ? ?? ? ?gccgcc_-m64_-march=core2_-O_-fomit-frame-pointer2016101220161009
473331? ? ?? ? ?gccgcc2016101220161009
473345? ? ?? ? ?gccgcc_-funroll-loops2016101220161009
473350? ? ?? ? ?gcccc2016101220161009

Test failure

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

Compiler output

Implementation: crypto_hash/essence512/gcc
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
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: 6, namely:
CompilerImplementations
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