Implementation notes: amd64, pluton1mn, crypto_hash/keccakc1024

Computer: pluton1mn
Architecture: amd64
CPU ID: GenuineIntel-00050671-bfebfbff
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: keccakc1024
TimeImplementationCompilerBenchmark dateSUPERCOP version
44940opt64u6icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
46144inplaceicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
46410inplacegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
46704simpleicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
46732opt64u6gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
47264inplacegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
47432opt64u6gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
48272simplegcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
48454opt64u6gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
48664opt64u6gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
48664simplegcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
48874inplacegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
49210inplacegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
49700simplegcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
49784opt64u6icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
50386simplegcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
50806inplaceicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
50918opt64lcu24icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
51660opt64lcu6icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
52108simpleicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
52374opt64lcu6icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
52486opt64lcu24gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
53172opt64lcu6gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
53634opt64lcu24gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
53760opt64lcu24gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
53802opt64lcu6gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
53970opt64lcu6gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
54124opt64lcu24gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
54320opt64lcu24icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
54488opt64lcu6gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
59108sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
59346sphlib-smallgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
61208sphlib-smallicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
62076sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
62692sphlib-smallgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
62832sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
63070sphlibgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
63686x86_64_asmicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
63686x86_64_asmicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
64022x86_64_asmgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
64148sphlib-smallgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
64176x86_64_asmgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
64260x86_64_asmgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
64330x86_64_asmgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
64624sphlib-smallgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
66542sphlibicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
69398sseu2icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
69454sseu2icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
75740sseu2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
75992sseu2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
80668sseu2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
82922sseu2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
97076mmxu1gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
99680mmxu1icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
100352mmxu1gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
100744mmxu1gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
101794mmxu1gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
107744opt32bi-rvku2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
108192opt32bi-rvku2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
109662mmxu1icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
110040opt32bi-rvku2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
110586simple32bigcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
110796simple32bigcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
112560simple32bigcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
114254inplace32bigcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
115500opt32bi-rvku2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
115906opt32biT-s2lcu4gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
116956inplace32biicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
118384inplace32bigcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
119056simple32bigcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
119742opt32bi-s2lcu4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
119896opt32bi-s2lcu4gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
120890opt32biT-s2lcu4gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
121464opt32biT-s2lcu4gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
121954opt32biT-s2lcu4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
122066inplace32bigcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
123984inplace32bigcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
124964opt32bi-s2lcu4gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
126070opt32bi-s2lcu4gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
132384inplace32biicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
137872compactgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
164458sphlib-smallicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
166418compacticc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
167440compacticc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
210056opt64lcu24shldgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
214676opt64lcu24shldgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
214690opt64lcu24shldgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
219646x86_64_shldicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
219856x86_64_shldicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
219940x86_64_shldgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
220206x86_64_shldgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
220234x86_64_shldgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
220346x86_64_shldgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
223006opt64lcu24shldicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
223300opt64lcu24shldicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
229628opt64lcu24shldgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
281638compactgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
296492compactgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
340578compactgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
386414compact8icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
400260compact8gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
426342compact8icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
517930compact8gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
535318simple32biicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
538734opt32bi-rvku2icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
540092compact8gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
586768opt32biT-s2lcu4icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
590394simple32biicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
604002opt32bi-s2lcu4icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
609574opt32biT-s2lcu4icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
614474opt32bi-rvku2icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
637700compact8gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
654458opt32bi-s2lcu4icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731

Compiler output

Implementation: crypto_hash/keccakc1024/xopu24
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
KeccakF-1600-opt64.c: In file included from /usr/local/gcc-6.1.0/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/x86intrin.h:54:0,
KeccakF-1600-opt64.c: from KeccakF-1600-opt64.c:74:
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c: In function 'KeccakPermutationOnWords':
KeccakF-1600-opt64.c: /usr/local/gcc-6.1.0/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/xopintrin.h:266:1: error: inlining failed in call to always_inline '_mm_roti_epi64': target specific option mismatch
KeccakF-1600-opt64.c: _mm_roti_epi64(__m128i __A, const int __B)
KeccakF-1600-opt64.c: ^~~~~~~~~~~~~~
KeccakF-1600-opt64.c: In file included from KeccakF-1600-opt64.c:130:0:
KeccakF-1600-opt64.c: KeccakF-1600-xop.macros:103:11: note: called from here
KeccakF-1600-opt64.c: Bsusa = ROL6464same(Bsusa, 2); \
KeccakF-1600-opt64.c:
KeccakF-1600-opt64.c: KeccakF-1600-xop.macros:123:36: note: in expansion of macro 'thetaRhoPiChiIotaPrepareTheta'
KeccakF-1600-opt64.c: #define thetaRhoPiChiIota(i, A, E) thetaRhoPiChiIotaPrepareTheta(i, A, E)
KeccakF-1600-opt64.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakF-1600-opt64.c: KeccakF-1600-unrolling.macros:40:5: note: in expansion of macro 'thetaRhoPiChiIota'
KeccakF-1600-opt64.c: thetaRhoPiChiIota(23, E, A) \
KeccakF-1600-opt64.c: ^~~~~~~~~~~~~~~~~
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c:185:5: note: in expansion of macro 'rounds'
KeccakF-1600-opt64.c: rounds
KeccakF-1600-opt64.c: ^~~~~~
KeccakF-1600-opt64.c: In file included from /usr/local/gcc-6.1.0/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/x86intrin.h:54:0,
KeccakF-1600-opt64.c: from KeccakF-1600-opt64.c:74:
KeccakF-1600-opt64.c: /usr/local/gcc-6.1.0/lib/gcc/x86_64-pc-linux-gnu/6.1.0/include/xopintrin.h:239:1: error: inlining failed in call to always_inline '_mm_rot_epi64': target specific option mismatch
KeccakF-1600-opt64.c: _mm_rot_epi64(__m128i __A, __m128i __B)
KeccakF-1600-opt64.c: ^~~~~~~~~~~~~
KeccakF-1600-opt64.c: In file included from KeccakF-1600-opt64.c:130:0:
KeccakF-1600-opt64.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv xopu24
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv xopu24
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv xopu24
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv xopu24

Compiler output

Implementation: crypto_hash/keccakc1024/xopu24
Compiler: icc -xMIC-AVX512 -O2 -fomit-frame-pointer
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c(185): warning #266: function "_mm_roti_epi64" declared implicitly
KeccakF-1600-opt64.c: rounds
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c:
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c(185): error: argument of type "int" is incompatible with parameter of type "union __m128i"
KeccakF-1600-opt64.c: rounds
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c:
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c(185): error: argument of type "int" is incompatible with parameter of type "union __m128i"
KeccakF-1600-opt64.c: rounds
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c:
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c(185): error: argument of type "int" is incompatible with parameter of type "union __m128i"
KeccakF-1600-opt64.c: rounds
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c:
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c(185): warning #266: function "_mm_rot_epi64" declared implicitly
KeccakF-1600-opt64.c: rounds
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c:
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c(185): error: a value of type "int" cannot be assigned to an entity of type "V128"
KeccakF-1600-opt64.c: rounds
KeccakF-1600-opt64.c: ^
KeccakF-1600-opt64.c:
KeccakF-1600-opt64.c: KeccakF-1600-opt64.c(185): error: a value of type "int" cannot be assigned to an entity of type "V128"
KeccakF-1600-opt64.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
icc -xMIC-AVX512 -O2 -fomit-frame-pointer xopu24
icc -xMIC-AVX512 -O3 -fomit-frame-pointer xopu24