Skip to content

0xmoei/succinct

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Succinct Prover Guide

Hardware Requirements:

GPU Setup

  • CPU: 8 cores
  • Memory: 16GB+
  • NVIDIA GPU >24GB vRAM (e.g., RTX 4090, L4, A10G)

CPU-only Setup Tested with an 8-core CPU and 32GB RAM, and successfully generated proofs with ease.


Software

  • Supported: Ubuntu 20.04/22.04/24.04
  • NVIDIA Driver: 555+
  • If you are running on Windows os locally, install Ubuntu 22 WSL using this Guide

Rent GPU

Recommended GPU Providers

  • Vast.ai: SSH-Key needed
    • Rent VM Ubuntu template
    • Refer to this Guide to generate SSH-Key, Rent GPU and connect to your Vast GPU

Also saw people mentioning GenesisCloud & Tensordock that I am not using them due to not supporting cryptocurrencies


Prover Setup

  • 1- Create a Prover in Succinct Staking Dashboard on Sepolia network

  • 2- Save your prover 0xaddress under My Prover (Keep a very low amount in your wallet)

  • 3- Stake $PROVE token on your Prover here

  • 4- You can add a new signer wallet (fresh wallet) in prover interface to your prover since you have to input the privatekey into the CLI

  • Note: I'm currently proving with less than 1000 $PROVE tokens staked while team says you need 1000 tokens, I'm experimenting things and will update this.


Dependecies

Update Packages

sudo apt update && sudo apt upgrade -y
sudo apt install git -y

Clone Repo

git clone https://github.com/0xmoei/succinct

cd succinct

Install Dependecies

For GPU Setups:

chmod +x setup.sh
sudo ./setup.sh

For CPU-only Setups: Follow the CPU Setup


Setup Prover

Copy .env from example

cp .env.example .env

Edit .env:

nano .env
  • Replace the variables with your own values.
  • PGUS_PER_SECOND & PROVE_PER_BPGU: Keep default values, or go through Calibrate section to configure them.

Unset any conflicting shell variables:

unset PGUS_PER_SECOND PROVE_PER_BPGU PROVER_ADDRESS PRIVATE_KEY

Run Prover

For GPU Setup

# Ensure you are in succinct directory
cd succinct

# Run
docker compose up -d

For CPU-only Setup

# Ensure you are in succinct directory
cd succinct

# Run
docker compose -f docker-compose-cpu.yml up -d

Prover Logs

For GPU Setup

# Logs
docker compose logs -f

# Last 100 logs
docker compose logs -fn 100

For CPU Setup

# All logs
docker compose -f docker-compose-cpu.yml logs -f

# Last 100 logs
docker compose -f docker-compose-cpu.yml logs -fn 100

When looking for a request:

image

When proving a request:

image


Stop Prover

For GPU Setup

docker stop sp1-gpu succinct-spn-node-1
docker rm sp1-gpu succinct-spn-node-1

For CPU Setup

docker stop sp1-gpu succinct-spn-node-1
docker rm sp1-gpu succinct-spn-node-1

Common Errors

1- docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

  • Make sure your server runs Ubuntu VM.

2- ERROR: Permanent error encountered when Bid: request is not in the requested state (Client specified an invalid argument)

3- ERROR Permanent error encountered when Bid: Timeout expired (The operation was cancelled)

  • Normal errors due to network or your prover's behaviour.

I will update the guide with more optimization soon.

About

Detailed Guide to Run a Prover on Succinct network!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages