zkMIPS 1.0 – Production-Ready, Performance-Optimized, and Open for Developers

Share on

zkMIPS 1.0 is here - our most significant leap toward real-time proving, following months of careful engineering and system-level breakthroughs.

We’ve been heads-down refining every layer of the stack - now it’s ready: the first production-ready version of our MIPS-based zkVM. This upgrade delivers a 6x-19x performance improvement over zkMIPS 0.3.0 and is a major breakthrough in our attempt to build the most simple, stable, and scalable foundation for real-time verifiable computation.

zkMIPS 1.0 is the result of a full-stack overhaul: new architecture support, optimized proving systems, memory checking mechanisms, chip decomposition, and precompile strategy. Together, these updates make zkMIPS a highly performant proving infrastructure for the next generation of verifiable applications.

Key Upgrades in zkMIPS 1.0

Support for MIPS32r2
We’ve upgraded from MIPS2 to the MIPS32r2 ISA, unlocking access to a broader opcode set (e.g. MADDU) and compiler-level optimizations. This reduces program size, enabling more efficient execution and smaller trace matrices during proof generation.

Powered by Plonky3 and Koala Prime Field
zkMIPS now leverages Plonky3 - an advanced STARK backend using the FRI protocol - and adapts SP1's circuit builder and recursion infrastructure. The KoalaBear 31-bit prime significantly accelerates arithmetic operations compared to the previous 64-bit Goldilocks setup.

Multiset Hashing for Memory Consistency
We’ve replaced Merkle trees with multiset hashing for memory consistency checks. This reduces witness size, minimizes communication overhead, and enables parallel verification.

Area-Minimized Chip Design
zkMIPS partitions circuits into modular ‘chips’ that minimize constraint layout area. This reduces proof generation costs while preserving completeness. Applied across CPU and memory subsystems.

Precompiles for Hot Paths
Heavy operations like Keccak and field arithmetic are abstracted into precompiles, reducing constraint payload and speeding up verification.

Benchmarking the Performance Gains

We benchmarked zkMIPS 1.0 against zkMIPS 0.3.0 using the zkVM-benchmarks suite (https://github.com/zkMIPS/zkvm-benchmarks), running on AWS r6a.8xlarge.

Results below (lower is better):

Across a wide variety of workloads, zkMIPS v1.0 consistently delivers 6x-19x improvements in performance over v0.3. 

For a performance comparison with other leading zkVM’s, see: https://docs.zkm.io/introduction/performance.html#performance-of-zkmips

A Developer Toolkit

zkMIPS 1.0 ships with a full toolchain and SDK, including:

  • A compiler toolchain targeting mipsel-zkm-zkvm-elf
  • A zkm_sdk Rust crate for local proof generation and verification
  • Support for Core, Compressed, Groth16, and PLONK proofs
  • A network prover integration with the ZKM Proof Network
  • Guest patches and precompile support for common cryptographic libraries

Developers can get started in minutes with:

curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/zkMIPS/toolchain/refs/heads/main/setup.sh | sh

Ecosystem Readiness

zkMIPS 1.0 is already integrated into the ZKM Proof Network and is live-proving Ethereum mainnet blocks as part of the Ethereum Foundation’s EthProofs initiative.

It's also in production with GOAT Network, a Bitcoin L2 powered by BitVM2 and built entirely on zkMIPS. This demonstrates the first real-world deployment of zkMIPS as a trust-minimized Bitcoin execution environment, with further integrations underway across AI, Optimistic Rollup upgrades, and more.

Using zkMIPS 1.0 on the ZKM Proof Network

The same 6x-19x performance improvements achieved in local benchmarks now apply to network proving as well, enabling significantly faster proof generation for supported programs.

zkMIPS 1.0 introduces a new circuit architecture, so verifier keys must be regenerated. Proofs generated with zkMIPS 1.0 are not compatible with previous versions.

All proof types - Groth16, PLONK, and compressed STARKs - are supported with zkMIPS 1.0 on the ZKM Proof Network.

If you are already using the ZKM Project Template (https://github.com/zkMIPS/zkm-project-template), you don’t have to change anything on the prover side to use zkMIPS 1.0. For verification, just regenerate the verification key.

If you're using the local prover, zkMIPS 1.0 support is coming soon. In the meantime, follow this guide to get started: https://docs.zkm.io/dev/prover.html#prover

Make sure to pull the latest zkm_sdk crate (from the main branch) to ensure compatibility with the zkMIPS 1.0 toolchain.

We also provide a set of patched crates to speed up proof generation: https://docs.zkm.io/dev/patched-crates.html

What Comes Next

zkMIPS will continue to evolve. More patches, better cost models, broader precompile support, and deeper integration into rollups and trustless bridges are underway.

We're building toward a unified proving infrastructure - one that can support multiple chains, multiple proof types, and radically improved developer experience.

zkMIPS 1.0 is the milestone that makes that real, but there is much more to come.

Try it. Fork it. Prove it.

Developer Track

With the release of zkMIPS 1.0, we’re entering the final phase of the ZKM Early Contributor Program – focused on developers. If you’ve been waiting for the right moment to start building with zkMIPS, this is it. 

Key tasks include building and publishing zkMIPS-powered applications, contributing to the zkMIPS toolchain or example projects, and producing educational content to help onboard others. 

This is your chance to help shape the zkVM ecosystem from the ground up – earning ZKM POINTS in the process.

Get started with zkMIPS 1.0:
ZKM Docs

Build with zkMIPS 1.0: ZKM Github   

Developer Track Submissions: ZKM Developer Track

Contact the ZKM team for support:
ZKM Discord 

More articles
Analysis of The Plonky2 Protocol
Plonky2 is a zkSNARK protocol based on polynomial commitment and the Plonk-based PIOP interactive proof. It focuses on achieving efficient zkSNARK through the FRI technique. The primary goal of Plonky2 is to improve the efficiency of traditional zkSNARKs in recursive zero-knowledge proof scenarios while enhancing post-quantum security. Its core concept is leveraging the FRI (Fast Reed-Solomon Interactive Oracle Proof of Proximity) to allow efficient polynomial verification and using random sampling to enhance the integrity and security of the protocol.
传统 STARK vs Circle
STARK(可扩展的透明知识论证)是埃利·本·萨森及其同事在2018年推出的一种证明系统,与传统的SNARK系统相比,它具有更好的可扩展性和透明度。STARK 的工作原理是将复杂的计算转换为算术电路,然后将其表示为多项式评估问题。为了在计算过程中隐藏中间结果,使用了多项式承诺,同时允许验证者对这些结果进行采样和检查。通过应用低度扩展,将复杂的计算简化为验证低度多项式,然后使用高效的交互式证明协议 FRI 来检查多项式是否为低度多项式。该技术在实现隐私保护和可验证计算方面具有广泛的应用。
zkMIPS 1.0 – Production-Ready, Performance-Optimized, and Open for Developers

zkMIPS 1.0 is here - our most significant leap toward real-time proving, following months of careful engineering and system-level breakthroughs.

We’ve been heads-down refining every layer of the stack - now it’s ready: the first production-ready version of our MIPS-based zkVM. This upgrade delivers a 6x-19x performance improvement over zkMIPS 0.3.0 and is a major breakthrough in our attempt to build the most simple, stable, and scalable foundation for real-time verifiable computation.

zkMIPS 1.0 is the result of a full-stack overhaul: new architecture support, optimized proving systems, memory checking mechanisms, chip decomposition, and precompile strategy. Together, these updates make zkMIPS a highly performant proving infrastructure for the next generation of verifiable applications.

Key Upgrades in zkMIPS 1.0

Support for MIPS32r2
We’ve upgraded from MIPS2 to the MIPS32r2 ISA, unlocking access to a broader opcode set (e.g. MADDU) and compiler-level optimizations. This reduces program size, enabling more efficient execution and smaller trace matrices during proof generation.

Powered by Plonky3 and Koala Prime Field
zkMIPS now leverages Plonky3 - an advanced STARK backend using the FRI protocol - and adapts SP1's circuit builder and recursion infrastructure. The KoalaBear 31-bit prime significantly accelerates arithmetic operations compared to the previous 64-bit Goldilocks setup.

Multiset Hashing for Memory Consistency
We’ve replaced Merkle trees with multiset hashing for memory consistency checks. This reduces witness size, minimizes communication overhead, and enables parallel verification.

Area-Minimized Chip Design
zkMIPS partitions circuits into modular ‘chips’ that minimize constraint layout area. This reduces proof generation costs while preserving completeness. Applied across CPU and memory subsystems.

Precompiles for Hot Paths
Heavy operations like Keccak and field arithmetic are abstracted into precompiles, reducing constraint payload and speeding up verification.

Benchmarking the Performance Gains

We benchmarked zkMIPS 1.0 against zkMIPS 0.3.0 using the zkVM-benchmarks suite (https://github.com/zkMIPS/zkvm-benchmarks), running on AWS r6a.8xlarge.

Results below (lower is better):

Across a wide variety of workloads, zkMIPS v1.0 consistently delivers 6x-19x improvements in performance over v0.3. 

For a performance comparison with other leading zkVM’s, see: https://docs.zkm.io/introduction/performance.html#performance-of-zkmips

A Developer Toolkit

zkMIPS 1.0 ships with a full toolchain and SDK, including:

  • A compiler toolchain targeting mipsel-zkm-zkvm-elf
  • A zkm_sdk Rust crate for local proof generation and verification
  • Support for Core, Compressed, Groth16, and PLONK proofs
  • A network prover integration with the ZKM Proof Network
  • Guest patches and precompile support for common cryptographic libraries

Developers can get started in minutes with:

curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/zkMIPS/toolchain/refs/heads/main/setup.sh | sh

Ecosystem Readiness

zkMIPS 1.0 is already integrated into the ZKM Proof Network and is live-proving Ethereum mainnet blocks as part of the Ethereum Foundation’s EthProofs initiative.

It's also in production with GOAT Network, a Bitcoin L2 powered by BitVM2 and built entirely on zkMIPS. This demonstrates the first real-world deployment of zkMIPS as a trust-minimized Bitcoin execution environment, with further integrations underway across AI, Optimistic Rollup upgrades, and more.

Using zkMIPS 1.0 on the ZKM Proof Network

The same 6x-19x performance improvements achieved in local benchmarks now apply to network proving as well, enabling significantly faster proof generation for supported programs.

zkMIPS 1.0 introduces a new circuit architecture, so verifier keys must be regenerated. Proofs generated with zkMIPS 1.0 are not compatible with previous versions.

All proof types - Groth16, PLONK, and compressed STARKs - are supported with zkMIPS 1.0 on the ZKM Proof Network.

If you are already using the ZKM Project Template (https://github.com/zkMIPS/zkm-project-template), you don’t have to change anything on the prover side to use zkMIPS 1.0. For verification, just regenerate the verification key.

If you're using the local prover, zkMIPS 1.0 support is coming soon. In the meantime, follow this guide to get started: https://docs.zkm.io/dev/prover.html#prover

Make sure to pull the latest zkm_sdk crate (from the main branch) to ensure compatibility with the zkMIPS 1.0 toolchain.

We also provide a set of patched crates to speed up proof generation: https://docs.zkm.io/dev/patched-crates.html

What Comes Next

zkMIPS will continue to evolve. More patches, better cost models, broader precompile support, and deeper integration into rollups and trustless bridges are underway.

We're building toward a unified proving infrastructure - one that can support multiple chains, multiple proof types, and radically improved developer experience.

zkMIPS 1.0 is the milestone that makes that real, but there is much more to come.

Try it. Fork it. Prove it.

Developer Track

With the release of zkMIPS 1.0, we’re entering the final phase of the ZKM Early Contributor Program – focused on developers. If you’ve been waiting for the right moment to start building with zkMIPS, this is it. 

Key tasks include building and publishing zkMIPS-powered applications, contributing to the zkMIPS toolchain or example projects, and producing educational content to help onboard others. 

This is your chance to help shape the zkVM ecosystem from the ground up – earning ZKM POINTS in the process.

Get started with zkMIPS 1.0:
ZKM Docs

Build with zkMIPS 1.0: ZKM Github   

Developer Track Submissions: ZKM Developer Track

Contact the ZKM team for support:
ZKM Discord