Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

switch back to arkworks field arithmetic for 64-bit backend #101

Closed
redshiftzero opened this issue Apr 17, 2024 · 0 comments · Fixed by #102
Closed

switch back to arkworks field arithmetic for 64-bit backend #101

redshiftzero opened this issue Apr 17, 2024 · 0 comments · Fixed by #102
Assignees

Comments

@redshiftzero
Copy link
Contributor

As part of penumbra-zone/penumbra#3526, we added fiat-crypto formally verified field arithmetic implementations to decaf377, moving away from using the Arkworks field arithmetic imlpementation. This unblocked development of Penumbra's ledger app, since the Arkworks field arithmetic allocated.

However, @TalDerei did some very helpful benchmarking here and found that we have a significant performance regression.

This performance regression is blocking migrating downstream crates to the latest stable release (0.9.0, see #93). To move forward without introducing a performance regression we should switch back to Arkworks field arithmetic for the 64-bit backend only. Embedded environments like Ledger development will use the 32-bit backend which will continue to use the formally verified fiat-crypto field arithmetic.

@github-project-automation github-project-automation bot moved this to Backlog in Penumbra Apr 17, 2024
@redshiftzero redshiftzero moved this from Backlog to Todo in Penumbra Apr 23, 2024
@redshiftzero redshiftzero self-assigned this Apr 24, 2024
@github-project-automation github-project-automation bot moved this from Todo to Done in Penumbra Jun 28, 2024
redshiftzero pushed a commit to penumbra-zone/penumbra that referenced this issue Jul 10, 2024
## Describe your changes
Updates the `decaf377`, `decaf377-rdsa`, and `poseidon377` dep versions 

## Issue ticket number and link
References #3676 and
consumes changes in #3678. unblocked by
penumbra-zone/decaf377#101

## Checklist before requesting a review
- [x] If this code contains consensus-breaking changes, I have added the
"consensus-breaking" label. Otherwise, I declare my belief that there
are not consensus-breaking changes, for the following reason:

---------

Co-authored-by: Lucas Meier <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

1 participant