Table of Contents
Fetching ...

Yoimiya: A Scalable Framework for Optimal Resource Utilization in ZK-SNARK Systems

Zheming Ye, Xiaodong Qi, Zhao Zhang, Cheqing Jin

TL;DR

This work addresses the throughput and memory bottlenecks in ZK-SNARK proof generation by introducing Yoimiya, a scalable framework that pipelines witness generation (WG) and proof computation (PC) across partitioned subcircuits. It automatically partitions large Circuits into serializable, balanced subcircuits using a topological sort-based greedy algorithm on a reversed constraint dependency graph, reducing memory overhead while preserving correctness. A scheduler implements a scalable pipeline with ExDAG-based execution, enabling overlap between WG and PC across multiple tasks and adjusting resource distribution to balance phase latencies. Experimental results on circuits with millions of constraints show significant memory reductions and improved throughput, illustrating the approach’s practicality for large-scale ZK-SNARK workloads.

Abstract

With the widespread adoption of Zero-Knowledge Proof systems, particularly ZK-SNARK, the efficiency of proof generation, encompassing both the witness generation and proof computation phases, has become a significant concern. While substantial efforts have successfully accelerated proof computation, progress in optimizing witness generation remains limited, which inevitably hampers overall efficiency. In this paper, we propose Yoimiya, a scalable framework with pipeline, to optimize the efficiency in ZK-SNARK systems. First, Yoimiya introduces an automatic circuit partitioning algorithm that divides large circuits of ZK-SNARK into smaller subcircuits, the minimal computing units with smaller memory requirement, allowing parallel processing on multiple units. Second, Yoimiya decouples witness generation from proof computation, and achieves simultaneous executions over units from multiple circuits. Moreover, Yoimiya enables each phase scalable separately by configuring the resource distribution to make the time costs of the two phases aligned, maximizing the resource utilization. Experimental results confirmed that our framework effectively improves the resource utilization and proof generation speed.

Yoimiya: A Scalable Framework for Optimal Resource Utilization in ZK-SNARK Systems

TL;DR

This work addresses the throughput and memory bottlenecks in ZK-SNARK proof generation by introducing Yoimiya, a scalable framework that pipelines witness generation (WG) and proof computation (PC) across partitioned subcircuits. It automatically partitions large Circuits into serializable, balanced subcircuits using a topological sort-based greedy algorithm on a reversed constraint dependency graph, reducing memory overhead while preserving correctness. A scheduler implements a scalable pipeline with ExDAG-based execution, enabling overlap between WG and PC across multiple tasks and adjusting resource distribution to balance phase latencies. Experimental results on circuits with millions of constraints show significant memory reductions and improved throughput, illustrating the approach’s practicality for large-scale ZK-SNARK workloads.

Abstract

With the widespread adoption of Zero-Knowledge Proof systems, particularly ZK-SNARK, the efficiency of proof generation, encompassing both the witness generation and proof computation phases, has become a significant concern. While substantial efforts have successfully accelerated proof computation, progress in optimizing witness generation remains limited, which inevitably hampers overall efficiency. In this paper, we propose Yoimiya, a scalable framework with pipeline, to optimize the efficiency in ZK-SNARK systems. First, Yoimiya introduces an automatic circuit partitioning algorithm that divides large circuits of ZK-SNARK into smaller subcircuits, the minimal computing units with smaller memory requirement, allowing parallel processing on multiple units. Second, Yoimiya decouples witness generation from proof computation, and achieves simultaneous executions over units from multiple circuits. Moreover, Yoimiya enables each phase scalable separately by configuring the resource distribution to make the time costs of the two phases aligned, maximizing the resource utilization. Experimental results confirmed that our framework effectively improves the resource utilization and proof generation speed.

Paper Structure

This paper contains 54 sections, 3 equations, 13 figures, 3 algorithms.

Figures (13)

  • Figure 1: CPU usage with continuous tasks over time.
  • Figure 2: Performance for witness generation and proof computation across different numbers of CPUs.
  • Figure 3: The complete process of a ZK-SNARK protocol.
  • Figure 4: An example of the ZK-SNARK circuit.
  • Figure 5: System architecture and overall workflow of Yoimiya.
  • ...and 8 more figures

Theorems & Definitions (4)

  • definition 1: Constraint Dependency Graph
  • definition 2: Depth
  • definition 3: Out-Degree
  • definition 4: Rev-CDG