Test results for amd64, hunsnivy, crypto_sign/rainbow1b

[Page version: 20241023 21:21:55]

Measurements for amd64, hunsnivy, crypto_sign Test results for amd64, hunsnivy, crypto_sign Test results for crypto_sign/rainbow1b
Computer: hunsnivy
Microarchitecture: amd64; Ivy Bridge+AES (306a9)
Architecture: amd64
CPU ID: GenuineIntel-000306a9-bfebfbff
SUPERCOP version: 20241022
Operation: crypto_sign
Primitive: rainbow1b
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
309188995799 0 1049652116884 916 1051384T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
309285095799 0 1049652116916 916 1051384T:portableclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
309649376762 0 104965296148 916 1051384T:portableclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
309991076762 0 104965296148 916 1051384T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
6803514126605 0 1049700146052 892 1051480T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
6805025126605 0 1049700146052 892 1051480T:portablegcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
743640046758 0 104965266956 916 1051384T:portableclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
746306046758 0 104965266940 916 1051384T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
778365029328 0 104970047532 892 1051480T:portablegcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
782835021854 0 104970040332 892 1051480T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
783858629328 0 104970047532 892 1051480T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
788931821854 0 104970040332 892 1051480T:portablegcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
822747518656 0 104965236242 908 1051384T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
823392518656 0 104965236242 908 1051384T:portableclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
950199213683 0 104965231978 908 1051384T:portableclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
950581513683 0 104965231978 908 1051384T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
103008599643 0 104970026925 892 1051480T:portablegcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024072520240716
103053289643 0 104970026893 892 1051480T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2024072520240716

Compiler output


rainbow.c: In file included from rainbow.c:4:
rainbow.c: In file included from ./rainbow.h:7:
rainbow.c: In file included from ./blas.h:17:
rainbow.c: ./blas_avx2.h:274:36: error: always_inline function '_mm256_maddubs_epi16' requires target feature 'avx2', but would be inlined into function 'gf31mat_prod_avx2' that is compiled without support for 'avx2'
rainbow.c:                         r[j] = _mm256_add_epi16( r[j] , _mm256_maddubs_epi16( tmp , bi ) );
rainbow.c:                                                         ^
rainbow.c: ./blas_avx2.h:274:11: error: always_inline function '_mm256_add_epi16' requires target feature 'avx2', but would be inlined into function 'gf31mat_prod_avx2' that is compiled without support for 'avx2'
rainbow.c:                         r[j] = _mm256_add_epi16( r[j] , _mm256_maddubs_epi16( tmp , bi ) );
rainbow.c:                                ^
rainbow.c: ./blas_avx2.h:287:10: error: always_inline function '_mm256_packs_epi16' requires target feature 'avx2', but would be inlined into function 'gf31mat_prod_avx2' that is compiled without support for 'avx2'
rainbow.c:                 r[j] = _mm256_packs_epi16( r[j*2] , r[j*2+1] );
rainbow.c:                        ^
rainbow.c: ./blas_avx2.h:288:10: error: '__builtin_ia32_permdi256' needs target feature avx2
rainbow.c:                 r[j] = _mm256_permute4x64_epi64( r[j] , 0xd8 ); //     3,1,2,0
rainbow.c:                        ^
rainbow.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/avx2intrin.h:818:12: note: expanded from macro '_mm256_permute4x64_epi64'
rainbow.c:   (__m256i)__builtin_ia32_permdi256((__v4di)(__m256i)(V), (int)(M))
rainbow.c:            ^
rainbow.c: In file included from rainbow.c:4:
rainbow.c: In file included from ./rainbow.h:7:
rainbow.c: In file included from ./blas.h:17:
rainbow.c: ./blas_avx2.h:112:36: error: always_inline function '_mm256_srli_epi16' requires target feature 'avx2', but would be inlined into function '_gf31v_reduce_u16_avx2' that is compiled without support for 'avx2'
rainbow.c:         return _mm256_add_epi16( a&mask , _mm256_srli_epi16(a,5) );
rainbow.c:                                           ^
rainbow.c: ./blas_avx2.h:112:9: error: always_inline function '_mm256_add_epi16' requires target feature 'avx2', but would be inlined into function '_gf31v_reduce_u16_avx2' that is compiled without support for 'avx2'
rainbow.c: ...

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

Compiler output


