Implementation notes: amd64, samba, crypto_aead/oceankeyakv1
Computer: samba
Microarchitecture: amd64; Skylake (506e3)
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20240808
Operation: crypto_aead
Primitive: oceankeyakv1
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
136402 | 31296 0 336 | 49047 828 1440 | T:ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
168072 | 40346 0 304 | 48774 860 1408 | T:ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
184227 | 31046 0 304 | 45774 860 1376 | T:ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
194493 | 36992 0 304 | 42454 860 1344 | T:ref | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
449962 | 21381 0 304 | 35830 860 1344 | T:ref | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
481026 | 21396 0 336 | 38007 828 1440 | T:ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
685485 | 20272 0 336 | 36823 828 1440 | T:ref | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
709489 | 19438 0 304 | 33949 852 1408 | T:ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
912813 | 17769 0 336 | 32999 804 1408 | T:ref | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
Compiler output
KeccakDuplex.c: KeccakDuplex.c:63:9: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StatePermute(instance->state);
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:53:30: note: expanded from macro 'KeccakF_StatePermute'
KeccakDuplex.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: ^
KeccakDuplex.c: KeccakDuplex.c:85:9: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract' is invalid in C99 [-Wimplicit-function-declaration]
KeccakDuplex.c: KeccakF_StateXORPermuteExtract(instance->state, sigmaBegin, sigmaBeginByteLen/KeccakF_laneInBytes,
KeccakDuplex.c: ^
KeccakDuplex.c: ./KeccakF-interface.h:73:40: note: expanded from macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: ^
KeccakDuplex.c: 2 warnings generated.
KeccakParallelDuplex.c: KeccakParallelDuplex.c:39:24: warning: unused variable 'rho_max' [-Wunused-variable]
KeccakParallelDuplex.c: const unsigned int rho_max = instances->rate - 2;
KeccakParallelDuplex.c: ^
KeccakParallelDuplex.c: KeccakParallelDuplex.c:65:24: warning: unused variable 'rho_max' [-Wunused-variable]
KeccakParallelDuplex.c: const unsigned int rho_max = instances->rate - 2;
KeccakParallelDuplex.c: ^
KeccakParallelDuplex.c: KeccakParallelDuplex.c:66:18: warning: unused variable 'i' [-Wunused-variable]
KeccakParallelDuplex.c: unsigned int i;
KeccakParallelDuplex.c: ^
KeccakParallelDuplex.c: KeccakParallelDuplex.c:229:18: warning: unused variable 'i' [-Wunused-variable]
KeccakParallelDuplex.c: unsigned int i;
KeccakParallelDuplex.c: ^
KeccakParallelDuplex.c: 4 warnings generated.
SerialFallback.c: SerialFallback.c:93:5: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' is invalid in C99 [-Wimplicit-function-declaration]
SerialFallback.c: KeccakF_StatePermute(stateWithIndex(instanceIndex));
SerialFallback.c: ^
SerialFallback.c: ./KeccakF-interface.h:53:30: note: expanded from macro 'KeccakF_StatePermute'
SerialFallback.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
SerialFallback.c: ^
SerialFallback.c: SerialFallback.c:101:9: warning: implicit declaration of function 'KeccakP1600_12_StatePermute' is invalid in C99 [-Wimplicit-function-declaration]
SerialFallback.c: KeccakF_StatePermute(stateWithIndex(i));
SerialFallback.c: ^
SerialFallback.c: ./KeccakF-interface.h:53:30: note: expanded from macro 'KeccakF_StatePermute'
SerialFallback.c: #define KeccakF_StatePermute KeccakP1600_12_StatePermute
SerialFallback.c: ^
SerialFallback.c: 2 warnings generated.
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
KeccakDuplex.c: In file included from KeccakDuplex.h:17,
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'; did you mean 'KeccakF1600_StatePermute'? [-Wimplicit-function-declaration]
KeccakDuplex.c: 53 | #define KeccakF_StatePermute KeccakP1600_12_StatePermute
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakDuplex.c:63:9: note: in expansion of macro 'KeccakF_StatePermute'
KeccakDuplex.c: 63 | KeccakF_StatePermute(instance->state);
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakF-interface.h:73:40: warning: implicit declaration of function 'KeccakP1600_12_StateXORPermuteExtract'; did you mean 'KeccakF1600_StateXORPermuteExtract'? [-Wimplicit-function-declaration]
KeccakDuplex.c: 73 | #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakDuplex.c: KeccakF-interface.h:73:40: note: in definition of macro 'KeccakF_StateXORPermuteExtract'
KeccakDuplex.c: 73 | #define KeccakF_StateXORPermuteExtract KeccakP1600_12_StateXORPermuteExtract
KeccakDuplex.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
KeccakParallelDuplex.c: KeccakParallelDuplex.c: In function 'Keccak_ParallelDuplexingAll':
KeccakParallelDuplex.c: KeccakParallelDuplex.c:39:24: warning: unused variable 'rho_max' [-Wunused-variable]
KeccakParallelDuplex.c: 39 | const unsigned int rho_max = instances->rate - 2;
KeccakParallelDuplex.c: | ^~~~~~~
KeccakParallelDuplex.c: KeccakParallelDuplex.c: In function 'Keccak_ParallelDuplexing':
KeccakParallelDuplex.c: KeccakParallelDuplex.c:66:18: warning: unused variable 'i' [-Wunused-variable]
KeccakParallelDuplex.c: 66 | unsigned int i;
KeccakParallelDuplex.c: | ^
KeccakParallelDuplex.c: KeccakParallelDuplex.c:65:24: warning: unused variable 'rho_max' [-Wunused-variable]
KeccakParallelDuplex.c: 65 | const unsigned int rho_max = instances->rate - 2;
KeccakParallelDuplex.c: | ^~~~~~~
KeccakParallelDuplex.c: KeccakParallelDuplex.c: In function 'Keccak_ParallelDuplexingOverwriteWithZeroes':
KeccakParallelDuplex.c: KeccakParallelDuplex.c:229:18: warning: unused variable 'i' [-Wunused-variable]
KeccakParallelDuplex.c: 229 | unsigned int i;
KeccakParallelDuplex.c: | ^
SerialFallback.c: In file included from ParallelKeccakFs.h:17,
SerialFallback.c: from SerialFallback.c:14:
SerialFallback.c: SerialFallback.c: In function 'KeccakF_ParallelStatePermute':
SerialFallback.c: KeccakF-interface.h:53:30: warning: implicit declaration of function 'KeccakP1600_12_StatePermute'; did you mean 'KeccakF1600_StatePermute'? [-Wimplicit-function-declaration]
SerialFallback.c: 53 | #define KeccakF_StatePermute KeccakP1600_12_StatePermute
SerialFallback.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
SerialFallback.c: SerialFallback.c:93:5: note: in expansion of macro 'KeccakF_StatePermute'
SerialFallback.c: 93 | KeccakF_StatePermute(stateWithIndex(instanceIndex));
SerialFallback.c: | ^~~~~~~~~~~~~~~~~~~~
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
KeccakDuplex.o Keccak_DuplexGetInputIndex T
KeccakDuplex.o Keccak_DuplexGetOutputIndex T
KeccakDuplex.o Keccak_DuplexInitialize T
KeccakDuplex.o Keccak_Duplexing T
KeccakDuplex.o Keccak_DuplexingFeedPartialInput T
KeccakDuplex.o Keccak_DuplexingFeedZeroes T
KeccakDuplex.o Keccak_DuplexingGetFurtherOutput T
KeccakDuplex.o Keccak_DuplexingGetFurtherOutputAndXOR T
KeccakDuplex.o Keccak_DuplexingOverwritePartialInput T
KeccakDuplex.o Keccak_DuplexingOverwriteWithZeroes T
KeccakF-1600-reference.o KeccakF1600OnWords T
KeccakF-1600-reference.o KeccakF1600Round T
KeccakF-1600-reference.o KeccakF1600_Initialize T
KeccakF-1600-reference.o KeccakF1600_InitializeRhoOffsets T
KeccakF-1600-reference.o KeccakF1600_InitializeRoundConstants T
KeccakF-1600-reference.o KeccakF1600_StateComplementBit T
KeccakF-1600-reference.o KeccakF1600_StateExtractAndXORBytesInLane T
KeccakF-1600-reference.o KeccakF1600_StateExtractAndXORLanes T
KeccakF-1600-reference.o KeccakF1600_StateExtractBytesInLane T
KeccakF-1600-reference.o KeccakF1600_StateExtractLanes T
KeccakF-1600-reference.o KeccakF1600_StateInitialize T
KeccakF-1600-reference.o KeccakF1600_StateOverwriteBytesInLane T
KeccakF-1600-reference.o KeccakF1600_StateOverwriteLanes T
KeccakF-1600-reference.o KeccakF1600_StateOverwriteWithZeroes T
KeccakF-1600-reference.o KeccakF1600_StatePermute T
KeccakF-1600-reference.o KeccakF1600_StateXORBytesInLane T
KeccakF-1600-reference.o KeccakF1600_StateXORLanes T
KeccakF-1600-reference.o KeccakF1600_StateXORPermuteExtract T
KeccakF-1600-reference.o KeccakRhoOffsets B
KeccakF-1600-reference.o KeccakRoundConstants B
KeccakF-1600-reference.o LFSR86540 T
KeccakF-1600-reference.o chi T
KeccakF-1600-reference.o displayRhoOffsets T
KeccakF-1600-reference.o displayRoundConstants T
KeccakF-1600-reference.o fromBytesToWords T
KeccakF-1600-reference.o fromWordsToBytes T
KeccakF-1600-reference.o iota T
KeccakF-1600-reference.o pi T
KeccakF-1600-reference.o rho T
KeccakF-1600-reference.o theta T
KeccakP-1600-12-reference.o KeccakP1600_12_OnWords T
KeccakP-1600-12-reference.o KeccakP1600_12_StatePermute T
KeccakP-1600-12-reference.o KeccakP1600_12_StateXORPermuteExtract T
KeccakParallelDuplex.o Keccak_ParallelDuplexGetInputIndex T
KeccakParallelDuplex.o Keccak_ParallelDuplexGetOutputIndex T
KeccakParallelDuplex.o Keccak_ParallelDuplexGetTotalInputIndex T
KeccakParallelDuplex.o Keccak_ParallelDuplexInitializeAll T
KeccakParallelDuplex.o Keccak_ParallelDuplexing T
KeccakParallelDuplex.o Keccak_ParallelDuplexingAll T
KeccakParallelDuplex.o Keccak_ParallelDuplexingFeedPartialInterleavedInput T
KeccakParallelDuplex.o Keccak_ParallelDuplexingFeedPartialSingleInput T
KeccakParallelDuplex.o Keccak_ParallelDuplexingFeedZeroes T
KeccakParallelDuplex.o Keccak_ParallelDuplexingGetFurtherInterleavedOutput T
KeccakParallelDuplex.o Keccak_ParallelDuplexingGetFurtherInterleavedOutputAndXOR T
KeccakParallelDuplex.o Keccak_ParallelDuplexingGetFurtherSingleOutput T
KeccakParallelDuplex.o Keccak_ParallelDuplexingGetFurtherSingleOutputAndXOR T
KeccakParallelDuplex.o Keccak_ParallelDuplexingOverwritePartialInterleavedInput T
KeccakParallelDuplex.o Keccak_ParallelDuplexingOverwritePartialSingleInput T
KeccakParallelDuplex.o Keccak_ParallelDuplexingOverwriteWithZeroes T
Keyak.o Keyak_FeedAssociatedData T
Keyak.o Keyak_Forget T
Keyak.o Keyak_GetTag T
Keyak.o Keyak_Initialize T
Keyak.o Keyak_ProcessAssociatedData T
Keyak.o Keyak_ProcessCiphertext T
Keyak.o Keyak_ProcessForget T
Keyak.o Keyak_ProcessPlaintext T
Keyak.o Keyak_ProcessTag T
Keyak.o Keyak_UnwrapCiphertext T
Keyak.o Keyak_WrapPlaintext T
Keyak.o ParallelKeyak_Initialize T
SerialFallback.o KeccakF_ParallelInitialize T
SerialFallback.o KeccakF_ParallelStateComplementBit T
SerialFallback.o KeccakF_ParallelStateComplementBitAll T
SerialFallback.o KeccakF_ParallelStateExtractAndXORBytesInLane T
SerialFallback.o KeccakF_ParallelStateExtractAndXORLanes T
SerialFallback.o KeccakF_ParallelStateExtractAndXORLanesAll T
SerialFallback.o KeccakF_ParallelStateExtractBytesInLane T
SerialFallback.o KeccakF_ParallelStateExtractLanes T
SerialFallback.o KeccakF_ParallelStateExtractLanesAll T
SerialFallback.o KeccakF_ParallelStateInitializeAll T
SerialFallback.o KeccakF_ParallelStateOverwriteBytesInLane T
SerialFallback.o KeccakF_ParallelStateOverwriteLanes T
SerialFallback.o KeccakF_ParallelStateOverwriteLanesAll T
SerialFallback.o KeccakF_ParallelStateOverwriteWithZeroes T
SerialFallback.o KeccakF_ParallelStatePermute T
SerialFallback.o KeccakF_ParallelStatePermuteAll T
SerialFallback.o KeccakF_ParallelStateXORBytesInLane T
SerialFallback.o KeccakF_ParallelStateXORLanes T
SerialFallback.o KeccakF_ParallelStateXORLanesAll T
displayIntermediateValues.o displayBits T
displayIntermediateValues.o displayBytes T
displayIntermediateValues.o displayLevel B
displayIntermediateValues.o displayRoundNumber T
displayIntermediateValues.o displaySetIntermediateValueFile T
displayIntermediateValues.o displaySetLevel T
displayIntermediateValues.o displayStateAs32bitWords T
displayIntermediateValues.o displayStateAsBytes T
displayIntermediateValues.o displayStateAsLanes T
displayIntermediateValues.o displayText T
displayIntermediateValues.o intermediateValueFile B
testParallelPaSM.o accumulateBufferParallel T
testParallelPaSM.o accumulateStateParallel T
testParallelPaSM.o testParallelPermutationAndStateMgt T
Number of similar (implementation,compiler) pairs: 9, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |