Skip to content

Releases: succinctlabs/sp1

v4.0.0-rc.1

27 Nov 07:21
Compare
Choose a tag to compare

A release candidate for SP1 V4.0.0. This release introduces major performance improvements across the board for all programs and workloads.

🚀 Highlights

  1. GPU Kernel Optimizations

We've done a lot of work optimizing our GPU Kernels for the expensive parts of the prover such as quotient and opening. We've also added support for trace generation on GPU in this release which reduces end-to-end latency.

  1. Recursion Aritmetization Optimizations

We've used some new tricks to reduce our arithmetization overhead in recursion, bringing faster and more efficient proofs of constant size to all programs.

  1. RSA and Secp256r1 Precompiles

Support for RSA and Secp256r1 precompiles have been added.

🛠 Production-Readiness

v4.0.0-rc.1 is not yet production-ready. We recommend using this release only for benchmarking purposes.

📦 Changes

  • chore(sdk): update network-v2 proto
  • docs: common issues
  • fix: mock prover groth16 bytes
  • fix: additional guards on entrypoint macro
  • feat(sdk): download proof from public URI
  • feat(sp1up): error messages for bad inputs.
  • fix: patch bls and bn
  • Docs: Updating missing arguments in SP1 Quickstarter
  • docs: Update example commands from cd script to cd ../script
  • chore: update images
  • chore: docs off dev
  • chore: fix typo in image
  • test: add network-v2 to perf test suite
  • feat: security md
  • feat: executor optimizations
  • perf: implement select precompile
  • chore: use tags instead of branches to label patches
  • feat: remove assign in airs
  • feat: new crate for no-std groth/plonk verification
  • feat: executor optimizations
  • fix: Revert "feat: executor optimizations"
  • perf: remove redundant last compress
  • fix: empty shape config
  • feat: executor optimizations + separate postprocess
  • perf: add batch FRI precompile
  • chore: fix comments and logging for select precompile
  • perf: implement local-only optimization
  • chore: update network-v2 proto
  • docs: separate SP1VerifierGateway for PLONK and Groth16
  • docs: generating-proofs.md
  • feat: new device proving key API
  • perf: build time GRO-146
  • docs: change docs for updated function call
  • feat: new precompile secp256r1
  • fix: lock file
  • feat: plonk verification with .bytes()
  • feat: add issue template
  • ci: check lock files in ci
  • chore: lockfile cleanup
  • chore: add MSRV of 1.79
  • docs: verifier crate docs
  • chore: crates substrate_bn version
  • feat: v3 audit report
  • feat: more docs about v3
  • docs: ci optimizations
  • fix(recursion): avoid double counting children in (cycle tracker) spans
  • docs: version nits

v3.3.0

20 Nov 19:33
3bbf4cf
Compare
Choose a tag to compare

📦 Uncategorized

  • fix: remove stdin from SP1ProofWithPublicValues
  • feat: verifier crate
  • feat: fix for verifier crate
  • fix: ecdsa recovery failure may cause executor to panic

v3.0.1-alpha-b976ea6e

13 Nov 21:02
b976ea6
Compare
Choose a tag to compare
v3.0.1-alpha-b976ea6e Pre-release
Pre-release

📦 Uncategorized

  • docs: change docs for updated function call
  • feat: new precompile secp256r1
  • fix: lock file
  • feat: plonk verification with .bytes()
  • feat: add issue template
  • ci: check lock files in ci
  • chore: lockfile cleanup
  • chore: add MSRV of 1.79
  • docs: verifier crate docs
  • chore: crates substrate_bn version
  • feat: v3 audit report
  • feat: more docs about v3
  • docs: ci optimizations
  • fix(recursion): avoid double counting children in (cycle tracker) spans
  • docs: version nits

v3.0.0

18 Oct 18:05
ff8f482
Compare
Choose a tag to compare

We're excited to release SP1 v3.0.0! SP1 v3.0.0 comes with two major performance upgrades:

  • Optimized phase 1 proving
  • Recursion circuit to improve recursion performance

It's available on crates.io with the version tag v3.0.0.

