Implementation notes: amd64, pluton1mn, crypto_hash/keccakc512treed2

Computer: pluton1mn
Architecture: amd64
CPU ID: GenuineIntel-00050671-bfebfbff
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: keccakc512treed2
TimeImplementationCompilerBenchmark dateSUPERCOP version
20230sseu4icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
20426sseu24gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
20454sseu24gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
20706sseu4gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
20706sseu4gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
20776sseu24gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
20818sseu4gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
20846sseu24gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
21056sseu4icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
21714sseu4gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
22204sseu24icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
24248sseu24icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731

Compiler output

Implementation: crypto_hash/keccakc512treed2/xopu24
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
DoublePermutation.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,
DoublePermutation.c: from DoublePermutation.c:17:
DoublePermutation.c: DoublePermutation.c: In function 'KeccakDoublePermutationOnWords':
DoublePermutation.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
DoublePermutation.c: _mm_roti_epi64(__m128i __A, const int __B)
DoublePermutation.c: ^~~~~~~~~~~~~~
DoublePermutation.c: DoublePermutation.c:276:9: note: called from here
DoublePermutation.c: Bsu = ROL64in128(A##se, 2); \
DoublePermutation.c: ^
DoublePermutation.c: KeccakF-1600-unrolling.macros:40:5: note: in expansion of macro 'thetaRhoPiChiIota'
DoublePermutation.c: thetaRhoPiChiIota(23, E, A) \
DoublePermutation.c: ^~~~~~~~~~~~~~~~~
DoublePermutation.c: DoublePermutation.c:507:5: note: in expansion of macro 'rounds'
DoublePermutation.c: rounds
DoublePermutation.c: ^~~~~~
DoublePermutation.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,
DoublePermutation.c: from DoublePermutation.c:17:
DoublePermutation.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
DoublePermutation.c: _mm_roti_epi64(__m128i __A, const int __B)
DoublePermutation.c: ^~~~~~~~~~~~~~
DoublePermutation.c: DoublePermutation.c:273:9: note: called from here
DoublePermutation.c: Bso = ROL64in128(A##ma, 41); \
DoublePermutation.c: ^
DoublePermutation.c: KeccakF-1600-unrolling.macros:40:5: note: in expansion of macro 'thetaRhoPiChiIota'
DoublePermutation.c: thetaRhoPiChiIota(23, E, A) \
DoublePermutation.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/keccakc512treed2/xopu24
Compiler: icc -xMIC-AVX512 -O2 -fomit-frame-pointer
DoublePermutation.c: DoublePermutation.c(507): warning #266: function "_mm_roti_epi64" declared implicitly
DoublePermutation.c: rounds
DoublePermutation.c: ^
DoublePermutation.c:
DoublePermutation.c: DoublePermutation.c(507): error: argument of type "int" is incompatible with parameter of type "union __m128i"
DoublePermutation.c: rounds
DoublePermutation.c: ^
DoublePermutation.c:
DoublePermutation.c: DoublePermutation.c(507): error: argument of type "int" is incompatible with parameter of type "union __m128i"
DoublePermutation.c: rounds
DoublePermutation.c: ^
DoublePermutation.c:
DoublePermutation.c: DoublePermutation.c(507): error: argument of type "int" is incompatible with parameter of type "union __m128i"
DoublePermutation.c: rounds
DoublePermutation.c: ^
DoublePermutation.c:
DoublePermutation.c: DoublePermutation.c(507): error: argument of type "int" is incompatible with parameter of type "union __m128i"
DoublePermutation.c: rounds
DoublePermutation.c: ^
DoublePermutation.c:
DoublePermutation.c: DoublePermutation.c(507): error: argument of type "int" is incompatible with parameter of type "union __m128i"
DoublePermutation.c: rounds
DoublePermutation.c: ^
DoublePermutation.c:
DoublePermutation.c: DoublePermutation.c(507): error: a value of type "int" cannot be assigned to an entity of type "V128"
DoublePermutation.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