Implementation notes: amd64, hertz, crypto_aead/hs1sivv2
Computer: hertz
Microarchitecture: amd64; Zen 4 (a60f12)
Architecture: amd64
CPU ID: AuthenticAMD-00a60f12-178bfbff
SUPERCOP version: 20240808
Operation: crypto_aead
Primitive: hs1sivv2
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
6187 | 11652 0 0 | 35309 820 1160 | T:faster | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
6435 | 7853 0 0 | 28920 836 1096 | T:faster | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
6518 | 8493 0 0 | 27672 796 1064 | T:faster | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
6623 | 9362 0 0 | 30989 820 1096 | T:faster | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
7531 | 22114 0 0 | 49182 844 1096 | T:dolbeau/amd64-sse | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
7542 | 22082 0 0 | 49262 844 1096 | T:dolbeau/amd64-sse | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
7583 | 7306 0 0 | 28264 836 1096 | T:dolbeau/amd64-sse | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
8747 | 8626 0 0 | 28232 796 1064 | T:dolbeau/amd64-sse | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
19228 | 11252 0 0 | 38342 844 1096 | T:ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
19260 | 9396 0 0 | 36598 844 1096 | T:ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
26078 | 3627 0 0 | 24696 836 1096 | T:ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
27868 | 4657 0 0 | 24486 812 1064 | T:ref | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240809 | 20240808 |
Test failure
error 111
crypto_aead_decrypt allows trivial forgeries
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:dolbeau/amd64-sse | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:dolbeau/amd64-sse | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
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) |
Test failure
error 111
Number of similar (implementation,compiler) pairs: 2, namely:
Implementation | Compiler |
T:faster | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:faster | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
Compiler output
encrypt.c: In file included from encrypt.c:194:
encrypt.c: ./c176.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: 70 | __m128i t_14;
encrypt.c: | ^~~~
encrypt.c: ./c176.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: 71 | __m128i t_15;
encrypt.c: | ^~~~
encrypt.c: In file included from encrypt.c:234:
encrypt.c: ./u16.h:191:13: warning: unused variable 'gvv' [-Wunused-variable]
encrypt.c: 191 | __m512i gvv = _mm512_set_epi64(776,768,520,512,264,256,8,0);
encrypt.c: | ^~~
encrypt.c: ./u16.h:144:11: warning: unused variable 't_0' [-Wunused-variable]
encrypt.c: 144 | __m512i t_0;
encrypt.c: | ^~~
encrypt.c: ./u16.h:145:11: warning: unused variable 't_1' [-Wunused-variable]
encrypt.c: 145 | __m512i t_1;
encrypt.c: | ^~~
encrypt.c: ./u16.h:146:11: warning: unused variable 't_2' [-Wunused-variable]
encrypt.c: 146 | __m512i t_2;
encrypt.c: | ^~~
encrypt.c: ./u16.h:147:11: warning: unused variable 't_3' [-Wunused-variable]
encrypt.c: 147 | __m512i t_3;
encrypt.c: | ^~~
encrypt.c: ./u16.h:148:11: warning: unused variable 't_4' [-Wunused-variable]
encrypt.c: 148 | __m512i t_4;
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 6, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx2 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:dolbeau/amd64-avx2 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:dolbeau/amd64-avx2 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:dolbeau/amd64-avx512 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:dolbeau/amd64-avx512 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:dolbeau/amd64-avx512 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
Compiler output
encrypt.c: encrypt.c:85: warning: "_bswap64" redefined
encrypt.c: 85 | #define _bswap64(a) __builtin_bswap64(a)
encrypt.c: |
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/13/include/x86gprintrin.h:33,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/13/include/immintrin.h:27,
encrypt.c: from encrypt.c:54:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/13/include/ia32intrin.h:273: note: this is the location of the previous definition
encrypt.c: 273 | #define _bswap64(a) __bswapq(a)
encrypt.c: |
encrypt.c: encrypt.c:86: warning: "_bswap" redefined
encrypt.c: 86 | #define _bswap(a) __builtin_bswap(a)
encrypt.c: |
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/13/include/ia32intrin.h:307: note: this is the location of the previous definition
encrypt.c: 307 | #define _bswap(a) __bswapd(a)
encrypt.c: |
encrypt.c: In file included from encrypt.c:194:
encrypt.c: c176.h: In function 'chacha_noxor176':
encrypt.c: c176.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: 71 | __m128i t_15;
encrypt.c: | ^~~~
encrypt.c: c176.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: 70 | __m128i t_14;
encrypt.c: | ^~~~
encrypt.c: In file included from encrypt.c:234:
encrypt.c: u16.h: In function 'chacha_xor':
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 6, namely:
Implementation | Compiler |
T:dolbeau/amd64-avx2 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:dolbeau/amd64-avx2 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:dolbeau/amd64-avx2 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:dolbeau/amd64-avx512 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:dolbeau/amd64-avx512 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:dolbeau/amd64-avx512 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
Compiler output
encrypt.c: In file included from encrypt.c:190:
encrypt.c: ./c176.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: 70 | __m128i t_14;
encrypt.c: | ^~~~
encrypt.c: ./c176.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: 71 | __m128i t_15;
encrypt.c: | ^~~~
encrypt.c: encrypt.c:418:24: warning: unused variable 'ia1' [-Wunused-variable]
encrypt.c: 418 | ALIGN32 uint64_t ia1[4];
encrypt.c: | ^~~
encrypt.c: encrypt.c:311:19: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: 311 | unsigned i=0, j;
encrypt.c: | ^
encrypt.c: encrypt.c:558:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: 558 | unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: | ^
encrypt.c: encrypt.c:558:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: 558 | unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: | ^
encrypt.c: 6 warnings generated.
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
T:dolbeau/amd64-sse | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:dolbeau/amd64-sse | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:dolbeau/amd64-sse | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
Compiler output
encrypt.c: In file included from encrypt.c:190:
encrypt.c: c176.h: In function 'chacha_noxor176':
encrypt.c: c176.h:71:11: warning: unused variable 't_15' [-Wunused-variable]
encrypt.c: 71 | __m128i t_15;
encrypt.c: | ^~~~
encrypt.c: c176.h:70:11: warning: unused variable 't_14' [-Wunused-variable]
encrypt.c: 70 | __m128i t_14;
encrypt.c: | ^~~~
encrypt.c: encrypt.c: In function 'prf_hash2_2':
encrypt.c: encrypt.c:418:24: warning: unused variable 'ia1' [-Wunused-variable]
encrypt.c: 418 | ALIGN32 uint64_t ia1[4];
encrypt.c: | ^~~
encrypt.c: encrypt.c:311:19: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: 311 | unsigned i=0, j;
encrypt.c: | ^
encrypt.c: encrypt.c: In function 'hs1_data':
encrypt.c: encrypt.c:558:18: warning: variable 'mtot' set but not used [-Wunused-but-set-variable]
encrypt.c: 558 | unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: | ^~~~
encrypt.c: encrypt.c:558:12: warning: variable 'atot' set but not used [-Wunused-but-set-variable]
encrypt.c: 558 | unsigned atot, mtot, arnd64, mrnd64;
encrypt.c: | ^~~~
Number of similar (implementation,compiler) pairs: 3, namely:
Implementation | Compiler |
T:dolbeau/amd64-sse | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:dolbeau/amd64-sse | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:dolbeau/amd64-sse | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
Namespace violations
chacha_moon.o _chacha_blocks T
chacha_moon.o chacha_blocks T
hs1.o hash_finalize T
hs1.o hash_step T
hs1.o hs1 T
hs1.o hs1_bzero T
hs1.o hs1_gen_siv T
hs1.o hs1_memcpy T
hs1.o hs1_setup T
hs1.o hs1siv_decrypt T
hs1.o hs1siv_encrypt T
hs1.o poly_finalize T
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:faster | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1)) |
T:faster | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:faster | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
T:faster | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |
Namespace violations
encrypt.o chacha T
encrypt.o chacha_ivsetup T
encrypt.o chacha_keysetup T
encrypt.o hs1 T
encrypt.o hs1_hash T
encrypt.o hs1siv_chacha256 T
encrypt.o hs1siv_decrypt T
encrypt.o hs1siv_encrypt T
encrypt.o hs1siv_subkeygen T
encrypt.o prf_hash2 T
Number of similar (implementation,compiler) pairs: 4, 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 -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0) |