Implementation notes: amd64, avx512imath, crypto_sign/rainbow1acyclicc363232

Computer: avx512imath
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20210125
Operation: crypto_sign
Primitive: rainbow1acyclicc363232
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3174912179608 8 0219054 932 1880T:avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
3246310147983 8 0187214 932 1880T:ssse3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
3308986107164 8 0165798 932 1880T:avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
338265091637 8 0150990 932 1880T:ssse3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
338841254287 8 0119174 924 1848T:ssse3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
3410059106662 8 0164710 932 1880T:avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
344765792503 8 0151134 932 1880T:ssse3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
3469171129751 0 0202782 924 1880T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
3518405215059 0 0287662 924 1880T:amd64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
355429564014 8 0128774 924 1848T:avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
365658387066 0 0157598 924 1880T:amd64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
368439688146 0 0158630 924 1880T:amd64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
379362756013 0 0126550 924 1880T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
380578858122 0 0128590 924 1880T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
406002732713 0 0102630 916 1848T:amd64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
432356129759 0 099550 916 1848T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125

Namespace violations

Implementation: T:amd64
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
blas_comm.o gf256v_is_zero T
blas_comm.o gf256v_set_zero T
blas_matrix.o gf16mat_inv_32x32 T
blas_matrix.o gf16mat_prod T
blas_matrix.o gf16mat_solve_linear_eq_32x32 T
blas_matrix.o gf256mat_inv_32x32 T
blas_matrix.o gf256mat_inv_36x36 T
blas_matrix.o gf256mat_prod T
blas_matrix.o gf256mat_solve_linear_eq_48x48 T
blas_matrix.o gf256mat_solve_linear_eq_64x64 T
blas_matrix_ref.o gf16mat_inv_32x32_ref T
blas_matrix_ref.o gf16mat_prod_ref T
blas_matrix_ref.o gf16mat_solve_linear_eq_32x32_ref T
blas_matrix_ref.o gf256mat_inv_32x32_ref T
blas_matrix_ref.o gf256mat_inv_36x36_ref T
blas_matrix_ref.o gf256mat_prod_ref T
blas_matrix_ref.o gf256mat_solve_linear_eq_48x48_ref T
blas_matrix_ref.o gf256mat_solve_linear_eq_64x64_ref T
parallel_matrix_op.o UpperTrianglize T
parallel_matrix_op.o batch_2trimat_madd_gf16 T
parallel_matrix_op.o batch_2trimat_madd_gf256 T
parallel_matrix_op.o batch_bmatTr_madd_gf16 T
parallel_matrix_op.o batch_bmatTr_madd_gf256 T
parallel_matrix_op.o batch_matTr_madd_gf16 T
parallel_matrix_op.o batch_matTr_madd_gf256 T
parallel_matrix_op.o batch_mat_madd_gf16 T
parallel_matrix_op.o batch_mat_madd_gf256 T
parallel_matrix_op.o batch_quad_recmat_eval_gf16 T
parallel_matrix_op.o batch_quad_recmat_eval_gf256 T
parallel_matrix_op.o batch_quad_trimat_eval_gf16 T
parallel_matrix_op.o batch_quad_trimat_eval_gf256 T
parallel_matrix_op.o batch_trimatTr_madd_gf16 T
parallel_matrix_op.o batch_trimatTr_madd_gf256 T
parallel_matrix_op.o batch_trimat_madd_gf16 T
parallel_matrix_op.o batch_trimat_madd_gf256 T
rainbow.o rainbow_sign T
rainbow.o rainbow_sign_cyclic T
rainbow.o rainbow_verify T
rainbow.o rainbow_verify_cyclic T
rainbow_keypair.o cpk_to_pk T
rainbow_keypair.o generate_compact_keypair_cyclic T
rainbow_keypair.o generate_keypair T
rainbow_keypair.o generate_keypair_cyclic T
rainbow_keypair.o generate_secretkey T
rainbow_keypair.o generate_secretkey_cyclic T
rainbow_keypair.o sk_to_pk T
rainbow_keypair_computation.o calculate_Q_from_F T
rainbow_keypair_computation.o calculate_Q_from_F_cyclic T
rainbow_keypair_computation.o crypto_core T
rainbow_keypair_computation.o extcpk_to_pk T
rainbow_publicmap.o rainbow_publicmap T
rainbow_publicmap.o rainbow_publicmap_cpk T
rng.o AES256_CTR_DRBG_Update T
rng.o AES256_ECB T
rng.o DRBG_ctx C
rng.o handleErrors T
rng.o randombytes_init T
rng.o randombytes_init_with_state T
rng.o randombytes_with_state T
rng.o seedexpander T
rng.o seedexpander_init T
utils.o byte_fdump T
utils.o byte_fget T
utils.o byte_from_binfile T
utils.o byte_from_file T
utils.o byte_read_file T
utils_hash.o hash_msg T
utils_prng.o prng_gen T
utils_prng.o prng_set T

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:amd64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:amd64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:amd64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:amd64
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref

Namespace violations

Implementation: T:avx2
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
blas_comm.o gf256v_is_zero T
blas_comm.o gf256v_set_zero T
blas_matrix.o gf16mat_inv_32x32 T
blas_matrix.o gf16mat_prod T
blas_matrix.o gf16mat_solve_linear_eq_32x32 T
blas_matrix.o gf256mat_inv_32x32 T
blas_matrix.o gf256mat_inv_36x36 T
blas_matrix.o gf256mat_prod T
blas_matrix.o gf256mat_solve_linear_eq_48x48 T
blas_matrix.o gf256mat_solve_linear_eq_64x64 T
blas_matrix_avx2.o gf16mat_inv_32x32_avx2 T
blas_matrix_avx2.o gf16mat_prod_16_multab_avx2 T
blas_matrix_avx2.o gf16mat_prod_avx2 T
blas_matrix_avx2.o gf16mat_prod_multab_avx2 T
blas_matrix_avx2.o gf16mat_solve_linear_eq_32x32_avx2 T
blas_matrix_avx2.o gf256mat_inv_32x32_avx2 T
blas_matrix_avx2.o gf256mat_inv_36x36_avx2 T
blas_matrix_avx2.o gf256mat_prod_avx2 T
blas_matrix_avx2.o gf256mat_prod_multab_avx2 T
blas_matrix_avx2.o gf256mat_solve_linear_eq_48x48_avx2 T
blas_matrix_avx2.o gf256mat_solve_linear_eq_64x64_avx2 T
blas_matrix_ref.o gf16mat_inv_32x32_ref T
blas_matrix_ref.o gf16mat_prod_ref T
blas_matrix_ref.o gf16mat_solve_linear_eq_32x32_ref T
blas_matrix_ref.o gf256mat_inv_32x32_ref T
blas_matrix_ref.o gf256mat_inv_36x36_ref T
blas_matrix_ref.o gf256mat_prod_ref T
blas_matrix_ref.o gf256mat_solve_linear_eq_48x48_ref T
blas_matrix_ref.o gf256mat_solve_linear_eq_64x64_ref T
blas_matrix_sse.o gf16mat_inv_32x32_sse T
blas_matrix_sse.o gf16mat_prod_16_sse T
blas_matrix_sse.o gf16mat_prod_add_multab_sse T
blas_matrix_sse.o gf16mat_prod_multab_sse T
blas_matrix_sse.o gf16mat_prod_sse T
blas_matrix_sse.o gf16mat_solve_linear_eq_32x32_sse T
blas_matrix_sse.o gf256mat_inv_32x32_sse T
blas_matrix_sse.o gf256mat_inv_36x36_sse T
blas_matrix_sse.o gf256mat_prod_add_multab_sse T
blas_matrix_sse.o gf256mat_prod_add_sse T
blas_matrix_sse.o gf256mat_prod_multab_sse T
blas_matrix_sse.o gf256mat_prod_sse T
blas_matrix_sse.o gf256mat_solve_linear_eq_48x48_sse T
blas_matrix_sse.o gf256mat_solve_linear_eq_64x64_sse T
gf16.o __gf16_exp R
gf16.o __gf16_inv R
gf16.o __gf16_log R
gf16.o __gf16_mul D
gf16.o __gf16_mulx2 R
gf16.o __gf16_squ R
gf16.o __gf16_squ_sl4 R
gf16.o __gf16_squ_x8 R
gf16.o __gf256_mul R
gf16.o __mask_0x55 R
gf16.o __mask_16 R
gf16.o __mask_low R
parallel_matrix_op.o UpperTrianglize T
parallel_matrix_op.o batch_2trimat_madd_gf16 T
parallel_matrix_op.o batch_2trimat_madd_gf256 T
parallel_matrix_op.o batch_bmatTr_madd_gf16 T
parallel_matrix_op.o batch_bmatTr_madd_gf256 T
parallel_matrix_op.o batch_matTr_madd_gf16 T
parallel_matrix_op.o batch_matTr_madd_gf256 T
parallel_matrix_op.o batch_mat_madd_gf16 T
parallel_matrix_op.o batch_mat_madd_gf256 T
parallel_matrix_op.o batch_quad_recmat_eval_gf16 T
parallel_matrix_op.o batch_quad_recmat_eval_gf256 T
parallel_matrix_op.o batch_quad_trimat_eval_gf16 T
parallel_matrix_op.o batch_quad_trimat_eval_gf256 T
parallel_matrix_op.o batch_trimatTr_madd_gf16 T
parallel_matrix_op.o batch_trimatTr_madd_gf256 T
parallel_matrix_op.o batch_trimat_madd_gf16 T
parallel_matrix_op.o batch_trimat_madd_gf256 T
parallel_matrix_op_avx2.o batch_2trimat_madd_multab_gf16_avx2 T
parallel_matrix_op_avx2.o batch_2trimat_madd_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_bmatTr_madd_multab_gf16_avx2 T
parallel_matrix_op_avx2.o batch_bmatTr_madd_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_matTr_madd_multab_gf16_avx2 T
parallel_matrix_op_avx2.o batch_matTr_madd_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_mat_madd_multab_gf16_avx2 T
parallel_matrix_op_avx2.o batch_mat_madd_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_quad_trimat_eval_multab_gf16_avx2 T
parallel_matrix_op_avx2.o batch_quad_trimat_eval_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_trimatTr_madd_multab_gf16_avx2 T
parallel_matrix_op_avx2.o batch_trimatTr_madd_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_trimat_madd_multab_gf16_avx2 T
parallel_matrix_op_avx2.o batch_trimat_madd_multab_gf256_avx2 T
rainbow_keypair.o cpk_to_pk T
rainbow_keypair.o generate_compact_keypair_cyclic T
rainbow_keypair.o generate_keypair T
rainbow_keypair.o generate_keypair_cyclic T
rainbow_keypair.o generate_secretkey T
rainbow_keypair.o generate_secretkey_cyclic T
rainbow_keypair.o sk_to_pk T
rainbow_keypair_computation.o calculate_Q_from_F T
rainbow_keypair_computation.o calculate_Q_from_F_cyclic T
rainbow_keypair_computation.o crypto_core T
rainbow_keypair_computation.o extcpk_to_pk T
rainbow_keypair_computation_simd.o calculate_F_from_Q_simd T
rainbow_keypair_computation_simd.o calculate_Q_from_F_cyclic_simd T
rainbow_keypair_computation_simd.o calculate_Q_from_F_simd T
rainbow_publicmap.o rainbow_publicmap T
rainbow_publicmap.o rainbow_publicmap_cpk T
rainbow_simd.o rainbow_sign T
rainbow_simd.o rainbow_sign_cyclic T
rainbow_simd.o rainbow_verify T
rainbow_simd.o rainbow_verify_cyclic T
rng.o AES256_CTR_DRBG_Update T
rng.o AES256_ECB T
rng.o DRBG_ctx C
rng.o handleErrors T
rng.o randombytes_init T
rng.o randombytes_init_with_state T
rng.o randombytes_with_state T
rng.o seedexpander T
rng.o seedexpander_init T
utils.o byte_fdump T
utils.o byte_fget T
utils.o byte_from_binfile T
utils.o byte_from_file T
utils.o byte_read_file T
utils_hash.o hash_msg T
utils_prng.o prng_gen T
utils_prng.o prng_set T

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:avx2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:avx2