Changes

  • fix: gnark-ffi memory handling
  • feat: allow run in dev mode
  • fix: debug constraints
  • fix: shape for deferred program
  • feat: deferred support in perf
  • fix: clippy issues in perf
  • docs: update onchain usage
  • fix: add support for tls connections in network-v2 rpc client
  • fix: remove mention of sp1 dir in examples' relative paths
  • fix: typo in the solidity section of the book
  • fix: connect deferred vk root
  • chore: update docs
  • feat: update docs for v3 pt 2
  • feat: update cargo version tag
  • feat: v3.0.0

v3.0.0-rc4

16 Oct 18:50
169a13a
Compare
Choose a tag to compare

📦 Uncategorized

  • feat: v2.0.0
  • feat: new include_elf! macro for importing ELF
  • fix: build errors on custom bin target names
  • feat(cli): improve cargo prove new
  • fix(cuda-prover): dont discard stderr
  • chore(deps): bump bindgen from 0.69.4 to 0.70.1
  • chore(deps): bump stacker from 0.1.15 to 0.1.17
  • fix(sp1-build, workflows): docker tag
  • feat: phase 1 opts + recursion circuit
  • feat: update to 3.0.0-rc4
  • fix: fix docs
  • refactor: improve cargo build reproducibility
  • feat: add compiler flags to BuildArgs
  • fix: remove cargo environment vars from local build
  • fix: compatibility with mock verifier contract
  • fix(sdk): better error handling
  • chore: fix all typos
  • feat: v3.0.0-rc4

v3.0.0-rc3

09 Oct 22:13
Compare
Choose a tag to compare

📦 Uncategorized

  • perf: posedion2 trace opt
  • feat: make challenger fixed shape
  • feat: fixed size shrink and wrap for recursion v2
  • feat: small prog opts
  • fix everything
  • feat: merkle tree-based vector commitments
  • perf: GROTH16 improvements
  • feat: recursion circuit integration
  • feat: infrastructure for proof shape merkle proofs
  • feat: new arithmetic
  • chore: merge dev
  • chore: merge dev
  • chore: merge dev
  • Revert "chore: merge dev"
  • chore: merge dev
  • feat: integration constraints
  • chore: merge dev
  • feat: enable fixed shape in recursion circuit
  • chore: allow optional proof shape in core record and program
  • chore: merge dev
  • chore: merge dev
  • feat: fixed shapes in precompiles
  • feat: better reduce api
  • feat: dummy fri proofs
  • feat: fixed proof shapes
  • feat: added cuda action
  • fix: rsp ci test
  • revert: fix: rsp ci test
  • perf: local bus
  • feat: fixed heights for new chips
  • fix: low memory shards
  • feat(sdk): send cpu cycles in network
  • feat: dummy shard proof
  • refactor: removed use of sudo + docker from cuda crate
  • fix: copy_elf_from_output_dir binary name
  • feat: Add cycle-tracking example with multiple binaries
  • feat: vk maps
  • fix: local cumulative sum check in recursion
  • fix: rust 1.81 toolchain build issue
  • fix: uninitialized_memory hashmap issue
  • ci: test toolchain installation
  • docs: substrate bn
  • refactor: move SP1PublicValues to sp1-primitives
  • perf: remove unnecessary materializations of matrix views
  • chore: implement raw() for groth16 proof
  • chore: replace raw() with bytes() in fibonacci example
  • feat: public value validity assertions
  • feat: merge upstream changes
  • feat: fixed vks in root
  • feat: root and deferred
  • fix: check with is_first instead of is_last in exp reverse bits chip
  • feat: felts to var optimization
  • fix: gnark ffi fixes
  • fix: conversions and bits
  • fix: proof flow for v3
  • chore: upgrade Rust toolchain to 1.81.0
  • feat: remove exp reverse bits in wrap
  • docs: why-use-sp1.md
  • fix: gnark-ffi Dockerfile caching
  • chore: merge dev
  • chore: cleanup
  • fix: shapes fixing
  • fix: multi field rate and serialization
  • fix: execution shard initialization
  • fix: exit code
  • fix: vk root in deferred
  • fix: more shard options
  • fix: sp1-recursion-gnark-ffi rebuilds unnecessarily
  • fix: syscall chip in shards
  • chore: merge dev
  • Revert "chore: merge dev"
  • feat: BabyBear Optimization in GNARK
  • chore: remove individual example workspaces
  • chore: cleanup
  • chore: clippy without debug_assertions
  • chore: remove non-existent feature
  • chore: remove individual test workspaces
  • fix: multi_scalar_multiplication
  • docs: update
  • chore(sdk): update prost and twirp to 0.13
  • feat: precompile shapes
  • feat: runtime opts
  • feat: trusted setup support
  • chore: merge dev
  • chore: Fix typos in documentation
  • fix: weierstrass_add test
  • fix(docs): branch on patched bls12_381
  • feat: sp1 testing suite
  • feat: only call entrypoint in zkvm
  • feat: artifacts
  • feat: g16/plonk for network
  • small tweaks
  • chore: tweaks
  • feat(sdk): network-v2
  • chore: cargo machete
  • feat: shape artifacts in s3

