-
Notifications
You must be signed in to change notification settings - Fork 41
Open
Labels
dependenciesPull requests that update a dependency filePull requests that update a dependency file
Description
Summary
proof-systems PR #3386 changed ArithmeticSpongeParams and related sponge types to use const generics instead of vectors:
ArithmeticSpongeParams<F>→ArithmeticSpongeParams<F, FULL_ROUNDS>ArithmeticSponge<F, SC>→ArithmeticSponge<F, SC, FULL_ROUNDS>DefaultFqSponge<P, SC>→DefaultFqSponge<P, SC, FULL_ROUNDS>DefaultFrSponge<Fr, SC>→DefaultFrSponge<Fr, SC, FULL_ROUNDS>FqSpongetrait now hasconst FULL_ROUNDS: usizeparameter
Benefits
- Better memory layout (stack/contiguous instead of scattered heap allocations)
- Fewer dynamic allocations
- Small but consistent performance improvement
Affected crates
ledger(proofs, verification, field operations)snark
Tasks
- Update proof-systems dependency to 0.3.0
- Update all usages of
DefaultFqSpongeandDefaultFrSpongewith appropriateFULL_ROUNDSvalues - Update
FqSpongetrait bounds - Verify tests pass
Related
- This must be done at the same time as Update mina-rust to use the tag 0.3.0 of proof-systems #1972.
- Blocked by: proof-systems release 0.3.0
- Part of: Release 0.3.0 of proof-systems #1970
Metadata
Metadata
Assignees
Labels
dependenciesPull requests that update a dependency filePull requests that update a dependency file
Type
Projects
Status
Todo