Implementation notes: amd64, rumba7, crypto_aead/ketjesrv1

Computer: rumba7
Microarchitecture: amd64; Zen (800f11)
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: ketjesrv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
18941831614 0 037238 860 1024T:compactclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
19203339794 0 1239958 860 1024T:referenceclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
26230627653 0 036014 860 1056T:compactclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
26327436496 0 1238622 860 1056T:referenceclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
27348628837 0 037526 860 1056T:compactclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
27355039264 0 1240790 860 1056T:referenceclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
31164332515 0 1638096 820 1088T:referencegcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
31299035367 0 037056 820 1088T:compactgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
38288013892 0 18437360 820 1280T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
48161314429 0 16037142 860 1216T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
51752512261 0 16035550 860 1216T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
56991013613 0 16037278 860 1216T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
83814229239 0 1232422 860 1024T:referenceclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
83934822992 0 033624 820 1088T:compactgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
84407321101 0 030326 860 1024T:compactclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
88740228967 0 1635456 820 1088T:referencegcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9580559724 0 16029854 860 1216T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9613889536 0 18431776 820 1280T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
145876629338 0 1634520 820 1088T:referencegcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
146626421982 0 032456 820 1088T:compactgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
155228719030 0 030541 852 1088T:compactclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
156699926742 0 1232709 852 1088T:referenceclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
15683118088 0 16028997 852 1280T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
15979799441 0 18430760 820 1280T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
225264319147 0 029104 796 1056T:compactgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
227440824195 0 1630384 796 1056T:referencegcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
23640678019 0 18427640 796 1248T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625

Compiler output


KeccakP-200-compact.c: KeccakP-200-compact.c:20:36: warning: '/*' within block comment [-Wcomment]
KeccakP-200-compact.c: /* #define DIVISION_INSTRUCTION    /* comment if no division instruction or more compact when not using division */
KeccakP-200-compact.c:                                    ^
KeccakP-200-compact.c: 1 warning generated.
KeccakP-400-reference.c: KeccakP-400-reference.c:227:13: warning: unused function 'fromBytesToWords' [-Wunused-function]
KeccakP-400-reference.c: static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-400-reference.c:             ^
KeccakP-400-reference.c: KeccakP-400-reference.c:238:13: warning: unused function 'fromWordsToBytes' [-Wunused-function]
KeccakP-400-reference.c: static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-400-reference.c:             ^
KeccakP-400-reference.c: 2 warnings generated.
KeccakP-800-compact.c: KeccakP-800-compact.c:27:36: warning: '/*' within block comment [-Wcomment]
KeccakP-800-compact.c: /* #define DIVISION_INSTRUCTION    /* comment if no division instruction or more compact when not using division */
KeccakP-800-compact.c:                                    ^
KeccakP-800-compact.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:compactclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:compactclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:compactclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:compactclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:compactclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


KeccakP-200-compact.c: KeccakP-200-compact.c:20:36: warning: "/*" within comment [-Wcomment]
KeccakP-200-compact.c:    20 | /* #define DIVISION_INSTRUCTION    /* comment if no division instruction or more compact when not using division */
KeccakP-200-compact.c:       |
KeccakP-400-reference.c: KeccakP-400-reference.c:238:13: warning: 'fromWordsToBytes' defined but not used [-Wunused-function]
KeccakP-400-reference.c:   238 | static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-400-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-400-reference.c: KeccakP-400-reference.c:227:13: warning: 'fromBytesToWords' defined but not used [-Wunused-function]
KeccakP-400-reference.c:   227 | static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-400-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-800-compact.c: KeccakP-800-compact.c:27:36: warning: "/*" within comment [-Wcomment]
KeccakP-800-compact.c:    27 | /* #define DIVISION_INSTRUCTION    /* comment if no division instruction or more compact when not using division */
KeccakP-800-compact.c:       |

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:compactgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:compactgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:compactgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:compactgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


Ketje.c: Ketje.c:70:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
Ketje.c:         if ( (instance->dataRemainderSize + dataSizeInBytes) > Ketje_BlockSize )
Ketje.c:         ^
Ketje.c: Ketje.c:67:5: note: previous statement is here
Ketje.c:     if ((instance->phase & Ketje_Phase_FeedingAssociatedData) == 0)
Ketje.c:     ^
Ketje.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


