Implementation notes: amd64, gpu, crypto_hash/essence384

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_hash
Primitive: essence384
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
7713620265 3168 033733 3944 808gccgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082220190816
7862426818 3168 039822 3952 808gccgcc_-march=barcelona_-O3_-fomit-frame-pointer2019082220190816
7944934615 3168 050222 3952 808gccgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082220190816
8078425722 3168 038278 3952 808gccgcc_-O3_-fomit-frame-pointer2019082220190816
8200027125 3168 039942 3952 808gccgcc_-march=k8_-O3_-fomit-frame-pointer2019082220190816
8206420207 3168 033733 3944 808gccgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019082220190816
8450820265 3168 033733 3944 808gccgcc_-funroll-loops_-O2_-fomit-frame-pointer2019082220190816
8503220207 3168 033733 3944 808gccgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082220190816
8544027125 3168 039942 3952 808gccgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019082220190816
8546832385 3168 047254 3952 808gccgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019082220190816
8604425722 3168 038278 3952 808gccgcc_-m64_-O3_-fomit-frame-pointer2019082220190816
8620435031 3168 050502 3952 808gccgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019082220190816
8654025722 3168 038278 3952 808gccgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082220190816
8654035031 3168 050502 3952 808gccgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019082220190816
8716053636 6336 039822 3952 808gccgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019082220190816
8758820165 3168 033501 3944 808gccgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019082220190816
8763625898 3168 038382 3952 808gccgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019082220190816
880369631 3168 019789 3944 808gccgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082220190816
8819232385 3168 047254 3952 808gccgcc_-funroll-loops_-O3_-fomit-frame-pointer2019082220190816
9004434615 3168 050222 3952 808gccgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019082220190816
9123220036 3168 033093 3944 808gccgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082220190816
9180022509 3168 035134 3952 808gccgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082220190816
9322420265 3168 033733 3944 808gccgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019082220190816
9400419571 3168 033029 3944 808gccgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019082220190816
9427518875 3168 034045 3936 1136gccclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082220190816
9433225537 3168 037942 3952 808gccgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019082220190816
9446020060 6336 020533 3944 808gccgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019082220190816
9470422509 3168 035134 3952 808gccgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082220190816
9483019149 3168 032485 3944 808gccgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019082220190816
957249671 3168 019837 3944 808gccgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019082220190816
9596032385 3168 047254 3952 808gccgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019082220190816
9602010030 3168 020533 3944 808gccgcc_-march=barcelona_-O2_-fomit-frame-pointer2019082220190816
9620433924 3168 048454 3952 808gccgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019082220190816
9841620036 3168 033093 3944 808gccgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019082220190816
9864820165 3168 033501 3944 808gccgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019082220190816
9903619149 3168 032485 3944 808gccgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082220190816
993169367 3168 019573 3944 808gccgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082220190816
9961626054 3168 038278 3952 808gccgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082220190816
9997219251 3168 032781 3944 808gccgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019082220190816
1008369367 3168 019573 3944 808gccgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082220190816
10120019228 3168 032757 3944 808gccgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019082220190816
1018028091 3168 017313 3928 776gccgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082220190816
1019368097 3168 017313 3928 776gccgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082220190816
10208025882 3168 038302 3952 808gccgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082220190816
1022319671 3168 019877 3944 808gccgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019082220190816
1022649471 3168 019685 3944 808gccgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082220190816
1024689367 3168 019573 3944 808gccgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082220190816
1025088091 3168 017313 3928 776gccgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082220190816
10301626054 3168 038278 3952 808gccgcc_-march=nocona_-O3_-fomit-frame-pointer2019082220190816
1030929566 3168 019749 3944 808gccgcc_-march=k8_-O2_-fomit-frame-pointer2019082220190816
1037209631 3168 019789 3944 808gccgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082220190816
10383222509 3168 035134 3952 808gccgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082220190816
10447219228 3168 032757 3944 808gccgcc_-funroll-loops_-O_-fomit-frame-pointer2019082220190816
10502019571 3168 033029 3944 808gccgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019082220190816
10508018465 3168 036013 3936 752gccclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082220190816
10520018409 3168 034629 3936 752gccclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019082220190816
10565218875 3168 034045 3936 1136gccclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019082220190816
1061288222 3168 017473 3928 776gccgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019082220190816
10617616194 6336 017313 3928 776gccgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082220190816
10621225882 3168 038366 3952 808gccgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082220190816
1063288854 3168 018941 3944 808gccgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082220190816
10681217719 3168 032213 3936 1136gccclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019082220190816
1081768106 3168 017329 3928 776gccgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082220190816
1089529591 3168 019781 3944 808gccgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019082220190816
10930818465 3168 036013 3936 752gccclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082220190816
10956019251 3168 032781 3944 808gccgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019082220190816
1098848222 3168 017473 3928 776gccgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019082220190816
11149219228 3168 032757 3944 808gccgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019082220190816
11235217978 6336 019093 3944 808gccgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019082220190816
11238033924 3168 048454 3952 808gccgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019082220190816
11290022517 3168 035054 3952 808gccgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082220190816
1129248088 3168 017313 3928 776gccgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082220190816
11298017719 3168 032213 3936 1136gccclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019082220190816
1132848989 3168 019093 3944 808gccgcc_-march=barcelona_-O_-fomit-frame-pointer2019082220190816
1138769081 3168 019165 3944 808gccgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019082220190816
1139408306 3168 017553 3928 776gccgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019082220190816
1153729671 3168 019877 3944 808gccgcc_-O2_-fomit-frame-pointer2019082220190816
1155848097 3168 017313 3928 776gccgcc_-march=barcelona_-Os_-fomit-frame-pointer2019082220190816
1159729102 3168 019181 3944 808gccgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019082220190816
1164888222 3168 017473 3928 776gccgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019082220190816
1166569224 3168 019341 3944 808gccgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019082220190816
1166608306 3168 017553 3928 776gccgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019082220190816
11758018465 3168 036013 3936 752gccclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082220190816
1177609171 3168 019317 3944 808gccgcc_-march=k8_-O_-fomit-frame-pointer2019082220190816
1177728181 3168 017409 3928 776gccgcc_-march=k8_-Os_-fomit-frame-pointer2019082220190816
1182088854 3168 018941 3944 808gccgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082220190816
1191169139 3168 018989 3944 808gccgcc_-march=nocona_-O2_-fomit-frame-pointer2019082220190816
1193649102 3168 019181 3944 808gccgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082220190816
1199289224 3168 019341 3944 808gccgcc_-march=nocona_-O_-fomit-frame-pointer2019082220190816
1200009171 3168 019317 3944 808gccgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019082220190816
1208009566 3168 019749 3944 808gccgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019082220190816
1212488097 3168 017313 3928 776gccgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019082220190816
1214328222 3168 017473 3928 776gccgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019082220190816
1220808855 3168 018941 3944 808gccgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082220190816
1221449130 3168 019213 3944 808gccgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019082220190816
1238688099 3168 017313 3928 776gccgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019082220190816
1243929671 3168 019877 3944 808gccgcc_-m64_-O2_-fomit-frame-pointer2019082220190816
1249729139 3168 018989 3944 808gccgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019082220190816
1260448097 3168 017313 3928 776gccgcc_-Os_-fomit-frame-pointer2019082220190816
1274408222 3168 017473 3928 776gccgcc_-funroll-loops_-Os_-fomit-frame-pointer2019082220190816
1279808088 3168 017313 3928 776gccgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082220190816
1279888091 3168 017313 3928 776gccgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082220190816
1282808854 3168 018941 3944 808gccgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082220190816
1287809130 3168 019213 3944 808gccgcc_-m64_-O_-fomit-frame-pointer2019082220190816
1295448181 3168 017409 3928 776gccgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019082220190816
1301128092 3168 017313 3928 776gccgcc_-march=nocona_-Os_-fomit-frame-pointer2019082220190816
1308009128 3168 019213 3944 808gccgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019082220190816
1338129130 3168 019213 3944 808gccgcc_-O_-fomit-frame-pointer2019082220190816
1363288217 3168 017457 3928 776gccgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019082220190816
1373488097 3168 017313 3928 776gccgcc_-m64_-Os_-fomit-frame-pointer2019082220190816
1394488092 3168 017313 3928 776gccgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082220190816
1424928217 3168 017457 3928 776gccgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019082220190816
40873621059 3168 032526 3936 768gccgcc_-funroll-loops2019082220190816
43135221059 3168 032526 3936 768gccgcc2019082220190816
44808821059 3168 032526 3936 768gcccc2019082220190816

Test failure

Implementation: gcc
Security model: unknown
Compiler: gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer gcc
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer gcc
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer gcc

Compiler output

Implementation: gcc
Security model: unknown
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: 8, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments gcc
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments gcc
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments gcc
clang -O3 -fwrapv -mavx -maes -mpclmul -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