Implementation notes: amd64, rome0, crypto_sign/mqsignlr25614896

Computer: rome0
Microarchitecture: amd64; Zen 2 (830f10)
Architecture: amd64
CPU ID: AuthenticAMD-00830f10-178bfbff
SUPERCOP version: 20240716
Operation: crypto_sign
Primitive: mqsignlr25614896
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
607871161116 8 524372181558 860 526168T:avx2gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
65882096799 8 524356117339 900 526104T:avx2clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
675917107581 8 524356127915 900 526104T:avx2clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
70898075032 8 52437293966 860 526168T:avx2gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
73274483792 8 524356101953 892 526104T:avx2clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
75577070297 8 52437289302 860 526168T:avx2gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
98029250270 8 52437268665 860 526136T:avx2gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
147633564293 8 52435683265 892 526104T:avx2clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
5809538126289 0 524356147233 892 526104refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
5901532124677 0 524356145401 892 526104refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
8747851138838 0 524356158457 892 526104refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
29689685129835 0 524372151500 852 526168refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
3200834892966 0 524356110567 884 526104refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
3252845751621 0 52437271684 852 526168refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
3274138548994 0 52437268660 852 526168refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
4694305631959 0 52437250895 852 526136refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716
12286400339138 0 52435658991 884 526104refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071620240716

Compiler output


blas_matrix_ref.c: blas_matrix_ref.c:17:6: warning: unused function 'gf256mat_submat' [-Wunused-function]
blas_matrix_ref.c: void gf256mat_submat(uint8_t* mat2, unsigned w2, unsigned st, const uint8_t* mat, unsigned w, unsigned h)
blas_matrix_ref.c:      ^
blas_matrix_ref.c: 1 warning generated.
mqs_simd.c: mqs_simd.c:23:6: warning: unused function 'transpose' [-Wunused-function]
mqs_simd.c: void transpose(uint8_t * r, const uint8_t * a)
mqs_simd.c:      ^
mqs_simd.c: 1 warning generated.
rng.c: rng.c:130:23: warning: explicitly assigning value of variable of type 'int' to itself [-Wself-assign]
rng.c:     security_strength = security_strength;      // dummy for suppress compile warning
rng.c:     ~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~
rng.c: 1 warning generated.

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


