Implementation notes: amd64, kizomba, crypto_hash/essence256

Computer: kizomba
Architecture: amd64
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20181216
Operation: crypto_hash
Primitive: essence256
TimeImplementationCompilerBenchmark dateSUPERCOP version
68810gccgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2018081920180818
68972gccgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018081920180818
69288gccgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2018081920180818
69555gccgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2018081920180818
69607gccgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2018081920180818
71987gccgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2018081920180818
72035gccgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2018081920180818
72528gccclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018081920180818
72794gccclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2018081920180818
72838gccclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2018081920180818
73174gccgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2018081920180818
73182gccclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2018081920180818
73195gccclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018081920180818
73274gccgcc -m64 -O3 -fomit-frame-pointer2018081920180818
73298gccclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018081920180818
73381gccgcc -fno-schedule-insns -O3 -fomit-frame-pointer2018081920180818
73383gccgcc -O3 -fomit-frame-pointer2018081920180818
73389gccgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2018081920180818
73442gccgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2018081920180818
73498gccgcc -m64 -march=nocona -O3 -fomit-frame-pointer2018081920180818
73528gccgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2018081920180818
73575gccgcc -march=nocona -O3 -fomit-frame-pointer2018081920180818
73579gccgcc -funroll-loops -O3 -fomit-frame-pointer2018081920180818
73603gccgcc -funroll-loops -O2 -fomit-frame-pointer2018081920180818
73633gccgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2018081920180818
73783gccgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2018081920180818
73917gccgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2018081920180818
74617gccgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018081920180818
74748gccgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2018081920180818
74990gccgcc -m64 -march=core2 -O3 -fomit-frame-pointer2018081920180818
75367gccclang -O3 -fomit-frame-pointer -Qunused-arguments2018081920180818
75379gccgcc -march=barcelona -O3 -fomit-frame-pointer2018081920180818
75420gccclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018081920180818
75486gccgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2018081920180818
75514gccgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2018081920180818
75564gccclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018081920180818
75575gccgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2018081920180818
75603gccgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2018081920180818
75851gccclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018081920180818
75916gccgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2018081920180818
75928gccgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2018081920180818
75936gccgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2018081920180818
75996gccgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2018081920180818
76044gccgcc -funroll-loops -m64 -O -fomit-frame-pointer2018081920180818
76066gccgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2018081920180818
76088gccgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2018081920180818
76143gccgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2018081920180818
76292gccgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2018081920180818
76522gccgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2018081920180818
76587gccgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2018081920180818
76768gccgcc -funroll-loops -O -fomit-frame-pointer2018081920180818
76964gccgcc -march=k8 -O3 -fomit-frame-pointer2018081920180818
77539gccgcc -m64 -march=k8 -O3 -fomit-frame-pointer2018081920180818
79728gccgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2018081920180818
80002gccgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2018081920180818
84053gccgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2018081920180818
84146gccgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2018081920180818
84625gccgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2018081920180818
84639gccgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2018081920180818
84792gccgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2018081920180818
84822gccgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018081920180818
84957gccgcc -m64 -march=nocona -Os -fomit-frame-pointer2018081920180818
85660gccgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2018081920180818
85752gccgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2018081920180818
86323gccgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2018081920180818
86337gccgcc -funroll-loops -Os -fomit-frame-pointer2018081920180818
86392gccgcc -m64 -march=nocona -O2 -fomit-frame-pointer2018081920180818
86512gccgcc -march=nocona -O2 -fomit-frame-pointer2018081920180818
86554gccgcc -Os -fomit-frame-pointer2018081920180818
86591gccgcc -funroll-loops -m64 -Os -fomit-frame-pointer2018081920180818
86608gccgcc -march=nocona -Os -fomit-frame-pointer2018081920180818
86665gccgcc -fno-schedule-insns -Os -fomit-frame-pointer2018081920180818
87218gccgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2018081920180818
87449gccgcc -m64 -Os -fomit-frame-pointer2018081920180818
87490gccgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2018081920180818
87691gccgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2018081920180818
87802gccgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2018081920180818
87919gccgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2018081920180818
87961gccgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2018081920180818
88333gccgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2018081920180818
88528gccgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018081920180818
88615gccgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2018081920180818
88782gccgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2018081920180818
88803gccgcc -m64 -march=barcelona -O -fomit-frame-pointer2018081920180818
88823gccgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018081920180818
88895gccgcc -m64 -march=corei7 -Os -fomit-frame-pointer2018081920180818
88901gccgcc -march=barcelona -O -fomit-frame-pointer2018081920180818
89111gccgcc -march=barcelona -Os -fomit-frame-pointer2018081920180818
89197gccgcc -m64 -march=barcelona -Os -fomit-frame-pointer2018081920180818
89232gccgcc -m64 -march=core2 -Os -fomit-frame-pointer2018081920180818
89242gccgcc -march=nocona -O -fomit-frame-pointer2018081920180818
89595gccgcc -fno-schedule-insns -O -fomit-frame-pointer2018081920180818
89631gccgcc -O -fomit-frame-pointer2018081920180818
89810gccgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2018081920180818
89835gccgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2018081920180818
89944gccgcc -m64 -march=corei7 -O -fomit-frame-pointer2018081920180818
90048gccgcc -m64 -march=core2 -O -fomit-frame-pointer2018081920180818
90146gccgcc -m64 -march=k8 -Os -fomit-frame-pointer2018081920180818
90171gccgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2018081920180818
90260gccgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2018081920180818
90395gccgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2018081920180818
90665gccgcc -march=k8 -Os -fomit-frame-pointer2018081920180818
90784gccgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2018081920180818
91016gccgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2018081920180818
91770gccgcc -m64 -O -fomit-frame-pointer2018081920180818
91863gccgcc -m64 -march=nocona -O -fomit-frame-pointer2018081920180818
92189gccgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018081920180818
92699gccgcc -m64 -march=core2 -O2 -fomit-frame-pointer2018081920180818
92734gccgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2018081920180818
94522gccgcc -m64 -march=k8 -O -fomit-frame-pointer2018081920180818
94742gccgcc -O2 -fomit-frame-pointer2018081920180818
94790gccgcc -fno-schedule-insns -O2 -fomit-frame-pointer2018081920180818
94988gccgcc -m64 -O2 -fomit-frame-pointer2018081920180818
95174gccgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2018081920180818
95439gccgcc -march=barcelona -O2 -fomit-frame-pointer2018081920180818
96757gccgcc -march=k8 -O -fomit-frame-pointer2018081920180818
98627gccgcc -m64 -march=k8 -O2 -fomit-frame-pointer2018081920180818
98791gccgcc -march=k8 -O2 -fomit-frame-pointer2018081920180818
325002gcccc2018081920180818
325174gccgcc -funroll-loops2018081920180818
325510gccgcc2018081920180818

Compiler output

Implementation: crypto_hash/essence256/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: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments gcc
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments gcc
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments gcc
clang -O3 -fwrapv -mavx2 -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