2.7 KiB
2.7 KiB
proving
Igneum proving: v0 (3 October 2026, one SP1 proof per block) and the devnet v4 shards (4 October 2026). Plan, status and measurements: docs/plans/proving-v0.md; numbers: docs/bench-log.md.
igneum-prove/: Cargo workspace.core(the port of the execution layer's executor at b7fca5a0; the cutterplan.rs, the partial-trie witnessestrie.rsandwitness.rs, the shard statementshard.rs, the block statementagg.rs),program(the shard guest),aggregator(the aggregator guest, SP1 deferred proofs of the shard program),host(modes native, execute, shard, block, all; the versionedProofSystemtrait with the stub and the SP1 implementation inhost/src/proof_system.rs),export(cuts a real block out of anigneum_exportSegmentsdump, checks the port against the node's state roots, plans the shards and checks every witness).fixtures/:block-338-shard1,block-341-shards2,block-344-shards4(one, two and four shards atS_p= 7.5 M pgas, from the private simnet oftools/prove-fixtures),block-78-incrementandblock-56-transfers(the v0 blocks, one shard each),block-56-transfers-3shards(a test cut at 200 pgas for the CPU multi-shard check).windows-wsl2/: SETUP-PROVER.bat, PROVE-SHARD.bat (the shard atS_pand the two- and four-shard blocks on the GPU), PROVE-BLOCK.bat (the small block) and the Linux scripts for the project lead's PC;make-package.shbuilds the zip.
Build and run on a machine with the SP1 toolchain (curl -L https://sp1up.succinct.xyz | bash && sp1up):
cd proving/igneum-prove
cargo build --release -p igneum-prove-export -p igneum-prove-host # add --features igneum-prove-host/cuda on Linux x86_64 with an NVIDIA card
./target/release/igneum-prove-export ../../tools/prove-fixtures/seq.json 344 ../fixtures/block-344-shards4.json # replay, plan, witnesses; --budget <pgas> for a test cut
./target/release/igneum-prove-host ../fixtures/block-344-shards4.json --mode native # cut, witnesses, chain and sums, tamper checks
./target/release/igneum-prove-host ../fixtures/block-344-shards4.json --mode execute # SP1 cycles per shard and for the aggregator
./target/release/igneum-prove-host ../fixtures/block-338-shard1.json --mode shard --shard 0 --out results.json # execute, core, compressed, verified
SP1_PROVER=cuda ./target/release/igneum-prove-host ../fixtures/block-344-shards4.json --mode block --out results.json # shard proofs plus aggregation
Fixtures of real size: tools/prove-fixtures/net.sh start (a one-node simnet on ports 29300+), node tools/prove-fixtures/gen.mjs (bursts of modexp calls, transfers and Counter increments landed in one block, then the export), then the exporter per block.