Implementation notes: amd64, hertz, crypto_aead/triadaev1
Computer: hertz
Microarchitecture: amd64; Zen 4 (a60f12)
Architecture: amd64
CPU ID: AuthenticAMD-00a60f12-178bfbff
SUPERCOP version: 20240808
Operation: crypto_aead
Primitive: triadaev1
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
10222 | 6550 0 0 | 21491 852 1096 | T:add_sse | clang++_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
10328 | 21573 0 0 | 42810 860 1096 | T:add_sse | clang++_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
10346 | 21541 0 0 | 42666 860 1096 | T:add_sse | clang++_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
14535 | 11788 0 0 | 29177 828 1192 | T:add_sse | g++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
14566 | 11557 0 0 | 26913 828 1128 | T:add_sse | g++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
16752 | 14656 8 272 | 32105 836 1480 | T:add_avx | g++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
16775 | 14585 8 272 | 30017 836 1416 | T:add_avx | g++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
33884 | 9239 8 272 | 23116 812 1384 | T:add_avx | g++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
45356 | 6274 0 0 | 20020 804 1096 | T:add_sse | g++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
3260560 | 8263 0 0 | 23647 812 1096 | T:ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
3359885 | 5376 0 0 | 19082 788 1064 | T:ref | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
3375098 | 12991 0 0 | 30407 812 1160 | T:ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
3536345 | 13787 0 0 | 28514 828 1096 | T:ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
4657316 | 111392 0 0 | 132334 828 1096 | T:ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
4760770 | 111392 0 0 | 132446 828 1096 | T:ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
Checksum failure
1fc9516b5b27c0502a4c5dab02030bac4409a31ea668f68683bb362f81543da0
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
T:add_avx | clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:add_avx | clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:add_avx | clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
Compiler output
simd.cpp: simd.cpp:23:13: warning: unused function 'disp' [-Wunused-function]
simd.cpp: 23 | static void disp(__m128i in) {
simd.cpp: | ^~~~
simd.cpp: simd.cpp:59:13: warning: unused function 'dispReg' [-Wunused-function]
simd.cpp: 59 | static void dispReg(__m256i in) {
simd.cpp: | ^~~~~~~
simd.cpp: 2 warnings generated.
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
T:add_avx | clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:add_avx | clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:add_avx | clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
Compiler output
simd.cpp: simd.cpp:59:13: warning: 'void dispReg(__m256i)' defined but not used [-Wunused-function]
simd.cpp: 59 | static void dispReg(__m256i in) {
simd.cpp: | ^~~~~~~
simd.cpp: simd.cpp:23:13: warning: 'void disp(__m128i)' defined but not used [-Wunused-function]
simd.cpp: 23 | static void disp(__m128i in) {
simd.cpp: | ^~~~
simd.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/13/include/xmmintrin.h:1322,
simd.cpp: from /usr/lib/gcc/x86_64-linux-gnu/13/include/immintrin.h:31,
simd.cpp: from /usr/lib/gcc/x86_64-linux-gnu/13/include/x86intrin.h:32,
simd.cpp: from simd.cpp:16:
simd.cpp: In function '__m128i _mm_loadu_si128(const __m128i_u*)',
simd.cpp: inlined from 'void triad_high_speed_encryption(unsigned char*, const unsigned char*, long long unsigned int, const unsigned char*, long long unsigned int, const unsigned char*, const unsigned char*)' at simd.cpp:487:28:
simd.cpp: /usr/lib/gcc/x86_64-linux-gnu/13/include/emmintrin.h:706:11: warning: array subscript 'const __m128i_u[0]' is partly outside array bounds of 'long long unsigned int [1]' [-Warray-bounds=]
simd.cpp: 706 | return *__P;
simd.cpp: | ^~~
simd.cpp: simd.cpp: In function 'void triad_high_speed_encryption(unsigned char*, const unsigned char*, long long unsigned int, const unsigned char*, long long unsigned int, const unsigned char*, const unsigned char*)':
simd.cpp: simd.cpp:384:145: note: object 'adlen' of size 8
simd.cpp: 384 | void triad_high_speed_encryption(unsigned char *c, const unsigned char *m, unsigned long long mlen, const unsigned char *ad, unsigned long long adlen, const unsigned char *npub, const unsigned char *k) {
simd.cpp: | ~~~~~~~~~~~~~~~~~~~^~~~~
simd.cpp: In function '__m128i _mm_loadu_si128(const __m128i_u*)',
simd.cpp: inlined from 'void triad_high_speed_decryption(unsigned char*, unsigned char*, const unsigned char*, long long unsigned int, const unsigned char*, long long unsigned int, const unsigned char*, const unsigned char*)' at simd.cpp:802:34:
simd.cpp: /usr/lib/gcc/x86_64-linux-gnu/13/include/emmintrin.h:706:11: warning: array subscript 'const __m128i_u[0]' is partly outside array bounds of 'long long unsigned int [1]' [-Warray-bounds=]
simd.cpp: 706 | return *__P;
simd.cpp: | ^~~
simd.cpp: simd.cpp: In function 'void triad_high_speed_decryption(unsigned char*, unsigned char*, const unsigned char*, long long unsigned int, const unsigned char*, long long unsigned int, const unsigned char*, const unsigned char*)':
simd.cpp: ...
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
T:add_avx | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:add_avx | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:add_avx | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
Compiler output
simd.cpp: simd.cpp:22:13: warning: unused function 'disp' [-Wunused-function]
simd.cpp: 22 | static void disp(__m128i in) {
simd.cpp: | ^~~~
simd.cpp: simd.cpp:38:13: warning: unused function 'dispReg' [-Wunused-function]
simd.cpp: 38 | static void dispReg(__m128i in) {
simd.cpp: | ^~~~~~~
simd.cpp: simd.cpp:54:13: warning: unused function 'dispReg' [-Wunused-function]
simd.cpp: 54 | static void dispReg(__m128i inL, __m128i inR) {
simd.cpp: | ^~~~~~~
simd.cpp: 3 warnings generated.
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
T:add_sse | clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:add_sse | clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:add_sse | clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
Compiler output
simd.cpp: simd.cpp:54:13: warning: 'void dispReg(__m128i, __m128i)' defined but not used [-Wunused-function]
simd.cpp: 54 | static void dispReg(__m128i inL, __m128i inR) {
simd.cpp: | ^~~~~~~
simd.cpp: simd.cpp:38:13: warning: 'void dispReg(__m128i)' defined but not used [-Wunused-function]
simd.cpp: 38 | static void dispReg(__m128i in) {
simd.cpp: | ^~~~~~~
simd.cpp: simd.cpp:22:13: warning: 'void disp(__m128i)' defined but not used [-Wunused-function]
simd.cpp: 22 | static void disp(__m128i in) {
simd.cpp: | ^~~~
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
T:add_sse | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:add_sse | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:add_sse | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
Compiler output
encrypt.c: encrypt.c:86:16: warning: variable 'd' set but not used [-Wunused-but-set-variable]
encrypt.c: 86 | unsigned char d, c1[8], c2[8], c3[8], c4[8];
encrypt.c: | ^
encrypt.c: encrypt.c:153:16: warning: variable 'd' set but not used [-Wunused-but-set-variable]
encrypt.c: 153 | unsigned char d, c1[8], c2[8], c3[8], c4[8];
encrypt.c: | ^
encrypt.c: encrypt.c:342:32: warning: variable 'kstem' set but not used [-Wunused-but-set-variable]
encrypt.c: 342 | unsigned char ks[64], mac[8], kstem = 0;
encrypt.c: | ^
encrypt.c: encrypt.c:393:32: warning: variable 'kstem' set but not used [-Wunused-but-set-variable]
encrypt.c: 393 | unsigned char ks[64], tag[8], kstem = 0,check = 0;
encrypt.c: | ^
encrypt.c: 4 warnings generated.
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
Compiler output
encrypt.c: encrypt.c: In function 'Initialization':
encrypt.c: encrypt.c:86:23: warning: variable 'd' set but not used [-Wunused-but-set-variable]
encrypt.c: 86 | unsigned char d, c1[8], c2[8], c3[8], c4[8];
encrypt.c: | ^
encrypt.c: encrypt.c: In function 'Initialization_mac':
encrypt.c: encrypt.c:153:23: warning: variable 'd' set but not used [-Wunused-but-set-variable]
encrypt.c: 153 | unsigned char d, c1[8], c2[8], c3[8], c4[8];
encrypt.c: | ^
encrypt.c: encrypt.c: In function 'macgeneration_part':
encrypt.c: encrypt.c:342:39: warning: variable 'kstem' set but not used [-Wunused-but-set-variable]
encrypt.c: 342 | unsigned char ks[64], mac[8], kstem = 0;
encrypt.c: | ^~~~~
encrypt.c: encrypt.c: In function 'tagverification_part':
encrypt.c: encrypt.c:393:39: warning: variable 'kstem' set but not used [-Wunused-but-set-variable]
encrypt.c: 393 | unsigned char ks[64], tag[8], kstem = 0,check = 0;
encrypt.c: | ^~~~~
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
Namespace violations
encrypt.o Init_loading T
encrypt.o Initialization T
encrypt.o Initialization_mac T
encrypt.o Keystreamgen T
encrypt.o Keystreamgen_byte T
encrypt.o Stateupdate T
encrypt.o dec_onebyte T
encrypt.o decryption_part T
encrypt.o enc_onebyte T
encrypt.o encryption_part T
encrypt.o filter T
encrypt.o mac_onebyte_ad T
encrypt.o mac_onebyte_message T
encrypt.o macgeneration_part T
encrypt.o tagverification_part T
Number of similar (implementation,compiler) pairs: 6, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |