With 2024 well on its way and exciting projects picking up at RISC Zero, we’re excited to share a handful of performance optimizations planned for Q1 and Q2 of 2024 with our developer community. The upgrades described here are separated into two general categories:
Global performance upgrades
Specialized accelerator circuits
Global Upgrades
TLDR: Look out for 7-10x+ performance improvements in the coming months.
Upgrade
Estimated Perf Bump
Description
Status
Poseidon2
1.3x (recursion only)
By upgrading our recursion circuit from the Poseidon to the Poseidon2 hash function, proving performance for recursion will be dramatically improved.
Completed
Parallel witness generation
1.5-2x
Today this is a single threaded, CPU-bound process and the primary bottleneck in our prover. Enabling parallelization improves performance and eventually enables GPU-accelerated witness generation.
Completed
GPU-only prover
1.5x+
Our CUDA and Metal provers currently rely on CPU-based processes, splitting the proving between GPU and CPU. This work will involve moving the full prover onto the GPU.
In Progress
V2 circuit
2x+
We've designed a new architecture for our RISC-V circuit which requires less cycles and registers, dramatically improving performance.
In Progress
Accelerator Circuits
Accelerator circuits can yield 600% or more improvements for specific algorithms and cryptographic operations. To enable custom accelerators, we’re working on a feature we call Circuit Composition, which will enable circuits to be composed with zkVM proofs, offering similar benefits to proof composition, but with alternative circuits rather than alternative zkVM proofs. The overall impact of a given accelerator depends on the cost of that given operation in a guest program. Overall, we’ve seen performance for common crypto crates improve 3x or more with preliminary acceleration. Check out our Guest Profiling Guide to learn more about our unique performance profiling tooling. Upcoming accelerator circuits include:
ECDSA - A dedicated circuit for lightning fast ECDSA signature verification
Keccak256 - Ethereum’s hash function of choice, used broadly in Eth-friendly merkle proofs and protocols like, Zeth
BLS - Commonly used for Ethereum light client consensus proofs
KZG - Helping rollup and Eth developers to capitalize on the gas savings of blobs and EIP-4844 in their ZK protocols
What’s Next?
Our zkVM and proof systems have inspired a plethora of ZK research and derivative works, and RISC Zero’s technology is continuing to lead. On our current trajectory, we see a feasible path to 20x or more cost improvements by the end of 2024, enabling economically efficient ZK proving for all, improving the security of blockchain protocols and protecting user funds in the process. We are also working to establish shared zkVM performance benchmarks, making it easier and more transparent for developers to evaluate performance.