国内刊号:51-1196/TP
国际刊号:1001-3695
发布日期:
作者:王锋,柴志雷,花鹏程,丁冬,王宁,
单位:1.江南大学a.人工智能与计算机学院;b.物联网工程学院,江苏无锡214122;2.江苏省模式识别与计算智能工程实验室,江苏无锡214122;
关键词:简洁非交互式零知识证明,多标量乘法,CUDA,异构计算系统,并行计算,
基金:国家自然科学基金资助项目(61972180);江苏省模式识别与计算智能工程实验室项目;;
针对zk-SNARK(zero-knowledge succinct non-interactive argument of knowledge)中计算最为耗时的多标量乘法(multi-scalar multiplication,MSM),提出了一种基于GPU的MSM并行计算方案。首先,对MSM进行细粒度任务分解,提升算法本身的计算并行性,以充分利用GPU的大规模并行计算能力。采用共享内存对同一窗口下的子MSM并行规约减少了数据传输开销。其次,提出了一种基于底层计算模块线程级任务负载搜索最佳标量窗口的窗口划分方法,以最小化MSM子任务的计算开销。最后,对标量形式转换所用数据存储结构进行优化,并通过数据重叠传输和通信时间隐藏,解决了大规模标量形式转换过程的时延问题。该MSM并行计算方法基于CUDA在NVIDIA GPU上进行了实现,并构建了完整的零知识证明异构计算系统。实验结果表明:所提出的方法相比目前业界最优的cuZK的MSM计算模块获得了1.38倍的加速比。基于所改进MSM的整体系统比业界流行的Bellman提升了186倍,同时比业界最优的异构版本Bellperson提升了1.96倍,验证了方法的有效性。
来源:2024年第6期
《计算机应用研究》期刊编辑部