Test results for amd64, wolfdale, crypto_aead/grain128aeadv2

[Page version: 20240911 13:27:25]

Measurements for amd64, wolfdale, crypto_aead Test results for amd64, wolfdale, crypto_aead Test results for crypto_aead/grain128aeadv2
Computer: wolfdale
Microarchitecture: amd64; Core 2 45nm (1067a)
Architecture: amd64
CPU ID: GenuineIntel-0001067a-bfebfbff
SUPERCOP version: 20240909
Operation: crypto_aead
Primitive: grain128aeadv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
40100017643 0 034101 844 1016T:x64clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024062820240625
42146421281 0 036901 844 1016T:x64clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024062820240625
4955087064 0 021528 780 1112T:x64g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024062820240625
5388822867 0 016851 836 1016T:x64clang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024062820240625
5568102489 0 015371 756 1080T:x64g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024062820240625
5764986811 0 020855 772 1112T:x64g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024062820240625

Checksum failure


7d0b0c2792c151f313da2a4c4f1e9f6ce9e0620579deaee3411fe08dabcaf63d

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:x64clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Checksum failure


d0dd6234d89dbd95039a8c1c4e9e8f6fa0d58228afa4fda263447f76c3102a36

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:x64g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:236:6: error: '__builtin_ia32_pternlogq128_mask' needs target feature avx512vl
grain128aead-v2_opt.cpp:         T = _xorand3(_mm_srli_epi16(X, 1), X, _mm_set1_epi16(0x2222));
grain128aead-v2_opt.cpp:             ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:125:27: note: expanded from macro '_xorand3'
grain128aead-v2_opt.cpp: #define _xorand3(a, b, c)       _mm_ternarylogic_epi64(a, b, c, 0x28)
grain128aead-v2_opt.cpp:                                 ^
grain128aead-v2_opt.cpp: /usr/lib/llvm-11/lib/clang/11.0.1/include/avx512vlintrin.h:6565:12: note: expanded from macro '_mm_ternarylogic_epi64'
grain128aead-v2_opt.cpp:   (__m128i)__builtin_ia32_pternlogq128_mask((__v2di)(__m128i)(A), \
grain128aead-v2_opt.cpp:            ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:237:6: error: '__builtin_ia32_pternlogq128_mask' needs target feature avx512vl
grain128aead-v2_opt.cpp:         X = _xor3(_mm_slli_epi16(T, 1), X, T);
grain128aead-v2_opt.cpp:             ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:122:25: note: expanded from macro '_xor3'
grain128aead-v2_opt.cpp: #define _xor3(a, b, c)          _mm_ternarylogic_epi64(a, b, c, 0x96)
grain128aead-v2_opt.cpp:                                 ^
grain128aead-v2_opt.cpp: /usr/lib/llvm-11/lib/clang/11.0.1/include/avx512vlintrin.h:6565:12: note: expanded from macro '_mm_ternarylogic_epi64'
grain128aead-v2_opt.cpp:   (__m128i)__builtin_ia32_pternlogq128_mask((__v2di)(__m128i)(A), \
grain128aead-v2_opt.cpp:            ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:238:6: error: '__builtin_ia32_pternlogq128_mask' needs target feature avx512vl
grain128aead-v2_opt.cpp:         T = _xorand3(_mm_srli_epi16(X, 2), X, _mm_set1_epi16(0x0c0c));
grain128aead-v2_opt.cpp:             ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:125:27: note: expanded from macro '_xorand3'
grain128aead-v2_opt.cpp: #define _xorand3(a, b, c)       _mm_ternarylogic_epi64(a, b, c, 0x28)
grain128aead-v2_opt.cpp:                                 ^
grain128aead-v2_opt.cpp: /usr/lib/llvm-11/lib/clang/11.0.1/include/avx512vlintrin.h:6565:12: note: expanded from macro '_mm_ternarylogic_epi64'
grain128aead-v2_opt.cpp: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:avx512clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx512clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx512clang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx512clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


grain128aead-v2_opt.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:63,
grain128aead-v2_opt.cpp:                  from /usr/lib/gcc/x86_64-linux-gnu/10/include/x86intrin.h:32,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.h:41,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.cpp:10:
grain128aead-v2_opt.cpp: /usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vlintrin.h: In function 'u64 grain_keystream64(grain_ctx*)':
grain128aead-v2_opt.cpp: /usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vlintrin.h:10568:1: error: inlining failed in call to 'always_inline' '__m128i _mm_ternarylogic_epi64(__m128i, __m128i, __m128i, int)': target specific option mismatch
grain128aead-v2_opt.cpp: 10568 | _mm_ternarylogic_epi64 (__m128i __A, __m128i __B, __m128i __C,
grain128aead-v2_opt.cpp:       | ^~~~~~~~~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:207:32: note: called from here
grain128aead-v2_opt.cpp:   207 |  u64 y = ys ^ _mm_cvtsi128_si64(_xor2(shr8(_xor3(_andxor3(s4, s7, s5), _and3(ts, b7, s6), b1), 7), shr8(_andxor3(shr8(b7, 2), s2, b1), 5)));
grain128aead-v2_opt.cpp:       |               ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:63,
grain128aead-v2_opt.cpp:                  from /usr/lib/gcc/x86_64-linux-gnu/10/include/x86intrin.h:32,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.h:41,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.cpp:10:
grain128aead-v2_opt.cpp: /usr/lib/gcc/x86_64-linux-gnu/10/include/avx512vlintrin.h:10568:1: error: inlining failed in call to 'always_inline' '__m128i _mm_ternarylogic_epi64(__m128i, __m128i, __m128i, int)': target specific option mismatch
grain128aead-v2_opt.cpp: 10568 | _mm_ternarylogic_epi64 (__m128i __A, __m128i __B, __m128i __C,
grain128aead-v2_opt.cpp:       | ^~~~~~~~~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:207:32: note: called from here
grain128aead-v2_opt.cpp:   207 |  u64 y = ys ^ _mm_cvtsi128_si64(_xor2(shr8(_xor3(_andxor3(s4, s7, s5), _and3(ts, b7, s6), b1), 7), shr8(_andxor3(shr8(b7, 2), s2, b1), 5)));
grain128aead-v2_opt.cpp:       |               ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:63,
grain128aead-v2_opt.cpp:                  from /usr/lib/gcc/x86_64-linux-gnu/10/include/x86intrin.h:32,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.h:41,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.cpp:10:
grain128aead-v2_opt.cpp: ...

Number of similar (implementation,compiler) pairs: 8, namely:
ImplementationCompiler
T:avx512g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:avx512g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:avx512g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:avx512g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:gf2g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:gf2g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:gf2g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:gf2g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:234:6: error: '__builtin_ia32_vgf2p8affineqb_v16qi' needs target feature gfni
grain128aead-v2_opt.cpp:         X = _mm_gf2p8affine_epi64_epi8(X, _mm_set1_epi64x(0x0104104002082080ULL), 0);
grain128aead-v2_opt.cpp:             ^
grain128aead-v2_opt.cpp: /usr/lib/llvm-11/lib/clang/11.0.1/include/gfniintrin.h:64:12: note: expanded from macro '_mm_gf2p8affine_epi64_epi8'
grain128aead-v2_opt.cpp:   (__m128i)__builtin_ia32_vgf2p8affineqb_v16qi((__v16qi)(__m128i)(A),             \
grain128aead-v2_opt.cpp:            ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:241:6: error: '__builtin_ia32_pternlogq128_mask' needs target feature avx512vl
grain128aead-v2_opt.cpp:         T = _xorand3(_mm_srli_epi16(X, 4), X, _mm_set1_epi16(0x00f0));
grain128aead-v2_opt.cpp:             ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:125:27: note: expanded from macro '_xorand3'
grain128aead-v2_opt.cpp: #define _xorand3(a, b, c)       _mm_ternarylogic_epi64(a, b, c, 0x28)
grain128aead-v2_opt.cpp:                                 ^
grain128aead-v2_opt.cpp: /usr/lib/llvm-11/lib/clang/11.0.1/include/avx512vlintrin.h:6565:12: note: expanded from macro '_mm_ternarylogic_epi64'
grain128aead-v2_opt.cpp:   (__m128i)__builtin_ia32_pternlogq128_mask((__v2di)(__m128i)(A), \
grain128aead-v2_opt.cpp:            ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:242:6: error: '__builtin_ia32_pternlogq128_mask' needs target feature avx512vl
grain128aead-v2_opt.cpp:         X = _xor3(_mm_slli_epi16(T, 4), X, T);
grain128aead-v2_opt.cpp:             ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:122:25: note: expanded from macro '_xor3'
grain128aead-v2_opt.cpp: #define _xor3(a, b, c)          _mm_ternarylogic_epi64(a, b, c, 0x96)
grain128aead-v2_opt.cpp:                                 ^
grain128aead-v2_opt.cpp: /usr/lib/llvm-11/lib/clang/11.0.1/include/avx512vlintrin.h:6565:12: note: expanded from macro '_mm_ternarylogic_epi64'
grain128aead-v2_opt.cpp:   (__m128i)__builtin_ia32_pternlogq128_mask((__v2di)(__m128i)(A), \
grain128aead-v2_opt.cpp:            ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:155:30: error: '__builtin_ia32_pternlogq128_mask' needs target feature avx512vl
grain128aead-v2_opt.cpp: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:gf2clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:gf2clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:gf2clang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:gf2clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:317:14: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
grain128aead-v2_opt.cpp:         __m128i x = _mm_clmulepi64_si128(reg, imsg, 0x00);
grain128aead-v2_opt.cpp:                     ^
grain128aead-v2_opt.cpp: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
grain128aead-v2_opt.cpp:   ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \
grain128aead-v2_opt.cpp:             ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:318:14: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
grain128aead-v2_opt.cpp:         __m128i y = _mm_clmulepi64_si128(reg, imsg, 0x0f);
grain128aead-v2_opt.cpp:                     ^
grain128aead-v2_opt.cpp: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
grain128aead-v2_opt.cpp:   ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \
grain128aead-v2_opt.cpp:             ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:281:34: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
grain128aead-v2_opt.cpp:         _mm_storeu_si128((__m128i*)tmp, _mm_clmulepi64_si128(reg, imsg, 0x00));
grain128aead-v2_opt.cpp:                                         ^
grain128aead-v2_opt.cpp: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
grain128aead-v2_opt.cpp:   ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \
grain128aead-v2_opt.cpp:             ^
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:282:8: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
grain128aead-v2_opt.cpp:         reg = _mm_clmulepi64_si128(reg, imsg, 0x0f);
grain128aead-v2_opt.cpp:               ^
grain128aead-v2_opt.cpp: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
grain128aead-v2_opt.cpp:   ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \
grain128aead-v2_opt.cpp:             ^
grain128aead-v2_opt.cpp: 4 errors generated.

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:sseclang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:sseclang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:sseclang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:sseclang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


grain128aead-v2_opt.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:39,
grain128aead-v2_opt.cpp:                  from /usr/lib/gcc/x86_64-linux-gnu/10/include/x86intrin.h:32,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.h:41,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.cpp:10:
grain128aead-v2_opt.cpp: /usr/lib/gcc/x86_64-linux-gnu/10/include/wmmintrin.h: In function 'void grain_authF(grain_ctx*, u8*)':
grain128aead-v2_opt.cpp: /usr/lib/gcc/x86_64-linux-gnu/10/include/wmmintrin.h:116:1: error: inlining failed in call to 'always_inline' '__m128i _mm_clmulepi64_si128(__m128i, __m128i, int)': target specific option mismatch
grain128aead-v2_opt.cpp:   116 | _mm_clmulepi64_si128 (__m128i __X, __m128i __Y, const int __I)
grain128aead-v2_opt.cpp:       | ^~~~~~~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:318:34: note: called from here
grain128aead-v2_opt.cpp:   318 |  __m128i y = _mm_clmulepi64_si128(reg, imsg, 0x0f);
grain128aead-v2_opt.cpp:       |              ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:39,
grain128aead-v2_opt.cpp:                  from /usr/lib/gcc/x86_64-linux-gnu/10/include/x86intrin.h:32,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.h:41,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.cpp:10:
grain128aead-v2_opt.cpp: /usr/lib/gcc/x86_64-linux-gnu/10/include/wmmintrin.h:116:1: error: inlining failed in call to 'always_inline' '__m128i _mm_clmulepi64_si128(__m128i, __m128i, int)': target specific option mismatch
grain128aead-v2_opt.cpp:   116 | _mm_clmulepi64_si128 (__m128i __X, __m128i __Y, const int __I)
grain128aead-v2_opt.cpp:       | ^~~~~~~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:317:34: note: called from here
grain128aead-v2_opt.cpp:   317 |  __m128i x = _mm_clmulepi64_si128(reg, imsg, 0x00);
grain128aead-v2_opt.cpp:       |              ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:39,
grain128aead-v2_opt.cpp:                  from /usr/lib/gcc/x86_64-linux-gnu/10/include/x86intrin.h:32,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.h:41,
grain128aead-v2_opt.cpp:                  from grain128aead-v2_opt.cpp:10:
grain128aead-v2_opt.cpp: ...

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