Skip to content

DmytroTym/fast-danksharding

 
 

Repository files navigation

Fast Danksharding

This implementation is meant to run entirely on an NVIDIA GPU.The code is a highly parallelized implementation of the diagram below, and heavily rely on ICICLE. For implementation details please refer to our companion blog post

Screenshot 2023-03-08 at 15 34 50

Build and usage

NOTE: NVCC, Rust are prerequisites for building. Python 3.10 and up for test data generation.

  1. ICICLE library supports BLS12-381 as default curve, that is the curve in use for danksharding
  2. Go into git dir init the submodule and update
  3. Generate test vectors
  4. To build and run fast-danksharding using cargo
git submodule init
git submodule update
python3 kzg_data_availability/tests.py
cargo run --release

You'll find a release ready binary at target/release/.

Contributing

Join our Discord Server and find us on the icicle channel. We will be happy to work together to support your use case and talk features, bugs and design.

License

ICICLE is distributed under the terms of the MIT License.

See LICENSE-MIT for details.

About

Danksharding Builder with GPU acceleration

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 58.9%
  • Rust 36.7%
  • Cuda 4.4%