Implementation notes: amd64, hertz, crypto_kem/sikep434comp

Computer: hertz
Microarchitecture: amd64; Zen 4 (a60f12)
Architecture: amd64
CPU ID: AuthenticAMD-00a60f12-178bfbff
SUPERCOP version: 20240716
Operation: crypto_kem
Primitive: sikep434comp
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
24889932436473 0 8468706 844 1832T:mulxadxclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
24931432448145 0 8480498 844 1832T:mulxadxclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
25213976372803 0 8399563 836 1832T:mulxadxclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
25294352427050 0 8455924 820 1864T:mulxadxgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
25575821382882 0 8409644 820 1832T:mulxadxgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
26859229348592 0 8373732 812 1800T:mulxadxgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
28252653447756 0 8480114 844 1832T:mulxclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
28365049436084 0 8468322 844 1832T:mulxclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
28661719426661 0 8455540 820 1864T:mulxgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
28863115372414 0 8399179 836 1832T:mulxclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
29024001382493 0 8409260 820 1832T:mulxgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
30015753348203 0 8373348 812 1800T:mulxgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
193264995436778 0 8469089 844 1832T:amd64clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
194318411453234 0 8485665 844 1832T:amd64clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
203537966376737 0 8403507 836 1832T:amd64clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
207613105444246 0 8473100 820 1864T:amd64gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
226688735381144 0 8407924 820 1832T:amd64gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
417227435347882 0 8373052 812 1800T:amd64gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716

Compiler output


fp_x64_asm.S: fp_x64_asm.S:635:3: error: "CONFIGURATION NOT SUPPORTED. TRY USE_MULX=TRUE"
fp_x64_asm.S:   635 | # error "CONFIGURATION NOT SUPPORTED. TRY USE_MULX=TRUE"
fp_x64_asm.S:       |   ^
fp_x64_asm.S: fp_x64_asm.S:826:5: error: "CONFIGURATION NOT SUPPORTED. TRY USE_MULX=TRUE"
fp_x64_asm.S:   826 |   # error "CONFIGURATION NOT SUPPORTED. TRY USE_MULX=TRUE"
fp_x64_asm.S:       |     ^
fp_x64_asm.S: 2 errors generated.

Number of similar (implementation,compiler) pairs: 3, namely:
ImplementationCompiler
T:amd64asmclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:amd64asmclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:amd64asmclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))

Compiler output


fp_x64_asm.S: fp_x64_asm.S:635:3: error: #error "CONFIGURATION NOT SUPPORTED. TRY USE_MULX=TRUE"
fp_x64_asm.S:   635 | # error "CONFIGURATION NOT SUPPORTED. TRY USE_MULX=TRUE"
fp_x64_asm.S:       |   ^~~~~
fp_x64_asm.S: fp_x64_asm.S:826:5: error: #error "CONFIGURATION NOT SUPPORTED. TRY USE_MULX=TRUE"
fp_x64_asm.S:   826 |   # error "CONFIGURATION NOT SUPPORTED. TRY USE_MULX=TRUE"
fp_x64_asm.S:       |     ^~~~~

Number of similar (implementation,compiler) pairs: 3, namely:
ImplementationCompiler
T:amd64asmgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:amd64asmgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:amd64asmgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)

Namespace violations