Ketje.c: Ketje.c: In function 'Ketje_FeedAssociatedData':
Ketje.c: Ketje.c:67:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
Ketje.c:    67 |     if ((instance->phase & Ketje_Phase_FeedingAssociatedData) == 0)
Ketje.c:       |     ^~
Ketje.c: Ketje.c:70:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
Ketje.c:    70 |         if ( (instance->dataRemainderSize + dataSizeInBytes) > Ketje_BlockSize )
Ketje.c:       |         ^~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


KeccakP-1600-reference.c: KeccakP-1600-reference.c:231:13: warning: unused function 'fromBytesToWords' [-Wunused-function]
KeccakP-1600-reference.c: static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-1600-reference.c:             ^
KeccakP-1600-reference.c: KeccakP-1600-reference.c:242:13: warning: unused function 'fromWordsToBytes' [-Wunused-function]
KeccakP-1600-reference.c: static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-1600-reference.c:             ^
KeccakP-1600-reference.c: 2 warnings generated.
KeccakP-200-reference.c: KeccakP-200-reference.c:225:13: warning: unused function 'fromBytesToWords' [-Wunused-function]
KeccakP-200-reference.c: static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-200-reference.c:             ^
KeccakP-200-reference.c: KeccakP-200-reference.c:236:13: warning: unused function 'fromWordsToBytes' [-Wunused-function]
KeccakP-200-reference.c: static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-200-reference.c:             ^
KeccakP-200-reference.c: 2 warnings generated.
KeccakP-400-reference.c: KeccakP-400-reference.c:227:13: warning: unused function 'fromBytesToWords' [-Wunused-function]
KeccakP-400-reference.c: static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-400-reference.c:             ^
KeccakP-400-reference.c: KeccakP-400-reference.c:238:13: warning: unused function 'fromWordsToBytes' [-Wunused-function]
KeccakP-400-reference.c: static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-400-reference.c:             ^
KeccakP-400-reference.c: 2 warnings generated.
KeccakP-800-reference.c: KeccakP-800-reference.c:229:13: warning: unused function 'fromBytesToWords' [-Wunused-function]
KeccakP-800-reference.c: static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-800-reference.c:             ^
KeccakP-800-reference.c: KeccakP-800-reference.c:240:13: warning: unused function 'fromWordsToBytes' [-Wunused-function]
KeccakP-800-reference.c: static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-800-reference.c:             ^
KeccakP-800-reference.c: 2 warnings generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:referenceclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:referenceclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:referenceclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:referenceclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:referenceclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


KeccakP-1600-reference.c: KeccakP-1600-reference.c:242:13: warning: 'fromWordsToBytes' defined but not used [-Wunused-function]
KeccakP-1600-reference.c:   242 | static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-1600-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-1600-reference.c: KeccakP-1600-reference.c:231:13: warning: 'fromBytesToWords' defined but not used [-Wunused-function]
KeccakP-1600-reference.c:   231 | static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-1600-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-200-reference.c: KeccakP-200-reference.c:236:13: warning: 'fromWordsToBytes' defined but not used [-Wunused-function]
KeccakP-200-reference.c:   236 | static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-200-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-200-reference.c: KeccakP-200-reference.c:225:13: warning: 'fromBytesToWords' defined but not used [-Wunused-function]
KeccakP-200-reference.c:   225 | static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-200-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-400-reference.c: KeccakP-400-reference.c:238:13: warning: 'fromWordsToBytes' defined but not used [-Wunused-function]
KeccakP-400-reference.c:   238 | static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-400-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-400-reference.c: KeccakP-400-reference.c:227:13: warning: 'fromBytesToWords' defined but not used [-Wunused-function]
KeccakP-400-reference.c:   227 | static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-400-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-800-reference.c: KeccakP-800-reference.c:240:13: warning: 'fromWordsToBytes' defined but not used [-Wunused-function]
KeccakP-800-reference.c:   240 | static void fromWordsToBytes(unsigned char *state, const tKeccakLane *stateAsWords)
KeccakP-800-reference.c:       |             ^~~~~~~~~~~~~~~~
KeccakP-800-reference.c: KeccakP-800-reference.c:229:13: warning: 'fromBytesToWords' defined but not used [-Wunused-function]
KeccakP-800-reference.c:   229 | static void fromBytesToWords(tKeccakLane *stateAsWords, const unsigned char *state)
KeccakP-800-reference.c:       |             ^~~~~~~~~~~~~~~~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:referencegcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:referencegcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:referencegcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:referencegcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)