DmytroTym / fast-danksharding

Danksharding Builder with GPU acceleration

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

License:MIT License


Languages

Language:Python 58.9%Language:Rust 36.7%Language:Cuda 4.4%