ChainSafe / ChainSafe/ProtoBanshee
Rust memory management optimizations
- Dominant language
- Rust
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Review and improve memory management practices applied to witness data (inputs to the circuits) handling.
Assume that project would have to deal with large inputs, for context:
- 600k-1m validators, used in [ValidatorsCircuit](https://github.com/ChainSafe/banshee-zk/blob/7dd9f6f90689995d4b01d1ce38cfe8ef43dbee31/zkcasper-circuits/src/validators_circuit.rs#L378)
- ~5m leaves Merkle tree, used in [StateSSZCircuit](https://github.com/ChainSafe/banshee-zk/blob/7dd9f6f90689995d4b01d1ce38cfe8ef43dbee31/zkcasper-circuits/src/state_circuit.rs#L186)
- ~5m sha256 hashes, used in [Sha256Circuit](https://github.com/ChainSafe/banshee-zk/blob/7dd9f6f90689995d4b01d1ce38cfe8ef43dbee31/zkcasper-circuits/src/sha256_circuit.rs#L857)
- 600k-1m uncompressed public keys (96 bytes each), yet to be added.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.