Implementation notes: amd64, genji262, crypto_hash/essence512

Computer: genji262
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20191017
Operation: crypto_hash
Primitive: essence512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
5051220192 3168 035397 4016 744gccicc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
5055620192 3168 035397 4016 744gccicc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
5077620192 3168 035397 4016 744gccicc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
5086420192 3168 035397 4016 744gccicc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
5143621544 3168 037149 4016 744gccicc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
5150221544 3168 037149 4016 744gccicc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
5154621544 3168 037149 4016 744gccicc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
5156821544 3168 037149 4016 744gccicc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
5165618347 3168 030539 3960 736gccclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
5317415654 3168 027321 3976 776gccgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
5361418785 3168 030451 3960 752gccclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
5445015993 3168 028531 3960 752gccclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
551549176 3168 019252 3968 776gccgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
555948445 3168 017449 3952 736gccclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
5766218785 3168 030451 3960 752gccclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
597748413 3168 018244 3968 776gccgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
604347448 3168 016420 3952 776gccgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017

Test failure

Implementation: gcc
Security model: unknown
Compiler: icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer gcc
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer gcc
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer gcc
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer gcc
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer gcc
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer gcc

Test failure

Implementation: gcc
Security model: unknown
Compiler: icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer
error 111
crypto_hash is nondeterministic

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer gcc
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer gcc
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer gcc
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer gcc
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer gcc
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer gcc
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer gcc
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer gcc
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer gcc
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer gcc

Compiler output

Implementation: gcc
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
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: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE gcc
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE gcc
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE gcc
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE gcc
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE gcc