Rust Fil proofs SUPRASEAL_C2 optimization

Session ses_397471a77ffewcsqhVBRPkcOu6 · 3597 messages · 37 segments

This sub-session achieved a comprehensive understanding and documentation of the SUPRASEAL_C2 Groth16 proof generation pipeline for Filecoin PoRep, identifying its ~200 GiB peak memory footprint and its root causes. The work produced a detailed background reference document mapping the entire call chain from Curio's Go task layer through Rust FFI into C++/CUDA kernels, with memory accounting and nine structural bottlenecks. Additionally, three composable optimization proposals were developed: Sequential Partition Synthesis to reduce peak memory by streaming partitions sequentially, Persistent Prover Daemon to eliminate SRS loading overhead, and Cross-Sector Batching to improve throughput by batching multiple sectors' circuits. A final round of micro-optimization analysis examined CPU synthesis hotpaths, GPU NTT/MSM characteristics, H-to-D transfer patterns, and the feasibility of recomputing a/b/c vectors on-the-fly. The overarching achievement is a shift from optimizing individual proof generation toward architecting a continuous, memory-efficient proving pipeline optimized for heterogeneous cloud rental markets.

The cuzk Proving Engine: A 37-Segment Journey Through the Architecture of SNARK Optimization 5536 words

Segments