Test results for amd64, hydra7, crypto_sign/nccsign3

[Page version: 20240911 12:52:46]

Measurements for amd64, hydra7, crypto_sign Test results for amd64, hydra7, crypto_sign Test results for crypto_sign/nccsign3
Computer: hydra7
Microarchitecture: amd64; Sandy Bridge+AES (206a7)
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20240909
Operation: crypto_sign
Primitive: nccsign3
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
178828783119 4092 083413 4916 1792refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024091020240909
182916943385 4092 053467 4956 1728refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024091020240909
184158739022 4092 048899 4956 1728refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024091020240909
186281437728 4092 045675 4956 1728refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024091020240909
195971026868 4092 036467 4956 1728refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024091020240909
197066327176 4092 037213 4916 1792refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024091020240909
199166024520 4092 035165 4948 1728refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024091020240909
219301023656 4092 033637 4908 1760refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024091020240909
220537125547 4092 036069 4916 1792refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024091020240909

Compiler output


aes.c: aes.c:51:24: warning: unused function 'br_swap32' [-Wunused-function]
aes.c: static inline uint32_t br_swap32(uint32_t x)
aes.c:                        ^
aes.c: 1 warning generated.
poly.c: poly.c:948:8: error: always_inline function '_mm256_mul_epi32' requires target feature 'avx2', but would be inlined into function 'ntt_avx_4way' that is compiled without support for 'avx2'
poly.c:                 t1 = _mm256_mul_epi32(zetas1,Out[j+T_avx/2]);
poly.c:                      ^
poly.c: poly.c:949:12: error: always_inline function '_mm256_mul_epi32' requires target feature 'avx2', but would be inlined into function 'ntt_avx_4way' that is compiled without support for 'avx2'
poly.c:                 t1QINV = _mm256_mul_epi32(t1,QINVx4);
poly.c:                          ^
poly.c: poly.c:950:47: error: always_inline function '_mm256_mul_epi32' requires target feature 'avx2', but would be inlined into function 'ntt_avx_4way' that is compiled without support for 'avx2'
poly.c:                 t1 = _mm256_srli_epi64(_mm256_sub_epi64(t1, _mm256_mul_epi32(t1QINV, Qx4)),32);
poly.c:                                                             ^
poly.c: poly.c:950:26: error: always_inline function '_mm256_sub_epi64' requires target feature 'avx2', but would be inlined into function 'ntt_avx_4way' that is compiled without support for 'avx2'
poly.c:                 t1 = _mm256_srli_epi64(_mm256_sub_epi64(t1, _mm256_mul_epi32(t1QINV, Qx4)),32);
poly.c:                                        ^
poly.c: poly.c:950:8: error: always_inline function '_mm256_srli_epi64' requires target feature 'avx2', but would be inlined into function 'ntt_avx_4way' that is compiled without support for 'avx2'
poly.c:                 t1 = _mm256_srli_epi64(_mm256_sub_epi64(t1, _mm256_mul_epi32(t1QINV, Qx4)),32);
poly.c:                      ^
poly.c: poly.c:952:52: error: always_inline function '_mm256_sub_epi32' requires target feature 'avx2', but would be inlined into function 'ntt_avx_4way' that is compiled without support for 'avx2'
poly.c:                 Out[j+T_avx/2] = _mm256_add_epi32(Out[j+T_avx/2],_mm256_sub_epi32(Out[j],t1));
poly.c:                                                                  ^
poly.c: poly.c:952:20: error: always_inline function '_mm256_add_epi32' requires target feature 'avx2', but would be inlined into function 'ntt_avx_4way' that is compiled without support for 'avx2'
poly.c:                 Out[j+T_avx/2] = _mm256_add_epi32(Out[j+T_avx/2],_mm256_sub_epi32(Out[j],t1));
poly.c:                                  ^
poly.c: poly.c:953:12: error: always_inline function '_mm256_add_epi32' requires target feature 'avx2', but would be inlined into function 'ntt_avx_4way' that is compiled without support for 'avx2'
poly.c:                 Out[j] = _mm256_add_epi32(Out[j],t1);
poly.c:                          ^
poly.c: poly.c:964:10: error: always_inline function '_mm256_mul_epi32' requires target feature 'avx2', but would be inlined into function 'ntt_avx_4way' that is compiled without support for 'avx2'
poly.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
avx2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
avx2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
avx2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
avx2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


aes.c: aes.c:660:5: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aes.c:     BLOCK1(0x01);
aes.c:     ^
aes.c: aes.c:641:13: note: expanded from macro 'BLOCK1'
aes.c:     temp1 = _mm_aeskeygenassist_si128(temp2, IMM);                        \
aes.c:             ^
aes.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/__wmmintrin_aes.h:136:13: note: expanded from macro '_mm_aeskeygenassist_si128'
aes.c:   ((__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R)))
aes.c:             ^
aes.c: aes.c:661:5: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aes.c:     BLOCK2(0x01);
aes.c:     ^
aes.c: aes.c:651:13: note: expanded from macro 'BLOCK2'
aes.c:     temp1 = _mm_aeskeygenassist_si128(temp0, IMM);                        \
aes.c:             ^
aes.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/__wmmintrin_aes.h:136:13: note: expanded from macro '_mm_aeskeygenassist_si128'
aes.c:   ((__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R)))
aes.c:             ^
aes.c: aes.c:663:5: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aes.c:     BLOCK1(0x02);
aes.c:     ^
aes.c: aes.c:641:13: note: expanded from macro 'BLOCK1'
aes.c:     temp1 = _mm_aeskeygenassist_si128(temp2, IMM);                        \
aes.c:             ^
aes.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/__wmmintrin_aes.h:136:13: note: expanded from macro '_mm_aeskeygenassist_si128'
aes.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
avx2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