rainbow.c: In file included from rainbow.c:4:
rainbow.c: In file included from ./rainbow.h:7:
rainbow.c: In file included from ./blas.h:17:
rainbow.c: ./blas_avx2.h:265:39: error: always_inline function '_mm256_setzero_si256' requires target feature 'avx', but would be inlined into function 'gf31mat_prod_avx2' that is compiled without support for 'avx'
rainbow.c:         for(unsigned i=0;i<n_ymm;i++) r[i] = _mm256_setzero_si256();
rainbow.c:                                              ^
rainbow.c: ./blas_avx2.h:265:39: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
rainbow.c: ./blas_avx2.h:270:16: error: always_inline function '_mm256_set1_epi16' requires target feature 'avx', but would be inlined into function 'gf31mat_prod_avx2' that is compiled without support for 'avx'
rainbow.c:                 __m256i bi = _mm256_set1_epi16( b_u16[i] );
rainbow.c:                              ^
rainbow.c: ./blas_avx2.h:270:16: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
rainbow.c: ./blas_avx2.h:273:18: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'gf31mat_prod_avx2' that is compiled without support for 'avx'
rainbow.c:                         __m256i tmp = _mm256_loadu_si256( (__m256i*)(mat+j*32) );
rainbow.c:                                       ^
rainbow.c: ./blas_avx2.h:273:18: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
rainbow.c: ./blas_avx2.h:274:36: error: always_inline function '_mm256_maddubs_epi16' requires target feature 'avx2', but would be inlined into function 'gf31mat_prod_avx2' that is compiled without support for 'avx2'
rainbow.c:                         r[j] = _mm256_add_epi16( r[j] , _mm256_maddubs_epi16( tmp , bi ) );
rainbow.c:                                                         ^
rainbow.c: ./blas_avx2.h:274:36: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
rainbow.c: ./blas_avx2.h:274:11: error: always_inline function '_mm256_add_epi16' requires target feature 'avx2', but would be inlined into function 'gf31mat_prod_avx2' that is compiled without support for 'avx2'
rainbow.c:                         r[j] = _mm256_add_epi16( r[j] , _mm256_maddubs_epi16( tmp , bi ) );
rainbow.c:                                ^
rainbow.c: ./blas_avx2.h:274:11: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
rainbow.c: ./blas_avx2.h:282:10: warning: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI [-Wpsabi]
rainbow.c:                 r[j] = _gf31v_reduce_u16_avx2( r[j] );
rainbow.c: ...

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

Compiler output


rainbow.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:53,
rainbow.c:                  from blas_avx2.h:8,
rainbow.c:                  from blas.h:17,
rainbow.c:                  from rainbow.h:7,
rainbow.c:                  from rainbow.c:4:
rainbow.c: blas_avx2.h: In function '_gf31v_reduce_u16_avx2':
rainbow.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/avx2intrin.h:112:1: error: inlining failed in call to 'always_inline' '_mm256_add_epi16': target specific option mismatch
rainbow.c:   112 | _mm256_add_epi16 (__m256i __A, __m256i __B)
rainbow.c:       | ^~~~~~~~~~~~~~~~
rainbow.c: In file included from blas.h:17,
rainbow.c:                  from rainbow.h:7,
rainbow.c:                  from rainbow.c:4:
rainbow.c: blas_avx2.h:112:9: note: called from here
rainbow.c:   112 |  return _mm256_add_epi16( a&mask , _mm256_srli_epi16(a,5) );
rainbow.c:       |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rainbow.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:53,
rainbow.c:                  from blas_avx2.h:8,
rainbow.c:                  from blas.h:17,
rainbow.c:                  from rainbow.h:7,
rainbow.c:                  from rainbow.c:4:
rainbow.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/avx2intrin.h:759:1: error: inlining failed in call to 'always_inline' '_mm256_srli_epi16': target specific option mismatch
rainbow.c:   759 | _mm256_srli_epi16 (__m256i __A, int __B)
rainbow.c:       | ^~~~~~~~~~~~~~~~~
rainbow.c: In file included from blas.h:17,
rainbow.c:                  from rainbow.h:7,
rainbow.c: ...

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

Namespace violations


gf31_convert.o gf31_from_digest T
gf31_convert.o gf31_quick_pack T
gf31_convert.o gf31_quick_unpack T
gf31_convert.o gf31_sanity_check T
hash_utils.o sha2_chain T
hash_utils.o sha2_chain_byte T
hash_utils.o sha2_chain_file T
hash_utils.o sha2_chain_msg T
hash_utils.o sha2_file T
prng_utils.o prng_bytes T
prng_utils.o prng_dump T
prng_utils.o prng_dump_set T
prng_utils.o prng_expand_buffer T
prng_utils.o userrand_bytes T
prng_utils.o userrand_dump_generated T
prng_utils.o userrand_source_file T
rainbow.o rainbow_central_map T
rainbow.o rainbow_genkey T
rainbow.o rainbow_genkey_debug T
rainbow.o rainbow_ivs_central_map T
rainbow.o rainbow_pubmap_seckey T
rainbow.o rainbow_secmap T
rainbow.o rainbow_sign T
rainbow.o rainbow_verify T

Number of similar (implementation,compiler) pairs: 18, namely:
ImplementationCompiler
T:portableclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:portableclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:portableclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:portableclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:portableclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:portablegcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:portablegcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:portablegcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:portablegcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)