P434_compressed.o A_basis_zero R
P434_compressed.o A_gen R
P434_compressed.o Alice_order R
P434_compressed.o B_basis_zero R
P434_compressed.o B_gen R
P434_compressed.o B_gen_3_tors R
P434_compressed.o Bob_order R
P434_compressed.o CompleteMPoint T
P434_compressed.o Double T
P434_compressed.o EphemeralKeyGeneration_A_SIDHp434_Compressed T
P434_compressed.o EphemeralKeyGeneration_B_SIDHp434_Compressed T
P434_compressed.o EphemeralSecretAgreement_A_SIDHp434_Compressed T
P434_compressed.o EphemeralSecretAgreement_B_SIDHp434_Compressed T
P434_compressed.o FormatPrivKey_B T
P434_compressed.o Ladder T
P434_compressed.o Montgomery_R2 R
P434_compressed.o Montgomery_RB1 R
P434_compressed.o Montgomery_RB2 R
P434_compressed.o Montgomery_inversion_mod_order_bingcd T
P434_compressed.o Montgomery_multiply_mod_order T
P434_compressed.o Montgomery_neg T
P434_compressed.o Montgomery_one R
P434_compressed.o T_tate2_P R
P434_compressed.o T_tate2_Q R
P434_compressed.o T_tate2_firststep_P R
P434_compressed.o T_tate2_firststep_Q R
P434_compressed.o T_tate3 R
P434_compressed.o Tate2_pairings T
P434_compressed.o Tate3_pairings T
P434_compressed.o Traverse_w_div_e_fullsigned T
P434_compressed.o Traverse_w_div_e_torus T
P434_compressed.o Traverse_w_notdiv_e_fullsigned T
P434_compressed.o U3 R
P434_compressed.o XQB3 R
P434_compressed.o clear_words T
P434_compressed.o cmp_f2elm T
P434_compressed.o copy_words T
P434_compressed.o ct_cmov T
P434_compressed.o ct_compare T
P434_compressed.o cube_Fp2_cycl T
P434_compressed.o eval_3_isog T
P434_compressed.o eval_4_isog T
P434_compressed.o fp2_conj T
P434_compressed.o fp2add434 T
P434_compressed.o fp2copy434 T
P434_compressed.o fp2correction434 T
P434_compressed.o fp2div2_434 T
P434_compressed.o fp2inv434_mont T
P434_compressed.o fp2inv434_mont_bingcd T
P434_compressed.o fp2mul434_mont T
P434_compressed.o fp2neg434 T
P434_compressed.o fp2shl T
P434_compressed.o fp2sqr434_mont T
P434_compressed.o fp2sub434 T
P434_compressed.o fp2zero434 T
P434_compressed.o fpcopy434 T
P434_compressed.o fpinv434_chain_mont T
P434_compressed.o fpinv434_mont T
P434_compressed.o fpinv434_mont_bingcd T
P434_compressed.o fpmul434_mont T
P434_compressed.o fpsqr434_mont T
P434_compressed.o fpzero434 T
P434_compressed.o from_Montgomery_mod_order T
P434_compressed.o from_base T
P434_compressed.o from_fp2mont T
P434_compressed.o from_mont T
P434_compressed.o fromproj T
P434_compressed.o g_R_S_im R
P434_compressed.o g_phiR_phiS_im R
P434_compressed.o g_phiR_phiS_re R
P434_compressed.o get_3_isog T
P434_compressed.o get_4_isog T
P434_compressed.o get_A T
P434_compressed.o highest_2t T
P434_compressed.o highest_t T
P434_compressed.o inv_3_way T
P434_compressed.o inv_Fp2_cycl_proj T
P434_compressed.o inv_mod_orderA T
P434_compressed.o is_sqr_fp2 T
P434_compressed.o j_inv T
P434_compressed.o mod T
P434_compressed.o mod3 T
P434_compressed.o mont_n_way_inv T
P434_compressed.o mp_add T
P434_compressed.o mp_shiftl1 T
P434_compressed.o mp_shiftleft T
P434_compressed.o mp_shiftr1 T
P434_compressed.o mp_sub T
P434_compressed.o mul3 T
P434_compressed.o mulmixed_montproj T
P434_compressed.o multiply T
P434_compressed.o ord2w_dlog T
P434_compressed.o ord2w_dloghyb T
P434_compressed.o p434 R
P434_compressed.o p434p1 R
P434_compressed.o p434x16p R
P434_compressed.o p434x2 R
P434_compressed.o p434x4 R
P434_compressed.o ph2_CT R
P434_compressed.o ph2_G R
P434_compressed.o ph2_Log R
P434_compressed.o ph2_Texp R
P434_compressed.o ph2_path R
P434_compressed.o ph3_T B
P434_compressed.o ph3_T1 R
P434_compressed.o ph3_T2 R
P434_compressed.o ph3_path R
P434_compressed.o random_mod_order_A_SIDHp434 T
P434_compressed.o random_mod_order_B_SIDHp434 T
P434_compressed.o recover_os T
P434_compressed.o reverse_bits T
P434_compressed.o solve_dlog T
P434_compressed.o sqr_Fp2_cycl T
P434_compressed.o sqr_Fp2_cycl_proj T
P434_compressed.o sqrt_Fp2 T
P434_compressed.o strat_Alice R
P434_compressed.o strat_Bob R
P434_compressed.o table_r_qnr R
P434_compressed.o table_r_qr R
P434_compressed.o table_v_qnr R
P434_compressed.o table_v_qr R
P434_compressed.o threeinv R
P434_compressed.o to_Montgomery_mod_order T
P434_compressed.o to_fp2mont T
P434_compressed.o to_mont T
P434_compressed.o toproj T
P434_compressed.o u_entang R
P434_compressed.o v_3_torsion R
P434_compressed.o validate_ciphertext T
P434_compressed.o xDBL T
P434_compressed.o xDBLADD T
P434_compressed.o xDBL_e T
P434_compressed.o xDBLe T
P434_compressed.o xTPL T
P434_compressed.o xTPL_fast T
P434_compressed.o xTPLe T
P434_compressed.o xTPLe_fast T
fips202.o KeccakF1600_StatePermute T
fips202.o shake128 T
fips202.o shake128_absorb T
fips202.o shake128_squeezeblocks T
fips202.o shake256 T
fips202.o shake256_absorb T
fips202.o shake256_squeezeblocks T
fp_generic.o digit_x_digit T
fp_generic.o fpadd434 T
fp_generic.o fpcorrection434 T
fp_generic.o fpdiv2_434 T
fp_generic.o fpneg434 T
fp_generic.o fpsub434 T
fp_generic.o mp_mul T
fp_generic.o mp_sub434_p2 T
fp_generic.o mp_sub434_p4 T
fp_generic.o rdc_mont T

