In the context of zk-SNARK, MSM emerges as a major computational bottleneck, particularly due to its high computational and memory overhead. In this work, we exploit multiple levels of parallelism to effectively accelerate largescale MSM in zk-SNARKs. Firstly, a distributed parameter generation method is proposed in this paper to replace that of centralized method. Based on this methodology, the paper realizes a system with extraordinary scalability, capable of computing large-scale MSMs. Subsequently, the approach presented in this paper elevates the computation of Bellperson, the most prominent zero-knowledge proof system in real-world applications, from a single-node computation to a clustering mode, significantly enhancing its computational performance – a crucial advancement for practical applications. Finally, we implement a multi-level, fully parallelised MSM computing system by leveraging hierarchical sub-task partitioning and cross-node communication optimization, thereby thoroughly exploiting parallelism at diverse granularities. Experimental results show that in the cluster scenario, the proposed approach achieves acceleration ratios of approximately 3.60 and 6.50 times compared to the cutting-edge heterogeneous version Bellperson in dual-node and quad-node settings, respectively. On a single node, the proposed optimization approach achieves an acceleration ratio of 1.38 times compared to the current State-of-the-Art MSM calculation module of cuZK, outperforms the industry-popular Bellman by 186 times and the Bellperson by 1.96 times.
Read full abstract