constantine/benchmarks
Mamy Ratsimbazafy 5806cc4638
Double-Precision towering (#155)
* consistent naming for dbl-width

* Isolate double-width Fp2 mul

* Implement double-width complex multiplication

* Lay out Fp4 double-width mul

* Off by p in square Fp4 as well :/

* less copies and stack space in addition chains

* Address https://github.com/mratsim/constantine/issues/154 partly

* Fix #154, faster Fp4 square: less non-residue, no Mul, only square (bit more ops total)

* Fix typo

* better assembly scheduling for add/sub

* Double-width -> Double-precision

* Unred -> Unr

* double-precision modular addition

* Replace canUseNoCarryMontyMul and canUseNoCarryMontySquare by getSpareBits

* Complete the double-precision implementation

* Use double-precision path for Fp4 squaring and mul

* remove mixin annotations

* Lazy reduction in Fp4 prod

* Fix assembly for sum2xMod

* Assembly for double-precision negation

* reduce white spaces in pairing benchmarks

* ADX implies BMI2
2021-02-09 22:57:45 +01:00
..
platforms benchmarking skips cycle counting for ARM 2020-04-15 21:24:18 +02:00
bench_blueprint.nim Double-Precision towering (#155) 2021-02-09 22:57:45 +01:00
bench_ec_g1.nim Rename ECP_ShortW_Proj -> ECP_ShortW_Prj 2021-02-06 16:29:53 +01:00
bench_ec_g2.nim Rename ECP_ShortW_Proj -> ECP_ShortW_Prj 2021-02-06 16:29:53 +01:00
bench_elliptic_template.nim Rename ECP_ShortW_Proj -> ECP_ShortW_Prj 2021-02-06 16:29:53 +01:00
bench_fields_template.nim Square Root & Inversion addition chains - 20% perf increase (#132) 2021-01-23 20:55:40 +01:00
bench_fp.nim Square Root & Inversion addition chains - 20% perf increase (#132) 2021-01-23 20:55:40 +01:00
bench_fp2.nim Jacobian coordinates (#95) 2020-10-02 00:01:09 +02:00
bench_fp4.nim Jacobian coordinates (#95) 2020-10-02 00:01:09 +02:00
bench_fp6.nim Remove unused curves 2020-09-27 13:13:45 +02:00
bench_fp12.nim Remove unused curves 2020-09-27 13:13:45 +02:00
bench_fp_double_precision.nim Double-Precision towering (#155) 2021-02-09 22:57:45 +01:00
bench_pairing_bls12_377.nim BLS12-377 (#91) 2020-09-27 09:15:14 +02:00
bench_pairing_bls12_381.nim Pairings for BN254-Nogami and BN254-Snarks (#86) 2020-09-25 21:58:20 +02:00
bench_pairing_bn254_nogami.nim Pairings for BN254-Nogami and BN254-Snarks (#86) 2020-09-25 21:58:20 +02:00
bench_pairing_bn254_snarks.nim Pairings for BN254-Nogami and BN254-Snarks (#86) 2020-09-25 21:58:20 +02:00
bench_pairing_template.nim Double-Precision towering (#155) 2021-02-09 22:57:45 +01:00
bench_sha256.nim Fix test suite (#116) 2021-01-21 21:25:42 +01:00
platforms.nim Remove outdated TODOs [skip ci] 2020-10-11 21:33:59 +02:00