Implementation notes: amd64, avx512imath, crypto_sign/rainbow3cclassic683248

Computer: avx512imath
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20210125
Operation: crypto_sign
Primitive: rainbow3cclassic683248
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
474865197416 8 0242385 940 1880T:avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
523170111069 8 0174665 940 1880T:avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
538500111511 8 0175721 940 1880T:avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
597648168298 8 0213033 940 1880T:ssse3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
62750394726 8 0159649 940 1880T:ssse3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
64182565517 8 0135849 932 1848T:avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
67221596431 8 0160609 940 1880T:ssse3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
80618655699 8 0126153 932 1848T:ssse3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
1547946249534 0 0327553 932 1880T:amd64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
1732140155953 0 0234409 932 1880T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
314070990123 0 0166217 932 1880T:amd64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
339315994053 0 0170081 932 1880T:amd64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
549869758014 0 0134121 932 1880T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
564969334103 0 0109593 924 1848T:amd64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
622131061369 0 0137377 932 1880T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2021032320210125
1033438830624 0 0105985 924 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