Implementation notes: amd64, pluton1mn, crypto_aead/lakekeyakv1

Computer: pluton1mn
Architecture: amd64
CPU ID: GenuineIntel-00050671-bfebfbff
SUPERCOP version: 20160806
Operation: crypto_aead
Primitive: lakekeyakv1
TimeImplementationCompilerBenchmark dateSUPERCOP version
57330opt64u6gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
59864opt64u6gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
60354opt64u6gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
60508opt64u6gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
63966opt64lcu6gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
65436opt64ufullgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
66430opt64lcu6gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
67326opt64lcu6gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
67340opt64lcu6gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
71246opt64ufullgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
72212opt64ufullgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
72254opt64ufullgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
74732opt64lcufullgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
77154asmx86-64gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
77910asmx86-64icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
78092asmx86-64icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
78974asmx86-64gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
79240asmx86-64gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
79352asmx86-64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
80472opt64lcufullgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
80598opt64lcufullgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
82992opt64lcufullgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
141750inplace32bigcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
151452inplace32biicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
162260inplace32biicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
167524compact64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
168966inplace32bigcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
174692refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
175924inplace32bigcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
178514inplace32bigcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
191142compact64icc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
198114compact64icc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
213374opt64lcufullshldgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
218582asmx86-64-shldgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
218778asmx86-64-shldicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
219268asmx86-64-shldicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
219758asmx86-64-shldgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
219940asmx86-64-shldgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
223734asmx86-64-shldgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
225162opt64lcufullshldgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
226030opt64lcufullshldgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016080620160731
231378opt64lcufullshldicc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
232050opt64lcufullshldicc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
234248opt64lcufullshldgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
341600compact64gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
346136compact64gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
391104compact64gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731
1163708refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016080620160731
1168202refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016080620160731
1192310reficc -xMIC-AVX512 -O3 -fomit-frame-pointer2016080620160731
1204868reficc -xMIC-AVX512 -O2 -fomit-frame-pointer2016080620160731
2444820refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016080620160731

Compiler output

Implementation: crypto_aead/lakekeyakv1/ref
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
KeccakDuplex.c: In file included from KeccakDuplex.h:17:0,
KeccakDuplex.c: from KeccakDuplex.c:15:
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_Duplexing':
KeccakDuplex.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:63:9: note: in expansion of macro 'KeccakF_StatePermute'
KeccakDuplex.c: KeccakF_StatePermute(instance->gt;state);
KeccakDuplex.c: ^~~~~~~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakF-interface.h:73:40: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakF-interface.h:73:40: note: in definition of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

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

Compiler output

Implementation: crypto_aead/lakekeyakv1/asmx86-64
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
KeccakDuplex.c: In file included from KeccakDuplex.h:19:0,
KeccakDuplex.c: from KeccakDuplex.c:17:
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_DuplexingFBWLAbsorb':
KeccakDuplex.c: SnP-interface.h:41:45: warning: implicit declaration of function 'KeccakP1600_12_SnP_FBWL_Absorb' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define SnP_FBWL_Absorb KeccakP1600_12_SnP_FBWL_Absorb
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:177:14: note: in expansion of macro 'SnP_FBWL_Absorb'
KeccakDuplex.c: result = SnP_FBWL_Absorb(instance->gt;state, laneCount, dataIn, dataByteLen, trailingBits);
KeccakDuplex.c: ^~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_DuplexingFBWLWrap':
KeccakDuplex.c: SnP-interface.h:43:45: warning: implicit declaration of function 'KeccakP1600_12_SnP_FBWL_Wrap' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define SnP_FBWL_Wrap KeccakP1600_12_SnP_FBWL_Wrap
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:198:12: note: in expansion of macro 'SnP_FBWL_Wrap'
KeccakDuplex.c: return SnP_FBWL_Wrap(instance->gt;state, laneCount, dataIn, dataOut, dataByteLen, trailingBits);
KeccakDuplex.c: ^~~~~~~~~~~~~
KeccakDuplex.c: KeccakDuplex.c: In function 'Keccak_DuplexingFBWLUnwrap':
KeccakDuplex.c: SnP-interface.h:44:45: warning: implicit declaration of function 'KeccakP1600_12_SnP_FBWL_Unwrap' [-Wimplicit-function-declaration]
KeccakDuplex.c: #define SnP_FBWL_Unwrap KeccakP1600_12_SnP_FBWL_Unwrap
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:216:12: note: in expansion of macro 'SnP_FBWL_Unwrap'
KeccakDuplex.c: return SnP_FBWL_Unwrap(instance->gt;state, laneCount, dataIn, dataOut, dataByteLen, trailingBits);
KeccakDuplex.c: ^~~~~~~~~~~~~~~

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

Compiler output

Implementation: crypto_aead/lakekeyakv1/asmx86-64
Compiler: icc -xMIC-AVX512 -O2 -fomit-frame-pointer
KeccakDuplex.c: KeccakDuplex.c(177): warning #266: function "KeccakP1600_12_SnP_FBWL_Absorb" declared implicitly
KeccakDuplex.c: result = SnP_FBWL_Absorb(instance->gt;state, laneCount, dataIn, dataByteLen, trailingBits);
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakDuplex.c: KeccakDuplex.c(198): warning #266: function "KeccakP1600_12_SnP_FBWL_Wrap" declared implicitly
KeccakDuplex.c: return SnP_FBWL_Wrap(instance->gt;state, laneCount, dataIn, dataOut, dataByteLen, trailingBits);
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakDuplex.c: KeccakDuplex.c(216): warning #266: function "KeccakP1600_12_SnP_FBWL_Unwrap" declared implicitly
KeccakDuplex.c: return SnP_FBWL_Unwrap(instance->gt;state, laneCount, dataIn, dataOut, dataByteLen, trailingBits);
KeccakDuplex.c: ^
KeccakDuplex.c:

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
icc -xMIC-AVX512 -O2 -fomit-frame-pointer asmx86-64 asmx86-64-shld
icc -xMIC-AVX512 -O3 -fomit-frame-pointer asmx86-64 asmx86-64-shld

Compiler output

Implementation: crypto_aead/lakekeyakv1/ref
Compiler: icc -xMIC-AVX512 -O2 -fomit-frame-pointer
KeccakDuplex.c: KeccakDuplex.c(63): warning #266: function "KeccakP1600_12_StatePermute" declared implicitly
KeccakDuplex.c: KeccakF_StatePermute(instance->gt;state);
KeccakDuplex.c: ^
KeccakDuplex.c:
KeccakDuplex.c: KeccakDuplex.c(85): warning #266: function "KeccakP1600_12_StateXORPermuteExtract" declared implicitly
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->gt;state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c:

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

Compiler output

Implementation: crypto_aead/lakekeyakv1/opt64lcu6
Compiler: icc -xMIC-AVX512 -O2 -fomit-frame-pointer
KeccakF-1600-opt64.c: ": internal error: ** The compiler has encountered an unexpected problem.
KeccakF-1600-opt64.c: ** Segmentation violation signal raised. **
KeccakF-1600-opt64.c: Access violation or stack overflow. Please contact Intel Support for assistance.
KeccakF-1600-opt64.c:
KeccakF-1600-opt64.c: compilation aborted for KeccakF-1600-opt64.c (code 4)

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -xMIC-AVX512 -O2 -fomit-frame-pointer opt64lcu6 opt64lcufull opt64u6 opt64ufull
icc -xMIC-AVX512 -O3 -fomit-frame-pointer opt64lcu6 opt64lcufull opt64u6 opt64ufull