Test results for amd64, hydra5, crypto_aead/grain128aeadv2
[Page version: 20251014 13:11:50]
Measurements for amd64, hydra5, crypto_aead
Test results for amd64, hydra5, crypto_aead
Test results for crypto_aead/grain128aeadv2
Computer: hydra5
Microarchitecture: amd64; K10 32nm (300f10)
Architecture: amd64
CPU ID: AuthenticAMD-00300f10-178bfbff
SUPERCOP version: 20250922
Operation: crypto_aead
Primitive: grain128aeadv2
| Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
| 463802 | 6757 0 0 | 21492 796 1120 | T:x64 | g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20250311 | 20250307 |
| 488072 | 7244 0 0 | 22813 804 1120 | T:x64 | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20250311 | 20250307 |
| 636271 | 2753 0 0 | 16280 780 1088 | T:x64 | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20250311 | 20250307 |
Checksum failure
d0dd6234d89dbd95039a8c1c4e9e8f6fa0d58228afa4fda263447f76c3102a36
Number of similar (implementation,compiler) pairs: 1, namely:
| Implementation | Compiler |
| T:x64 | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
Compiler output
grain128aead-v2_opt.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:57,
grain128aead-v2_opt.cpp: from /usr/lib/gcc/x86_64-linux-gnu/11/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/11/include/avx512vlintrin.h: In function 'u64 grain_keystream64(grain_ctx*)':
grain128aead-v2_opt.cpp: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx512vlintrin.h:10647: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: 10647 | _mm_ternarylogic_epi64 (__m128i __A, __m128i __B, __m128i __C,
grain128aead-v2_opt.cpp: | ^~~~~~~~~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:207:39: 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/11/include/immintrin.h:57,
grain128aead-v2_opt.cpp: from /usr/lib/gcc/x86_64-linux-gnu/11/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/11/include/avx512vlintrin.h:10647: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: 10647 | _mm_ternarylogic_epi64 (__m128i __A, __m128i __B, __m128i __C,
grain128aead-v2_opt.cpp: | ^~~~~~~~~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:207:39: 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/11/include/immintrin.h:57,
grain128aead-v2_opt.cpp: from /usr/lib/gcc/x86_64-linux-gnu/11/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:
| Implementation | Compiler |
| T:avx512 | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
| T:avx512 | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
| T:avx512 | g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
| T:avx512 | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
| T:gf2 | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
| T:gf2 | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
| T:gf2 | g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
| T:gf2 | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
Compiler output
grain128aead-v2.c: grain128aead-v2.c:150:31: warning: argument 1 of type 'unsigned char[64]' with mismatched bound [-Warray-parameter=]
grain128aead-v2.c: 150 | void auth_shift(unsigned char sr[64], unsigned char fb)
grain128aead-v2.c: | ~~~~~~~~~~~~~~^~~~~~
grain128aead-v2.c: In file included from grain128aead-v2.c:20:
grain128aead-v2.c: grain128aead-v2.h:26:31: note: previously declared as 'unsigned char[32]'
grain128aead-v2.c: 26 | void auth_shift(unsigned char sr[32], unsigned char fb);
grain128aead-v2.c: | ~~~~~~~~~~~~~~^~~~~~
grain128aead-v2.c: grain128aead-v2.c: In function 'auth_shift':
grain128aead-v2.c: grain128aead-v2.c:155:11: warning: array subscript 63 is outside array bounds of 'unsigned char[32]' [-Warray-bounds]
grain128aead-v2.c: 155 | sr[63] = fb;
grain128aead-v2.c: | ~~^~~~
grain128aead-v2.c: grain128aead-v2.c:150:31: note: while referencing 'sr'
grain128aead-v2.c: 150 | void auth_shift(unsigned char sr[64], unsigned char fb)
grain128aead-v2.c: | ~~~~~~~~~~~~~~^~~~~~
grain128aead-v2.c: grain128aead-v2.c:153:23: warning: '__builtin_memmove' forming offset [32, 62] is out of the bounds [0, 32] [-Warray-bounds]
grain128aead-v2.c: 153 | sr[i] = sr[i+1];
grain128aead-v2.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.3.0) |
| T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
| T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
Compiler output
grain128aead-v2.c: grain128aead-v2.c:150:31: warning: argument 1 of type 'unsigned char[64]' with mismatched bound [-Warray-parameter=]
grain128aead-v2.c: 150 | void auth_shift(unsigned char sr[64], unsigned char fb)
grain128aead-v2.c: | ~~~~~~~~~~~~~~^~~~~~
grain128aead-v2.c: In file included from grain128aead-v2.c:20:
grain128aead-v2.c: grain128aead-v2.h:26:31: note: previously declared as 'unsigned char[32]'
grain128aead-v2.c: 26 | void auth_shift(unsigned char sr[32], unsigned char fb);
grain128aead-v2.c: | ~~~~~~~~~~~~~~^~~~~~
Number of similar (implementation,compiler) pairs: 1, namely:
| Implementation | Compiler |
| T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
Compiler output
grain128aead-v2_opt.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:37,
grain128aead-v2_opt.cpp: from /usr/lib/gcc/x86_64-linux-gnu/11/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/11/include/tmmintrin.h: In function 'u64 grain_keystream64(grain_ctx*)':
grain128aead-v2_opt.cpp: /usr/lib/gcc/x86_64-linux-gnu/11/include/tmmintrin.h:185:1: error: inlining failed in call to 'always_inline' '__m128i _mm_alignr_epi8(__m128i, __m128i, int)': target specific option mismatch
grain128aead-v2_opt.cpp: 185 | _mm_alignr_epi8(__m128i __X, __m128i __Y, const int __N)
grain128aead-v2_opt.cpp: | ^~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:190:29: note: called from here
grain128aead-v2_opt.cpp: 190 | b0 = _mm_alignr_epi8(tb, b0, 4);
grain128aead-v2_opt.cpp: | ~~~~~~~~~~~~~~~^~~~~~~~~~~
grain128aead-v2_opt.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:37,
grain128aead-v2_opt.cpp: from /usr/lib/gcc/x86_64-linux-gnu/11/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/11/include/tmmintrin.h:185:1: error: inlining failed in call to 'always_inline' '__m128i _mm_alignr_epi8(__m128i, __m128i, int)': target specific option mismatch
grain128aead-v2_opt.cpp: 185 | _mm_alignr_epi8(__m128i __X, __m128i __Y, const int __N)
grain128aead-v2_opt.cpp: | ^~~~~~~~~~~~~~~
grain128aead-v2_opt.cpp: grain128aead-v2_opt.cpp:190:29: note: called from here
grain128aead-v2_opt.cpp: 190 | b0 = _mm_alignr_epi8(tb, b0, 4);
grain128aead-v2_opt.cpp: | ~~~~~~~~~~~~~~~^~~~~~~~~~~
Number of similar (implementation,compiler) pairs: 4, namely:
| Implementation | Compiler |
| T:sse | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
| T:sse | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
| T:sse | g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |
| T:sse | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0) |