v3.0.0-rc1

16 Sep 18:37
release/v3.0.0-rc1
f7e3e84
Compare
Choose a tag to compare
v3.0.0-rc1 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: v1.3.0-rc1...release/v3.0.0-rc1

v2.0.0

14 Sep 00:04
v2.0.0
459fac7
Compare
Choose a tag to compare

📦 Uncategorized

  • feat: v1.2.0-rc1
  • fix: add nonce constraint to fp
  • feat: compile sdk to wasm-unknown-unknown
  • feat: performance test + add to CI
  • feat: LookupId struct instead of u128
  • fix: memory not added to checkpoint in unconstrained mode
  • ci: only post perfomance to slack on dev merge
  • chore: v1.2.0-rc.2
  • chore: bump sp1-gpu version
  • revert: "fix: add nonce constraint to fp"
  • fix: check branch CI
  • fix: v1.2.0-rc2
  • revert: "revert: fix: add nonce constraint to fp"
  • chore: minor eval changes
  • fix(log): add instrument for prover::compress
  • fix: oom fixes for rsp
  • chore(build): friendly error msg when Cargo.toml is not found
  • chore: added rsp example
  • feat: v1.2.0 fixes
  • chore: added json
  • fix: typo in rsp example ci test
  • chore: fix crate version
  • feat: v1.2.0 official release
  • chore: disable lowmem ci test
  • feat: autoscale shard / batch size
  • fix: example style
  • perf: use vec_map paging mmu for executor memory
  • docs: Fixed broken link
  • feat: specify version in network client
  • docs: SP1VerifierGateway
  • fix: segfault on m3
  • perf: optimize ExecutionReport and create_alu_lookup_id iff mode is trace
  • fix: uncomment p2 wide constraint
  • docs: add optimism chains
  • fix: eval compress calculation
  • feat: added RSA example and updated it to use the sha2 patch
  • fix: core compress pv in sdk
  • feat: automatic solidity verifier adjustments
  • docs: use v2 / v3
  • docs: add groth16
  • chore: bump version
  • chore: merge main
  • docs: fix book link
  • docs: fix supported versions link
  • feat: v2.0.0

v1.2.0

04 Sep 00:18
8600d4a
Compare
Choose a tag to compare

📦 Uncategorized

  • feat: v1.2.0 official release

v1.2.0-rc2

29 Aug 23:09
f173699
Compare
Choose a tag to compare

📦 Uncategorized

  • fix: make v2 compiler deterministic
  • fix: add rint and rintf
  • perf: basic constant propagation for Imm instructions in v2 compiler
  • fix: zkvm readme paths
  • fix: avoid duplicate logic in read_const
  • fix: add nonce constraint to fp
  • feat: compile sdk to wasm-unknown-unknown
  • feat: performance test + add to CI
  • feat: LookupId struct instead of u128
  • fix: memory not added to checkpoint in unconstrained mode
  • ci: only post perfomance to slack on dev merge
  • chore: v1.2.0-rc.2
  • chore: bump sp1-gpu version
  • revert: "fix: add nonce constraint to fp"
  • fix: check branch CI
  • fix: v1.2.0-rc2