Skip to content

Conversation

@DengJianbo-loongson
Copy link

Add LoongArch SM2 related functions to improve the performance. Tested on LA 3A6000, the number of signatures per second has increased from 8567 to 62203.

Following functions implemented by LoongArch instructions are added to
improve the performance of SM2.
* sm2_z256_modp_add
* sm2_z256_modp_dbl
* sm2_z256_modp_tri
* sm2_z256_modp_mont_mul
* sm2_z256_modp_mont_sqr
* sm2_z256_modp_sub
* sm2_z256_modp_neg
* sm2_z256_modp_haf
* sm2_z256_modp_to_mont
* sm2_z256_modp_from_mont

Test on LA 3A6000, the number of signatures per second has increased
from 8567 to 56344.
Following functions implemented by LoongArch instructions are added to
improve the performance of SM2.
* sm2_z256_modn_add
* sm2_z256_modn_sub
* sm2_z256_modn_neg
* sm2_z256_modn_mont_mul
* sm2_z256_modn_from_mont
* sm2_z256_modn_to_mont
* sm2_z256_modn_mont_sqr

Test on LA 3A6000, the number of signatures per second has increased
from 56344 to 57414.
Following functions implemented by LoongArch instructions are added to
improve the performance of SM2.
* sm2_z256_point_dbl
* sm2_z256_point_add_affine
* sm2_z256_point_add_affine

Test on LA 3A6000, the number of signatures per second has increased
from 57414 to 62203.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant