This project aims to implement Sumcheck protocol to run on GPU via CUDA, following the algorithms described in the paper. Currently algorithm 1 is implemented and tested with bn254 scalar field. Future plan is to implement algorithm 3 and support small prime fields such as Goldilocks.
Only kernels are written in C++ and uses Rust to launch kernels and handle device datas by using bindgen and cudarc.
The implementation has been tested on the following spec.
Ubuntu 22.04.4 LTS
1 NVIDIA A10G Tensor GPU, 24GB Ram
- nvcc version: 12.1
- C++ compiler version: clang-16
- C++ language standard: C++20