Test results for amd64, h9ivy, crypto_core/mult3sntrup1277

[Page version: 20250926 22:04:25]

Measurements for amd64, h9ivy, crypto_core Test results for amd64, h9ivy, crypto_core Test results for crypto_core/mult3sntrup1277
Computer: h9ivy
Microarchitecture: amd64; Ivy Bridge+AES (306a9)
Architecture: amd64
CPU ID: GenuineIntel-000306a9-bfebfbff
SUPERCOP version: 20250922
Operation: crypto_core
Primitive: mult3sntrup1277
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
5056693047 0 018573 820 936compactclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
5232122153 0 018149 820 936compactclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
5269371410 0 014612 780 1000compactgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
6058611850 0 019781 820 936compactclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
6486702627 0 018141 820 936refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
6720723131 0 016292 780 1000refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
6745271869 0 017869 820 936refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
9649242991 0 020917 820 936refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
3375796412 0 011925 820 936compactclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
3407911372 0 011766 812 936compactclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
3699385563 0 012077 820 936refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
3701113499 0 011886 812 936refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
4103749590 0 012436 780 1000refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
4942955332 0 010759 756 968compactgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
4945639443 0 012324 780 1000compactgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
5822144494 0 010919 756 968refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
5950188570 0 012427 772 1000refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025082320250415
6751338432 0 012283 772 1000compactgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2025082320250415

Compiler output


mult1280.c: mult1280.c:367:21: error: always_inline function '_mm256_add_epi16' requires target feature 'avx2', but would be inlined into function 'crypto_core_mult3sntrup1277_avx_constbranchindex' that is compiled without support for 'avx2'
mult1280.c:   367 |     x = add_x16(fgi,add_x16(fgip,fgip1));
mult1280.c:       |                     ^
mult1280.c: mult1280.c:13:17: note: expanded from macro 'add_x16'
mult1280.c:    13 | #define add_x16 _mm256_add_epi16
mult1280.c:       |                 ^
mult1280.c: mult1280.c:367:9: error: always_inline function '_mm256_add_epi16' requires target feature 'avx2', but would be inlined into function 'crypto_core_mult3sntrup1277_avx_constbranchindex' that is compiled without support for 'avx2'
mult1280.c:   367 |     x = add_x16(fgi,add_x16(fgip,fgip1));
mult1280.c:       |         ^
mult1280.c: mult1280.c:13:17: note: expanded from macro 'add_x16'
mult1280.c:    13 | #define add_x16 _mm256_add_epi16
mult1280.c:       |                 ^
mult1280.c: 2 errors generated.

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
avxclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
avxclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
avxclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
avxclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Compiler output


mult1280.c: mult1280.c:345:7: error: always_inline function '_mm256_set1_epi16' requires target feature 'avx', but would be inlined into function 'crypto_core_mult3sntrup1277_avx_constbranchindex' that is compiled without support for 'avx'
mult1280.c:   345 |   x = const_x16(0);
mult1280.c:       |       ^
mult1280.c: mult1280.c:12:19: note: expanded from macro 'const_x16'
mult1280.c:    12 | #define const_x16 _mm256_set1_epi16
mult1280.c:       |                   ^
mult1280.c: mult1280.c:345:7: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
mult1280.c: mult1280.c:12:19: note: expanded from macro 'const_x16'
mult1280.c:    12 | #define const_x16 _mm256_set1_epi16
mult1280.c:       |                   ^
mult1280.c: mult1280.c:346:36: error: always_inline function '_mm256_storeu_si256' requires target feature 'avx', but would be inlined into function 'crypto_core_mult3sntrup1277_avx_constbranchindex' that is compiled without support for 'avx'
mult1280.c:   346 |   for (i = p&~15;i < 1280;i += 16) store_x16(&f[i],x);
mult1280.c:       |                                    ^
mult1280.c: mult1280.c:11:24: note: expanded from macro 'store_x16'
mult1280.c:    11 | #define store_x16(p,v) _mm256_storeu_si256((int16x16 *) (p),(v))
mult1280.c:       |                        ^
mult1280.c: mult1280.c:346:36: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
mult1280.c: mult1280.c:11:24: note: expanded from macro 'store_x16'
mult1280.c:    11 | #define store_x16(p,v) _mm256_storeu_si256((int16x16 *) (p),(v))
mult1280.c:       |                        ^
mult1280.c: mult1280.c:347:36: error: always_inline function '_mm256_storeu_si256' requires target feature 'avx', but would be inlined into function 'crypto_core_mult3sntrup1277_avx_constbranchindex' that is compiled without support for 'avx'
mult1280.c:   347 |   for (i = p&~15;i < 1280;i += 16) store_x16(&g[i],x);
mult1280.c:       |                                    ^
mult1280.c: mult1280.c:11:24: note: expanded from macro 'store_x16'
mult1280.c:    11 | #define store_x16(p,v) _mm256_storeu_si256((int16x16 *) (p),(v))
mult1280.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
avxclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Compiler output