poly.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
poly.c:                  from params.h:5,
poly.c:                  from poly.c:4:
poly.c: poly.c: In function 'ntt_avx_4way':
poly.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:119:1: error: inlining failed in call to 'always_inline' '_mm256_add_epi32': target specific option mismatch
poly.c:   119 | _mm256_add_epi32 (__m256i __A, __m256i __B)
poly.c:       | ^~~~~~~~~~~~~~~~
poly.c: poly.c:953:26: note: called from here
poly.c:   953 |                 Out[j] = _mm256_add_epi32(Out[j],t1);
poly.c:       |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
poly.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
poly.c:                  from params.h:5,
poly.c:                  from poly.c:4:
poly.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:119:1: error: inlining failed in call to 'always_inline' '_mm256_add_epi32': target specific option mismatch
poly.c:   119 | _mm256_add_epi32 (__m256i __A, __m256i __B)
poly.c:       | ^~~~~~~~~~~~~~~~
poly.c: poly.c:952:34: note: called from here
poly.c:   952 |                 Out[j+T_avx/2] = _mm256_add_epi32(Out[j+T_avx/2],_mm256_sub_epi32(Out[j],t1));
poly.c:       |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poly.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
poly.c:                  from params.h:5,
poly.c:                  from poly.c:4:
poly.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:815:1: error: inlining failed in call to 'always_inline' '_mm256_sub_epi32': target specific option mismatch
poly.c:   815 | _mm256_sub_epi32 (__m256i __A, __m256i __B)
poly.c:       | ^~~~~~~~~~~~~~~~
poly.c: ...

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

Compiler output


poly.c: poly.c:946:16: warning: unused variable 't3' [-Wunused-variable]
poly.c:         int32_t t1,t2,t3;
poly.c:                       ^
poly.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


poly.c: poly.c: In function 'invntt_tomont':
poly.c: poly.c:946:23: warning: unused variable 't3' [-Wunused-variable]
poly.c:   946 |         int32_t t1,t2,t3;
poly.c:       |                       ^~

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

Namespace violations


aes.o aes128_ctr T
aes.o aes128_ctr_keyexp T
aes.o aes128_ctx_release T
aes.o aes128_ecb T
aes.o aes128_ecb_keyexp T
aes.o aes192_ctr T
aes.o aes192_ctr_keyexp T
aes.o aes192_ctx_release T
aes.o aes192_ecb T
aes.o aes192_ecb_keyexp T
aes.o aes256_ctr T
aes.o aes256_ctr_keyexp T
aes.o aes256_ctx_release T
aes.o aes256_ecb T
aes.o aes256_ecb_keyexp T
aes.o aes256ctr_init T
aes.o aes256ctr_prf T
aes.o aes256ctr_squeezeblocks T
fips202.o sha3_256 T
fips202.o sha3_512 T
fips202.o shake128 T
fips202.o shake128_absorb T
fips202.o shake128_finalize T
fips202.o shake128_init T
fips202.o shake128_squeeze T
fips202.o shake128_squeezeblocks T
fips202.o shake256 T
fips202.o shake256_absorb T
fips202.o shake256_finalize T
fips202.o shake256_init T
fips202.o shake256_squeeze T
fips202.o shake256_squeezeblocks T
packing.o pack_pk T
packing.o pack_sig T
packing.o pack_sk T
packing.o polyeta_pack T
packing.o polyeta_unpack T
packing.o polyt0_pack T
packing.o polyt0_unpack T
packing.o polyt1_pack T
packing.o polyt1_unpack T
packing.o polyw1_pack T
packing.o polyz_pack T
packing.o polyz_unpack T
packing.o unpack_pk T
packing.o unpack_sig T
packing.o unpack_sk T
poly.o base_mul T
poly.o invntt_tomont T
poly.o ntt T
poly.o pointwise_mul T
poly.o poly_add T
poly.o poly_base_mul T
poly.o poly_caddq T
poly.o poly_challenge T
poly.o poly_chknorm T
poly.o poly_decompose T
poly.o poly_make_hint T
poly.o poly_modadd T
poly.o poly_modsub T
poly.o poly_mul_schoolbook T
poly.o poly_power2round T
poly.o poly_reduce T
poly.o poly_shiftl T
poly.o poly_sub T
poly.o poly_uniform T
poly.o poly_uniform_eta T
poly.o poly_uniform_gamma1 T
poly.o poly_use_hint T
poly.o reduce_modQ T
poly.o zetas D
poly.o zetas_inv D
reduce.o caddq T
reduce.o csubq T
reduce.o freeze T
reduce.o mod_add T
reduce.o mod_sub T
reduce.o montgomery_reduce T
reduce.o reduce32 T
rounding.o decompose T
rounding.o make_hint T
rounding.o power2round T
rounding.o use_hint T
sign.o crypto_sign_signature T
sign.o crypto_sign_verify T
symmetric-aes.o NIMS_aes256ctr_init T
symmetric-shake.o NIMS_shake128_stream_init T
symmetric-shake.o NIMS_shake256_stream_init T

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Passed TIMECOP


TIMECOP iterations: 10

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)