aes.c: aes.c:44:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aes.c:     temp2 = _mm_aeskeygenassist_si128 (temp3,0x01);
aes.c:             ^
aes.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_aes.h:136:12: note: expanded from macro '_mm_aeskeygenassist_si128'
aes.c:   (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
aes.c:            ^
aes.c: aes.c:50:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aes.c:     temp2 = _mm_aeskeygenassist_si128 (temp3,0x02);
aes.c:             ^
aes.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_aes.h:136:12: note: expanded from macro '_mm_aeskeygenassist_si128'
aes.c:   (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
aes.c:            ^
aes.c: aes.c:56:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aes.c:     temp2 = _mm_aeskeygenassist_si128 (temp3,0x04);
aes.c:             ^
aes.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_aes.h:136:12: note: expanded from macro '_mm_aeskeygenassist_si128'
aes.c:   (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
aes.c:            ^
aes.c: aes.c:62:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aes.c:     temp2 = _mm_aeskeygenassist_si128 (temp3,0x08);
aes.c:             ^
aes.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_aes.h:136:12: note: expanded from macro '_mm_aeskeygenassist_si128'
aes.c:   (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
aes.c:            ^
aes.c: aes.c:68:13: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aes.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


mqs.c: mqs.c:22:6: warning: unused function 'transpose' [-Wunused-function]
mqs.c: void transpose(uint8_t * r, const uint8_t * a)
mqs.c:      ^
mqs.c: 1 warning generated.
rng.c: rng.c:134:23: warning: explicitly assigning value of variable of type 'int' to itself [-Wself-assign]
rng.c:     security_strength = security_strength;      // dummy for suppress compile warning
rng.c:     ~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~
rng.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 (Debian_Clang_11.0.1)
refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Namespace violations


aes.o AES_256_Key_Expansion T
aes.o AES_ECB_encrypt T
blas_comm.o gf256v_is_zero T
blas_comm.o gf256v_set_zero T
blas_matrix.o gf256mat_back_substitute T
blas_matrix.o gf256mat_gaussian_elim T
blas_matrix.o gf256mat_inv T
blas_matrix.o gf256mat_mul T
blas_matrix.o gf256mat_mul_circ T
blas_matrix.o gf256mat_prod T
blas_matrix.o gf256mat_prod_circ T
blas_matrix.o gf256mat_solve_linear_eq T
blas_matrix.o gf256mat_solve_linear_eq_proto T
blas_matrix_avx2.o _get_oil_avx T
blas_matrix_avx2.o degree_check T
blas_matrix_avx2.o gf256mat_back_substitute_avx2 T
blas_matrix_avx2.o gf256mat_gaussian_elim_avx2 T
blas_matrix_avx2.o gf256mat_inv_avx2 T
blas_matrix_avx2.o gf256mat_inv_circ_avx2 T
blas_matrix_avx2.o gf256mat_mul_avx2 T
blas_matrix_avx2.o gf256mat_mul_circ_avx2 T
blas_matrix_avx2.o gf256mat_prod_avx2 T
blas_matrix_avx2.o gf256mat_prod_circ_avx2 T
blas_matrix_avx2.o gf256mat_prod_multab_avx2 T
blas_matrix_avx2.o gf256mat_prod_multab_sparse_ov_avx2 T
blas_matrix_avx2.o gf256mat_solve_linear_CORE T
blas_matrix_avx2.o gf256mat_solve_linear_eq_avx2 T
blas_matrix_avx2.o gf256mat_solve_linear_eq_avx2_circA T
blas_matrix_avx2.o gf256mat_solve_linear_eq_avx2_modify T
blas_matrix_avx2.o gf256poly_euclidean_avx2 T
blas_matrix_avx2.o gf256poly_mult_avx2 T
blas_matrix_ref.o gf256mat_prod_ref 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
fips202.o KeccakF_RoundConstants R
fips202.o sha3_256 T
fips202.o sha3_512 T
fips202.o shake128 T
fips202.o shake128_absorb T
fips202.o shake128_absorb_once 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_absorb_once T
fips202.o shake256_finalize T
fips202.o shake256_init T
fips202.o shake256_squeeze T
fips202.o shake256_squeezeblocks 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
mqs_keypair.o generate_keypair_mqlr T
mqs_keypair_computation.o cal_ext_pk_mqlr T
mqs_keypair_computation.o extpk_to_pk T
mqs_keypair_computation_simd.o cal_ext_pk_mqlr_simd T
mqs_simd.o mqlr_sign T
mqs_simd.o mqlr_verify T
parallel_matrix_op.o UpperTrianglize T
parallel_matrix_op.o UpperTrianglize_circ T
parallel_matrix_op.o batch_2trimat_madd_gf256 T
parallel_matrix_op.o batch_bmatTr_madd_gf256 T
parallel_matrix_op.o batch_matTr_madd_gf256 T
parallel_matrix_op.o batch_mat_madd_gf256 T
parallel_matrix_op.o batch_quad_recmat_eval_gf256 T
parallel_matrix_op.o batch_quad_trimat_eval_gf256 T
parallel_matrix_op.o batch_trimatTr_madd_gf256 T
parallel_matrix_op.o batch_trimat_madd_gf256 T
parallel_matrix_op.o expand_sparmat_vo T
parallel_matrix_op.o expand_sparmat_vv T
parallel_matrix_op_avx2.o batch_2trimat_madd_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_bmatTr_madd_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_matTr_madd_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_mat_madd_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_quad_trimat_eval_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_trimatTr_madd_multab_gf256_avx2 T
parallel_matrix_op_avx2.o batch_trimat_madd_multab_gf256_avx2 T
parallel_matrix_op_avx2.o circmat_eval_multab_avx2 T
parallel_matrix_op_avx2.o sparmat_gen_linear_multab_avx2 T
parallel_matrix_op_avx2.o sparmat_vv_eval_multab_avx2 T
rng.o AES256_CTR_DRBG_Update T
rng.o AES256_ECB T
rng.o DRBG_ctx B
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
rng.o unused_randombytes T
sign.o seeded_sign T
sign.o seeded_sign_keypair T
sign.o unused_sign_open 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_dump T
utils_prng.o prng_dump_set T
utils_prng.o prng_expand_buffer T
utils_prng.o prng_gen T
utils_prng.o prng_set T
utils_prng.o userrand_dump_generated T
utils_prng.o userrand_source_file T

Number of similar (implementation,compiler) pairs: 8, 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)
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


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
blas_comm.o gf256v_is_zero T
blas_comm.o gf256v_set_zero T
blas_matrix.o gf256mat_back_substitute T
blas_matrix.o gf256mat_gaussian_elim T
blas_matrix.o gf256mat_inv T
blas_matrix.o gf256mat_mul T
blas_matrix.o gf256mat_mul_circ T
blas_matrix.o gf256mat_prod T
blas_matrix.o gf256mat_prod_circ T
blas_matrix.o gf256mat_solve_linear_eq T
blas_matrix.o gf256mat_solve_linear_eq_proto T
blas_matrix_ref.o degree_check T
blas_matrix_ref.o gf256mat_back_substitute_ref T
blas_matrix_ref.o gf256mat_gaussian_elim_ref T
blas_matrix_ref.o gf256mat_inv_circ_ref T
blas_matrix_ref.o gf256mat_inv_ref T
blas_matrix_ref.o gf256mat_mul_circ_ref T
blas_matrix_ref.o gf256mat_mul_ref T
blas_matrix_ref.o gf256mat_prod_circ_ref T
blas_matrix_ref.o gf256mat_prod_ref T
blas_matrix_ref.o gf256mat_solve_linear_CORE_ref T
blas_matrix_ref.o gf256mat_solve_linear_eq_ref T
blas_matrix_ref.o gf256mat_solve_linear_eq_ref_circA T
blas_matrix_ref.o gf256mat_solve_linear_eq_ref_modify T
blas_matrix_ref.o gf256mat_submat T
blas_matrix_ref.o gf256poly_euclidean_ref T
blas_matrix_ref.o gf256poly_mult_ref T
fips202.o KeccakF_RoundConstants R
fips202.o sha3_256 T
fips202.o sha3_512 T
fips202.o shake128 T
fips202.o shake128_absorb T
fips202.o shake128_absorb_once 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_absorb_once T
fips202.o shake256_finalize T
fips202.o shake256_init T
fips202.o shake256_squeeze T
fips202.o shake256_squeezeblocks T
mqs.o mqlr_sign T
mqs.o mqlr_verify T
mqs_keypair.o generate_keypair_mqlr T
mqs_keypair_computation.o cal_ext_pk_mqlr T
mqs_keypair_computation.o cal_ext_pk_mqlr_ref T
mqs_keypair_computation.o extpk_to_pk T
parallel_matrix_op.o UpperTrianglize T
parallel_matrix_op.o UpperTrianglize_circ T
parallel_matrix_op.o batch_2trimat_madd_gf256 T
parallel_matrix_op.o batch_bmatTr_madd_gf256 T
parallel_matrix_op.o batch_matTr_madd_gf256 T
parallel_matrix_op.o batch_mat_madd_gf256 T
parallel_matrix_op.o batch_quad_recmat_eval_gf256 T
parallel_matrix_op.o batch_quad_trimat_eval_gf256 T
parallel_matrix_op.o batch_trimatTr_madd_gf256 T
parallel_matrix_op.o batch_trimat_madd_gf256 T
parallel_matrix_op.o circmat_eval T
parallel_matrix_op.o expand_sparmat_vo T
parallel_matrix_op.o expand_sparmat_vv T
parallel_matrix_op.o sparmat_gen_linear T
parallel_matrix_op.o sparmat_vv_eval T
rng.o AES256_CTR_DRBG_Update T
rng.o AES256_ECB T
rng.o DRBG_ctx B
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
rng.o unused_randombytes T
sign.o seeded_sign T
sign.o seeded_sign_keypair T
sign.o unused_sign_open 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_dump T
utils_prng.o prng_dump_set T
utils_prng.o prng_expand_buffer T
utils_prng.o prng_gen T
utils_prng.o prng_set T
utils_prng.o userrand_dump_generated T
utils_prng.o userrand_source_file T

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

TIMECOP error (can be valgrind bug)


error 142
Alarm clock

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

Passed TIMECOP


TIMECOP iterations: 10

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