Skip to content

Latest commit

 

History

History
35 lines (23 loc) · 1.22 KB

README.md

File metadata and controls

35 lines (23 loc) · 1.22 KB

quantum-groth16-circuits

This is a Monorepo containing:

  • aggregator: Aggregation circuits
  • indexed_merkle_tree: Indexed Merkle Tree circuits used for aggregation
  • quantum_reduction_circuits: groth16 verifier circuits

setup

Make sure you have go installed in your system. (guide here)

  • go mod tidy

test

  • quantum_reduction_circuits

    • go test -run ^TestVerifier$ github.com/Electron-Labs/quantum-gnark-circuits/quantum_reduction_circuits/verifier/gnark_groth16 -test.v -tags=debug
    • go test -run ^TestVerifier$ github.com/Electron-Labs/quantum-gnark-circuits/quantum_reduction_circuits/verifier/circom_groth16 -test.v -tags=debug
  • indexed_merkle_tree

    • go test github.com/Electron-Labs/quantum-gnark-circuits/indexed_merkle_tree/circuit_test.go -test.v -tags=debug

benchmarks

These benchmarks are corresponding are BATCH_SIZE=8 and TREE_DEPTH=9.

Machine Proving time (sec)
AWS r6a.32xlarge ~98
AWS r6a.16xlarge ~128
AWS r6a.8xlarge ~172

To reproduce the benchmarks, run:

  • ./scripts/run_e2e.sh