Skip to content

Panic for cuda prover running in docker container #2255

@nuke-web3

Description

@nuke-web3

Component

Other (please describe), sp1-sdk

Have you ensured that all of these are up to date?

  • SP1 SDK
  • cargo prove CLI/sp1up

What version of SP1 SDK are you on?

4.0.1

What version of the cargo prove CLI are you on?

cargo-prove sp1 (a80c17c 2025-04-01T00:41:38.259051986Z)

Operating System

Linux (Other)

Describe the bug

I am struggling quite a bit to get a dockerized prover working, I think there is only one issue that blocks me:



[sp1] groth16 circuit artifacts already seem to exist at /root/.sp1/circuits/groth16/v4.0.0-rc.3. if you want to re-download them, delete the directory

thread 'tokio-runtime-worker' panicked at /root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sp1-recursion-gnark-ffi-4.1.7/src/ffi/docker.rs:92:61:
failed to prove with docker: Docker command failed
 stderr: "panic: open /circuit/groth16_circuit.bin: no such file or directory\n\ngoroutine 17 [running, locked to thread]:\ngithub.com/succinctlabs/sp1-recursion-gnark/sp1.ProveGroth16({0xc0002dee38, 0x8}, {0xc0002dee40, 0x8})\n\t/sp1/crates/recursion/gnark-ffi/go/sp1/prove.go:115 +0xce9\nmain.ProveGroth16Bn254(0x0?, 0x5baf5d79f4b0)\n\t/sp1/crates/recursion/gnark-ffi/go/main.go:115 +0x5a\n"
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
^Croot@nuke-gpu-l4:/# ll /circuits/
total 6946624
drwxrwxr-x 2 ubuntu ubuntu       4096 Dec 25 19:56 ./
drwxr-xr-x 1 root   root         4096 Apr 22 16:08 ../
-rw-rw-r-- 1 ubuntu ubuntu      24978 Dec 26 05:16 Groth16Verifier.sol
-rw-rw-r-- 1 ubuntu ubuntu       2479 Dec 26 05:16 SP1VerifierGroth16.sol
-rw-rw-r-- 1 ubuntu ubuntu  172612971 Dec 25 19:53 constraints.json
-rw-rw-r-- 1 ubuntu ubuntu 1152193000 Dec 25 19:56 groth16_circuit.bin
-rw-rw-r-- 1 ubuntu ubuntu 2831171769 Dec 26 05:15 groth16_pk.bin
-rw-rw-r-- 1 ubuntu ubuntu        396 Dec 26 05:16 groth16_vk.bin
-rw-rw-r-- 1 ubuntu ubuntu     823158 Dec 25 19:53 groth16_witness.json
-rw-r--r-- 1 root   root   2956476403 Apr 22 16:05 pda-proxy.tar.gz
root@nuke-gpu-l4:~/.sp1/circuits/groth16/v4.0.0-rc.3# ls
Groth16Verifier.sol  SP1VerifierGroth16.sol  constraints.json  groth16_circuit.bin  groth16_pk.bin  groth16_vk.bin  groth16_witness.json



thread 'tokio-runtime-worker' panicked at /root/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sp1-recursion-gnark-ffi-4.1.7/src/ffi/docker.rs:92:61:
failed to prove with docker: Docker command failed
 stderr: "panic: open /circuit/groth16_circuit.bin: no such file or directory\n\ngoroutine 17 [running, locked to thread]:\ngithub.com/succinctlabs/sp1-recursion-gnark/sp1.ProveGroth16({0xc00025ee38, 0x8}, {0xc00025ee40, 0x8})\n\t/sp1/crates/recursion/gnark-ffi/go/sp1/prove.go:115 +0xce9\nmain.ProveGroth16Bn254(0x0?, 0x653728ad64b0)\n\t/sp1/crates/recursion/gnark-ffi/go/main.go:115 +0x5a\n"
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Note I build the container for my app, upload it to a cloud instancve, run the container after manual modifications to ensure permissions and paths are correct etc.

The panic: open /circuit/groth16_circuit.bin: no such file or directory seems to indicate that internally something cannot resolve even with ~.sp1 and /circuits both containing the correct files.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions