Grandine AMA
@ Interop Event 2024
Huge thanks for inviting us!
There would be no Grandine without YOU!
History
- Started in 2019 as a side project;
- Already two other Rust clients back then - Lighthouse and Shasper;
- Received commercial grant (obligation to generate revenue);
- The first 0.1.0 binary release in 2021;
- Opensource in 2024;
- Team - 4 core + extra people;
- Used in production.
Architecture
- Original fork-choice implementation;
- Performance focused (parallelization, micro-optimisations);
- Low memory footprint (in-memory-only at the beginning);
- Tree-states;
- Thin database layer;
- Coupled beacon node and validator client.
Community crates
- Heavy usage of general purpose Rust community crates (~1000, Tokio, Axum etc.);
- rust-libp2p based networking crates by Lighthouse team;
- libmdbx-rs by Akula, later by Reth.
What drives development?
- Initially - isolated benchmarks (state transition function was ~3x faster than the next fast implementation);
- Later - qualitative comparision with the other implementations using Vouch;
- Latest - user feedback.
Research
- Mainly performance (speed, memory usage);
- Optimal attestations packer;
- Rust-kzg (parallel CPU, GPU, multibackend):
AMA
deck
By saulius
deck
- 11