Implementation notes: amd64, katana, crypto_hash/essence384

Computer: katana
Architecture: amd64
CPU ID: GenuineIntel-000006f6-bfebfbff
SUPERCOP version: 20170105
Operation: crypto_hash
Primitive: essence384
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
55152? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2016101120161009
55432? ? ?? ? ?gccgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2016101120161009
55776? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2016101120161009
55848? ? ?? ? ?gccgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2016101120161009
56304? ? ?? ? ?gccgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2016101120161009
56536? ? ?? ? ?gccgcc_-march=k8_-O3_-fomit-frame-pointer2016101120161009
60360? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2016101120161009
60968? ? ?? ? ?gccgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2016101120161009
60976? ? ?? ? ?gccgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2016101120161009
60984? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2016101120161009
61672? ? ?? ? ?gccgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2016101120161009
62416? ? ?? ? ?gccgcc_-march=barcelona_-O3_-fomit-frame-pointer2016101120161009
62584? ? ?? ? ?gccgcc_-funroll-loops_-O3_-fomit-frame-pointer2016101120161009
62952? ? ?? ? ?gccgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2016101120161009
63216? ? ?? ? ?gccgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2016101120161009
63224? ? ?? ? ?gccgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2016101120161009
63432? ? ?? ? ?gccgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2016101120161009
63480? ? ?? ? ?gccgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2016101120161009
63544? ? ?? ? ?gccgcc_-funroll-loops_-O2_-fomit-frame-pointer2016101120161009
63680? ? ?? ? ?gccgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2016101120161009
63960? ? ?? ? ?gccgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2016101120161009
64976? ? ?? ? ?gccgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2016101120161009
65232? ? ?? ? ?gccgcc_-O3_-fomit-frame-pointer2016101120161009
65288? ? ?? ? ?gccgcc_-m64_-O3_-fomit-frame-pointer2016101120161009
65752? ? ?? ? ?gccgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2016101120161009
65792? ? ?? ? ?gccgcc_-march=barcelona_-O2_-fomit-frame-pointer2016101120161009
66328? ? ?? ? ?gccgcc_-O2_-fomit-frame-pointer2016101120161009
66840? ? ?? ? ?gccgcc_-m64_-O2_-fomit-frame-pointer2016101120161009
66864? ? ?? ? ?gccgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2016101120161009
66984? ? ?? ? ?gccgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2016101120161009
67376? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2016101120161009
67376? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2016101120161009
67376? ? ?? ? ?gccgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2016101120161009
67424? ? ?? ? ?gccgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2016101120161009
67576? ? ?? ? ?gccgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2016101120161009
67624? ? ?? ? ?gccgcc_-march=k8_-O2_-fomit-frame-pointer2016101120161009
67696? ? ?? ? ?gccgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2016101120161009
68944? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2016101120161009
69208? ? ?? ? ?gccgcc_-funroll-loops_-Os_-fomit-frame-pointer2016101120161009
69232? ? ?? ? ?gccgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2016101120161009
69320? ? ?? ? ?gccgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2016101120161009
69400? ? ?? ? ?gccgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2016101120161009
69440? ? ?? ? ?gccgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2016101120161009
69528? ? ?? ? ?gccgcc_-march=nocona_-O3_-fomit-frame-pointer2016101120161009
69608? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2016101120161009
69616? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016101120161009
69632? ? ?? ? ?gccgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2016101120161009
69792? ? ?? ? ?gccgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2016101120161009
69912? ? ?? ? ?gccgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2016101120161009
70080? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2016101120161009
70600? ? ?? ? ?gccgcc_-march=barcelona_-Os_-fomit-frame-pointer2016101120161009
71208? ? ?? ? ?gccgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2016101120161009
71608? ? ?? ? ?gccgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2016101120161009
71688? ? ?? ? ?gccgcc_-march=k8_-Os_-fomit-frame-pointer2016101120161009
72248? ? ?? ? ?gccgcc_-m64_-Os_-fomit-frame-pointer2016101120161009
72392? ? ?? ? ?gccgcc_-Os_-fomit-frame-pointer2016101120161009
72392? ? ?? ? ?gccgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2016101120161009
73272? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2016101120161009
73288? ? ?? ? ?gccgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2016101120161009
74024? ? ?? ? ?gccgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2016101120161009
74056? ? ?? ? ?gccgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2016101120161009
74176? ? ?? ? ?gccgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2016101120161009
74256? ? ?? ? ?gccgcc_-funroll-loops_-O_-fomit-frame-pointer2016101120161009
74664? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2016101120161009
74904? ? ?? ? ?gccgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2016101120161009
75248? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2016101120161009
76696? ? ?? ? ?gccclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016101120161009
77088? ? ?? ? ?gccclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2016101120161009
77144? ? ?? ? ?gccclang_-O3_-fomit-frame-pointer_-Qunused-arguments2016101120161009
77160? ? ?? ? ?gccclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016101120161009
77184? ? ?? ? ?gccclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016101120161009
77304? ? ?? ? ?gccclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2016101120161009
79152? ? ?? ? ?gccgcc_-march=nocona_-O2_-fomit-frame-pointer2016101120161009
79288? ? ?? ? ?gccgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2016101120161009
83544? ? ?? ? ?gccgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2016101120161009
83640? ? ?? ? ?gccgcc_-march=nocona_-Os_-fomit-frame-pointer2016101120161009
84072? ? ?? ? ?gccgcc_-O_-fomit-frame-pointer2016101120161009
84104? ? ?? ? ?gccgcc_-m64_-O_-fomit-frame-pointer2016101120161009
84384? ? ?? ? ?gccgcc_-march=nocona_-O_-fomit-frame-pointer2016101120161009
84456? ? ?? ? ?gccgcc_-march=barcelona_-O_-fomit-frame-pointer2016101120161009
84544? ? ?? ? ?gccgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2016101120161009
84656? ? ?? ? ?gccgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2016101120161009
85040? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2016101120161009
85040? ? ?? ? ?gccgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2016101120161009
85080? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2016101120161009
85096? ? ?? ? ?gccgcc_-m64_-march=core2_-O_-fomit-frame-pointer2016101120161009
85096? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2016101120161009
85096? ? ?? ? ?gccgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2016101120161009
85304? ? ?? ? ?gccgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2016101120161009
85352? ? ?? ? ?gccgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2016101120161009
85400? ? ?? ? ?gccgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2016101120161009
85424? ? ?? ? ?gccgcc_-m64_-march=k8_-O_-fomit-frame-pointer2016101120161009
85424? ? ?? ? ?gccgcc_-march=k8_-O_-fomit-frame-pointer2016101120161009
85448? ? ?? ? ?gccgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2016101120161009
85968? ? ?? ? ?gccgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2016101120161009
86208? ? ?? ? ?gccgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2016101120161009
86216? ? ?? ? ?gccgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2016101120161009
86472? ? ?? ? ?gccgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2016101120161009
88904? ? ?? ? ?gccgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2016101120161009
291024? ? ?? ? ?gcccc2016101120161009
291088? ? ?? ? ?gccgcc2016101120161009
291096? ? ?? ? ?gccgcc_-funroll-loops2016101120161009

Compiler output

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