Implementation notes: amd64, hydra7, crypto_kem/frodokem640aes
Computer: hydra7
Microarchitecture: amd64; Sandy Bridge+AES (206a7)
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20240625
Operation: crypto_kem
Primitive: frodokem640aes
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
5524524 | 37613 42 0 | 56694 940 1760 | T:optimized | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240629 | 20240625 |
21055430 | 10821 42 0 | 28734 940 1760 | T:optimized | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240629 | 20240625 |
25653934 | 10339 42 0 | 27950 940 1760 | T:optimized | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240629 | 20240625 |
26754391 | 9308 42 0 | 25774 932 1728 | T:optimized | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240629 | 20240625 |
Compiler output
frodo640.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
frodo640.c: from frodo_macrify.inc:8,
frodo640.c: from frodo640.c:32:
frodo640.c: frodo_macrify.inc: In function 'frodo_mul_add_sa_plus_e':
frodo640.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:112:1: error: inlining failed in call to 'always_inline' '_mm256_add_epi16': target specific option mismatch
frodo640.c: 112 | _mm256_add_epi16 (__m256i __A, __m256i __B)
frodo640.c: | ^~~~~~~~~~~~~~~~
frodo640.c: In file included from frodo640.c:32:
frodo640.c: frodo_macrify.inc:122:30: note: called from here
frodo640.c: 122 | acc[3] = _mm256_add_epi16(a[3], acc[3]);
frodo640.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
frodo640.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
frodo640.c: from frodo_macrify.inc:8,
frodo640.c: from frodo640.c:32:
frodo640.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:341:1: error: inlining failed in call to 'always_inline' '_mm256_madd_epi16': target specific option mismatch
frodo640.c: 341 | _mm256_madd_epi16 (__m256i __A, __m256i __B)
frodo640.c: | ^~~~~~~~~~~~~~~~~
frodo640.c: In file included from frodo640.c:32:
frodo640.c: frodo_macrify.inc:121:28: note: called from here
frodo640.c: 121 | a[3] = _mm256_madd_epi16(a[3], b);
frodo640.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~
frodo640.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
frodo640.c: from frodo_macrify.inc:8,
frodo640.c: from frodo640.c:32:
frodo640.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:112:1: error: inlining failed in call to 'always_inline' '_mm256_add_epi16': target specific option mismatch
frodo640.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:x64 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:x64 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:x64 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:x64 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |