Closed jsign closed 2 years ago
These are amazing results! Thank you very much, I'll check out the PR now :)
Oh RE your last sentence, yes please add comments on the changes!
I should also note that #19 might regress some of the changes made here. Instead of PointAffine, we use a wrapper around PointProj with special methods, so MultiExp etc now also use that wrapper
These are amazing results! Thank you very much, I'll check out the PR now :)
You're welcome!
I should also note that https://github.com/crate-crypto/go-ipa/pull/19 might regress some of the changes made here. Instead of PointAffine, we use a wrapper around PointProj with special methods, so MultiExp etc now also use that wrapper
Sounds good. Maybe after that gets merged I can take some other pass with optimization-eyes to see if there's something extra that we can gain. Let me know how you want to proceed
Alright, I'll merge this first and then resolve conflicts on that branch, aiming to preserve the optimisations you have done
This PR contains a set of optimizations that improves the performance of the library significantly.
Using the reference benchmarks in the repo, here's a comparison in performance between
master
and this PR:A TL;DR:
The original focus to guide the optimizations was making
go-verkle
faster for generating and verifying proofs.To understand the impact of these optimizations in
go-verkle
see this PR.I'm not entirely sure if the repo is open for PRs from external contributors; if this PR is looking good to consider for merging I can add some comments on the changes.
Let me know!