Number of similar (implementation,compiler) pairs: 6, namely:
ImplementationCompiler
T:amd64clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:amd64clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:amd64clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:amd64gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:amd64gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:amd64gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)

Namespace violations


P434_compressed.o A_basis_zero R
P434_compressed.o A_gen R
P434_compressed.o Alice_order R
P434_compressed.o B_basis_zero R
P434_compressed.o B_gen R
P434_compressed.o B_gen_3_tors R
P434_compressed.o Bob_order R
P434_compressed.o CompleteMPoint T
P434_compressed.o Double T
P434_compressed.o EphemeralKeyGeneration_A_SIDHp434_Compressed T
P434_compressed.o EphemeralKeyGeneration_B_SIDHp434_Compressed T
P434_compressed.o EphemeralSecretAgreement_A_SIDHp434_Compressed T
P434_compressed.o EphemeralSecretAgreement_B_SIDHp434_Compressed T
P434_compressed.o FormatPrivKey_B T
P434_compressed.o Ladder T
P434_compressed.o Montgomery_R2 R
P434_compressed.o Montgomery_RB1 R
P434_compressed.o Montgomery_RB2 R
P434_compressed.o Montgomery_inversion_mod_order_bingcd T
P434_compressed.o Montgomery_multiply_mod_order T
P434_compressed.o Montgomery_neg T
P434_compressed.o Montgomery_one R
P434_compressed.o T_tate2_P R
P434_compressed.o T_tate2_Q R
P434_compressed.o T_tate2_firststep_P R
P434_compressed.o T_tate2_firststep_Q R
P434_compressed.o T_tate3 R
P434_compressed.o Tate2_pairings T
P434_compressed.o Tate3_pairings T
P434_compressed.o Traverse_w_div_e_fullsigned T
P434_compressed.o Traverse_w_div_e_torus T
P434_compressed.o Traverse_w_notdiv_e_fullsigned T
P434_compressed.o U3 R
P434_compressed.o XQB3 R
P434_compressed.o clear_words T
P434_compressed.o cmp_f2elm T
P434_compressed.o copy_words T
P434_compressed.o ct_cmov T
P434_compressed.o ct_compare T
P434_compressed.o cube_Fp2_cycl T
P434_compressed.o eval_3_isog T
P434_compressed.o eval_4_isog T
P434_compressed.o fp2_conj T
P434_compressed.o fp2add434 T
P434_compressed.o fp2copy434 T
P434_compressed.o fp2correction434 T
P434_compressed.o fp2div2_434 T
P434_compressed.o fp2inv434_mont T
P434_compressed.o fp2inv434_mont_bingcd T
P434_compressed.o fp2mul434_mont T
P434_compressed.o fp2neg434 T
P434_compressed.o fp2shl T
P434_compressed.o fp2sqr434_mont T
P434_compressed.o fp2sub434 T
P434_compressed.o fp2zero434 T
P434_compressed.o fpcopy434 T
P434_compressed.o fpinv434_chain_mont T
P434_compressed.o fpinv434_mont T
P434_compressed.o fpinv434_mont_bingcd T
P434_compressed.o fpmul434_mont T
P434_compressed.o fpsqr434_mont T
P434_compressed.o fpzero434 T
P434_compressed.o from_Montgomery_mod_order T
P434_compressed.o from_base T
P434_compressed.o from_fp2mont T
P434_compressed.o from_mont T
P434_compressed.o fromproj T
P434_compressed.o g_R_S_im R
P434_compressed.o g_phiR_phiS_im R
P434_compressed.o g_phiR_phiS_re R
P434_compressed.o get_3_isog T
P434_compressed.o get_4_isog T
P434_compressed.o get_A T
P434_compressed.o highest_2t T
P434_compressed.o highest_t T
P434_compressed.o inv_3_way T
P434_compressed.o inv_Fp2_cycl_proj T
P434_compressed.o inv_mod_orderA T
P434_compressed.o is_sqr_fp2 T
P434_compressed.o j_inv T
P434_compressed.o mod T
P434_compressed.o mod3 T
P434_compressed.o mont_n_way_inv T
P434_compressed.o mp_add T
P434_compressed.o mp_shiftl1 T
P434_compressed.o mp_shiftleft T
P434_compressed.o mp_shiftr1 T
P434_compressed.o mp_sub T
P434_compressed.o mul3 T
P434_compressed.o mulmixed_montproj T
P434_compressed.o multiply T
P434_compressed.o ord2w_dlog T
P434_compressed.o ord2w_dloghyb T
P434_compressed.o p434 R
P434_compressed.o p434p1 R
P434_compressed.o p434x16p R
P434_compressed.o p434x2 R
P434_compressed.o p434x4 R
P434_compressed.o ph2_CT R
P434_compressed.o ph2_G R
P434_compressed.o ph2_Log R
P434_compressed.o ph2_Texp R
P434_compressed.o ph2_path R
P434_compressed.o ph3_T B
P434_compressed.o ph3_T1 R
P434_compressed.o ph3_T2 R
P434_compressed.o ph3_path R
P434_compressed.o random_mod_order_A_SIDHp434 T
P434_compressed.o random_mod_order_B_SIDHp434 T
P434_compressed.o recover_os T
P434_compressed.o reverse_bits T
P434_compressed.o solve_dlog T
P434_compressed.o sqr_Fp2_cycl T
P434_compressed.o sqr_Fp2_cycl_proj T
P434_compressed.o sqrt_Fp2 T
P434_compressed.o strat_Alice R
P434_compressed.o strat_Bob R
P434_compressed.o table_r_qnr R
P434_compressed.o table_r_qr R
P434_compressed.o table_v_qnr R
P434_compressed.o table_v_qr R
P434_compressed.o threeinv R
P434_compressed.o to_Montgomery_mod_order T
P434_compressed.o to_fp2mont T
P434_compressed.o to_mont T
P434_compressed.o toproj T
P434_compressed.o u_entang R
P434_compressed.o v_3_torsion R
P434_compressed.o validate_ciphertext T
P434_compressed.o xDBL T
P434_compressed.o xDBLADD T
P434_compressed.o xDBL_e T
P434_compressed.o xDBLe T
P434_compressed.o xTPL T
P434_compressed.o xTPL_fast T
P434_compressed.o xTPLe T
P434_compressed.o xTPLe_fast T
fips202.o KeccakF1600_StatePermute T
fips202.o shake128 T
fips202.o shake128_absorb T
fips202.o shake128_squeezeblocks T
fips202.o shake256 T
fips202.o shake256_absorb T
fips202.o shake256_squeezeblocks T
fp_x64.o fpadd434 T
fp_x64.o fpcorrection434 T
fp_x64.o fpdiv2_434 T
fp_x64.o fpneg434 T
fp_x64.o fpsub434 T
fp_x64.o mp_mul T
fp_x64.o mp_sub434_p2 T
fp_x64.o mp_sub434_p4 T
fp_x64.o rdc_mont T
fp_x64_asm.o fpadd434_asm T
fp_x64_asm.o fpsub434_asm T
fp_x64_asm.o mp_add434_asm T
fp_x64_asm.o mp_dblsub434x2_asm T
fp_x64_asm.o mp_sub434_p2_asm T
fp_x64_asm.o mp_sub434_p4_asm T
fp_x64_asm.o mp_subadd434x2_asm T
fp_x64_asm.o mul434_asm T
fp_x64_asm.o rdc434_asm T

Number of similar (implementation,compiler) pairs: 12, namely:
ImplementationCompiler
T:mulxclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:mulxclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:mulxclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:mulxgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:mulxgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:mulxgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:mulxadxclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:mulxadxclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:mulxadxclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_18.1.3_(1ubuntu1))
T:mulxadxgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:mulxadxgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)
T:mulxadxgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.2.0)