mult1280.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/14/include/immintrin.h:53,
mult1280.c:                  from mult1280.c:3:
mult1280.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h: In function 'squeeze_7681_x16':
mult1280.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:808:1: error: inlining failed in call to 'always_inline' '_mm256_sub_epi16': target specific option mismatch
mult1280.c:   808 | _mm256_sub_epi16 (__m256i __A, __m256i __B)
mult1280.c:       | ^~~~~~~~~~~~~~~~
mult1280.c: mult1280.c:14:17: note: called from here
mult1280.c:    14 | #define sub_x16 _mm256_sub_epi16
mult1280.c:       |                 ^
mult1280.c: mult1280.c:27:10: note: in expansion of macro 'sub_x16'
mult1280.c:    27 |   return sub_x16(x,mullo_x16(mulhrs_x16(x,const_x16(4)),const_x16(7681)));
mult1280.c:       |          ^~~~~~~
mult1280.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:553:1: error: inlining failed in call to 'always_inline' '_mm256_mullo_epi16': target specific option mismatch
mult1280.c:   553 | _mm256_mullo_epi16 (__m256i __A, __m256i __B)
mult1280.c:       | ^~~~~~~~~~~~~~~~~~
mult1280.c: mult1280.c:14:17: note: called from here
mult1280.c:    14 | #define sub_x16 _mm256_sub_epi16
mult1280.c:       |                 ^
mult1280.c: mult1280.c:27:10: note: in expansion of macro 'sub_x16'
mult1280.c:    27 |   return sub_x16(x,mullo_x16(mulhrs_x16(x,const_x16(4)),const_x16(7681)));
mult1280.c:       |          ^~~~~~~
mult1280.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:531:1: error: inlining failed in call to 'always_inline' '_mm256_mulhrs_epi16': target specific option mismatch
mult1280.c:   531 | _mm256_mulhrs_epi16 (__m256i __X, __m256i __Y)
mult1280.c:       | ^~~~~~~~~~~~~~~~~~~
mult1280.c: mult1280.c:14:17: note: called from here
mult1280.c: ...

Number of similar (implementation,compiler) pairs: 8, namely:
ImplementationCompiler
avxgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
avxgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
avxgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
avxgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
avx800gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
avx800gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
avx800gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
avx800gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)

Compiler output


mult1280.c: mult1280.c:367:21: error: always_inline function '_mm256_add_epi16' requires target feature 'avx2', but would be inlined into function 'crypto_core_mult3sntrup1277_avx800_constbranchindex' that is compiled without support for 'avx2'
mult1280.c:   367 |     x = add_x16(fgi,add_x16(fgip,fgip1));
mult1280.c:       |                     ^
mult1280.c: mult1280.c:13:17: note: expanded from macro 'add_x16'
mult1280.c:    13 | #define add_x16 _mm256_add_epi16
mult1280.c:       |                 ^
mult1280.c: mult1280.c:367:9: error: always_inline function '_mm256_add_epi16' requires target feature 'avx2', but would be inlined into function 'crypto_core_mult3sntrup1277_avx800_constbranchindex' that is compiled without support for 'avx2'
mult1280.c:   367 |     x = add_x16(fgi,add_x16(fgip,fgip1));
mult1280.c:       |         ^
mult1280.c: mult1280.c:13:17: note: expanded from macro 'add_x16'
mult1280.c:    13 | #define add_x16 _mm256_add_epi16
mult1280.c:       |                 ^
mult1280.c: 2 errors generated.

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
avx800clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
avx800clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
avx800clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
avx800clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Compiler output


mult1280.c: mult1280.c:345:7: error: always_inline function '_mm256_set1_epi16' requires target feature 'avx', but would be inlined into function 'crypto_core_mult3sntrup1277_avx800_constbranchindex' that is compiled without support for 'avx'
mult1280.c:   345 |   x = const_x16(0);
mult1280.c:       |       ^
mult1280.c: mult1280.c:12:19: note: expanded from macro 'const_x16'
mult1280.c:    12 | #define const_x16 _mm256_set1_epi16
mult1280.c:       |                   ^
mult1280.c: mult1280.c:345:7: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
mult1280.c: mult1280.c:12:19: note: expanded from macro 'const_x16'
mult1280.c:    12 | #define const_x16 _mm256_set1_epi16
mult1280.c:       |                   ^
mult1280.c: mult1280.c:346:36: error: always_inline function '_mm256_storeu_si256' requires target feature 'avx', but would be inlined into function 'crypto_core_mult3sntrup1277_avx800_constbranchindex' that is compiled without support for 'avx'
mult1280.c:   346 |   for (i = p&~15;i < 1280;i += 16) store_x16(&f[i],x);
mult1280.c:       |                                    ^
mult1280.c: mult1280.c:11:24: note: expanded from macro 'store_x16'
mult1280.c:    11 | #define store_x16(p,v) _mm256_storeu_si256((int16x16 *) (p),(v))
mult1280.c:       |                        ^
mult1280.c: mult1280.c:346:36: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
mult1280.c: mult1280.c:11:24: note: expanded from macro 'store_x16'
mult1280.c:    11 | #define store_x16(p,v) _mm256_storeu_si256((int16x16 *) (p),(v))
mult1280.c:       |                        ^
mult1280.c: mult1280.c:347:36: error: always_inline function '_mm256_storeu_si256' requires target feature 'avx', but would be inlined into function 'crypto_core_mult3sntrup1277_avx800_constbranchindex' that is compiled without support for 'avx'
mult1280.c:   347 |   for (i = p&~15;i < 1280;i += 16) store_x16(&g[i],x);
mult1280.c:       |                                    ^
mult1280.c: mult1280.c:11:24: note: expanded from macro 'store_x16'
mult1280.c:    11 | #define store_x16(p,v) _mm256_storeu_si256((int16x16 *) (p),(v))
mult1280.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
avx800clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Passed TIMECOP


TIMECOP iterations: 1

Number of similar (implementation,compiler) pairs: 18, namely:
ImplementationCompiler
compactclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
compactclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
compactclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
compactclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
compactclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
compactgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
compactgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
compactgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
compactgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)