Namespace violations

Implementation: T:ssse3
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
blas_comm.o gf256v_is_zero T
blas_comm.o gf256v_set_zero T
blas_matrix.o gf16mat_inv_32x32 T
blas_matrix.o gf16mat_prod T
blas_matrix.o gf16mat_solve_linear_eq_32x32 T
blas_matrix.o gf256mat_inv_32x32 T
blas_matrix.o gf256mat_inv_36x36 T
blas_matrix.o gf256mat_prod T
blas_matrix.o gf256mat_solve_linear_eq_48x48 T
blas_matrix.o gf256mat_solve_linear_eq_64x64 T
blas_matrix_ref.o gf16mat_inv_32x32_ref T
blas_matrix_ref.o gf16mat_prod_ref T
blas_matrix_ref.o gf16mat_solve_linear_eq_32x32_ref T
blas_matrix_ref.o gf256mat_inv_32x32_ref T
blas_matrix_ref.o gf256mat_inv_36x36_ref T
blas_matrix_ref.o gf256mat_prod_ref T
blas_matrix_ref.o gf256mat_solve_linear_eq_48x48_ref T
blas_matrix_ref.o gf256mat_solve_linear_eq_64x64_ref T
blas_matrix_sse.o gf16mat_inv_32x32_sse T
blas_matrix_sse.o gf16mat_prod_16_sse T
blas_matrix_sse.o gf16mat_prod_add_multab_sse T
blas_matrix_sse.o gf16mat_prod_multab_sse T
blas_matrix_sse.o gf16mat_prod_sse T
blas_matrix_sse.o gf16mat_solve_linear_eq_32x32_sse T
blas_matrix_sse.o gf256mat_inv_32x32_sse T
blas_matrix_sse.o gf256mat_inv_36x36_sse T
blas_matrix_sse.o gf256mat_prod_add_multab_sse T
blas_matrix_sse.o gf256mat_prod_add_sse T
blas_matrix_sse.o gf256mat_prod_multab_sse T
blas_matrix_sse.o gf256mat_prod_sse T
blas_matrix_sse.o gf256mat_solve_linear_eq_48x48_sse T
blas_matrix_sse.o gf256mat_solve_linear_eq_64x64_sse T
gf16.o __gf16_exp R
gf16.o __gf16_inv R
gf16.o __gf16_log R
gf16.o __gf16_mul D
gf16.o __gf16_mulx2 R
gf16.o __gf16_squ R
gf16.o __gf16_squ_sl4 R
gf16.o __gf16_squ_x8 R
gf16.o __gf256_mul R
gf16.o __mask_0x55 R
gf16.o __mask_16 R
gf16.o __mask_low R
parallel_matrix_op.o UpperTrianglize T
parallel_matrix_op.o batch_2trimat_madd_gf16 T
parallel_matrix_op.o batch_2trimat_madd_gf256 T
parallel_matrix_op.o batch_bmatTr_madd_gf16 T
parallel_matrix_op.o batch_bmatTr_madd_gf256 T
parallel_matrix_op.o batch_matTr_madd_gf16 T
parallel_matrix_op.o batch_matTr_madd_gf256 T
parallel_matrix_op.o batch_mat_madd_gf16 T
parallel_matrix_op.o batch_mat_madd_gf256 T
parallel_matrix_op.o batch_quad_recmat_eval_gf16 T
parallel_matrix_op.o batch_quad_recmat_eval_gf256 T
parallel_matrix_op.o batch_quad_trimat_eval_gf16 T
parallel_matrix_op.o batch_quad_trimat_eval_gf256 T
parallel_matrix_op.o batch_trimatTr_madd_gf16 T
parallel_matrix_op.o batch_trimatTr_madd_gf256 T
parallel_matrix_op.o batch_trimat_madd_gf16 T
parallel_matrix_op.o batch_trimat_madd_gf256 T
parallel_matrix_op_sse.o batch_2trimat_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_2trimat_madd_multab_gf256_sse T
parallel_matrix_op_sse.o batch_bmatTr_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_bmatTr_madd_multab_gf256_sse T
parallel_matrix_op_sse.o batch_matTr_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_matTr_madd_multab_gf256_sse T
parallel_matrix_op_sse.o batch_mat_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_mat_madd_multab_gf256_sse T
parallel_matrix_op_sse.o batch_quad_trimat_eval_multab_gf16_sse T
parallel_matrix_op_sse.o batch_quad_trimat_eval_multab_gf256_sse T
parallel_matrix_op_sse.o batch_trimatTr_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_trimatTr_madd_multab_gf256_sse T
parallel_matrix_op_sse.o batch_trimat_madd_multab_gf16_sse T
parallel_matrix_op_sse.o batch_trimat_madd_multab_gf256_sse T
rainbow_keypair.o cpk_to_pk T
rainbow_keypair.o generate_compact_keypair_cyclic T
rainbow_keypair.o generate_keypair T
rainbow_keypair.o generate_keypair_cyclic T
rainbow_keypair.o generate_secretkey T
rainbow_keypair.o generate_secretkey_cyclic T
rainbow_keypair.o sk_to_pk T
rainbow_keypair_computation.o calculate_Q_from_F T
rainbow_keypair_computation.o calculate_Q_from_F_cyclic T
rainbow_keypair_computation.o crypto_core T
rainbow_keypair_computation.o extcpk_to_pk T
rainbow_keypair_computation_simd.o calculate_F_from_Q_simd T
rainbow_keypair_computation_simd.o calculate_Q_from_F_cyclic_simd T
rainbow_keypair_computation_simd.o calculate_Q_from_F_simd T
rainbow_publicmap.o rainbow_publicmap T
rainbow_publicmap.o rainbow_publicmap_cpk T
rainbow_simd.o rainbow_sign T
rainbow_simd.o rainbow_sign_cyclic T
rainbow_simd.o rainbow_verify T
rainbow_simd.o rainbow_verify_cyclic T
rng.o AES256_CTR_DRBG_Update T
rng.o AES256_ECB T
rng.o DRBG_ctx C
rng.o handleErrors T
rng.o randombytes_init T
rng.o randombytes_init_with_state T
rng.o randombytes_with_state T
rng.o seedexpander T
rng.o seedexpander_init T
utils.o byte_fdump T
utils.o byte_fget T
utils.o byte_from_binfile T
utils.o byte_from_file T
utils.o byte_read_file T
utils_hash.o hash_msg T
utils_prng.o prng_gen T
utils_prng.o prng_set T

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ssse3
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ssse3
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ssse3
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ssse3