北京天数微芯半导体科技有限公司肖利民获国家专利权
买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
龙图腾网获悉北京天数微芯半导体科技有限公司申请的专利一种面向zk-SNARK运算的GPU并行加速方法获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN115543616B 。
龙图腾网通过国家知识产权局官网在2026-02-24发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202211206857.X,技术领域涉及:G06F9/50;该发明授权一种面向zk-SNARK运算的GPU并行加速方法是由肖利民;沈润楠;肖希源;王良;郭为设计研发完成,并于2022-09-30向国家知识产权局提交的专利申请。
本一种面向zk-SNARK运算的GPU并行加速方法在说明书摘要公布了:本发明公开了一种面向zk‑SNARK运算的GPU并行加速方法,CPU执行输入输出任务,将待处理数据读入内存,CPU执行Prescan过程,根据给定进制划分指数,并将对应指数的底数分离;CPU为GPU分配内存空间和桶数组,将底数放入桶中;GPU根据桶数据执行BucketMul计算,为每个桶完成桶内数据乘积计算;GPU使用完成桶内乘积计算的值,执行WindowReduce操作,进行桶间组内乘积的计算;GPU将每一位的值整合起来,执行FinalReduce过程,使对应位的指数完成自乘,并将自乘后的数值相乘得到最终的结果。本发明在GPU上实行,可更好地支撑大规模数据计算处理的需求。
本发明授权一种面向zk-SNARK运算的GPU并行加速方法在权利要求书中公布了:1.一种面向zk-SNARK运算的GPU并行加速方法,其特征在于,包括: 步骤1:CPU执行输入输出任务,将待处理数据读入内存,CPU执行Prescan过程,根据给定进制划分指数,并将对应指数的底数分离;其中,输入输出任务指计算椭圆曲线有限域上的多重点加任务并给出结果M,为底数,分別为各项对应之指数;待处理数据即输入,具体过程为: 步骤1.1,CPU执行输入输出任务,将待处理数据读入内存,CPU执行Prescan任务,计算出每个桶内的元素索引,并为GPU设计分配区域存放; 步骤1.2,采用一次性分配的方式,使用标记数组记录每个桶对应的索引缓存区的起始位置与终止位置,从而划分出每个桶的索引缓存区; 所述步骤1.2中,根据指数的数值确定每个输入出现于桶的位置,对,,通过右移并取与,得出输入的指数在进制下第位的值,则索引应放入桶的索引缓存区; 步骤2:CPU为GPU分配内存空间和桶数组,将底数放入桶中; 步骤3:GPU根据桶数据执行BucketMul计算,为每个桶完成桶内数据乘积计算;所述BucketMul计算使用GPU的多线程能力完成,每个桶对应一个线程,则桶应当对应第个线程,该线程从属于对应桶的idxbuf区域读取索引,根据索引从输入取得数据,与结果相乘并返回; 步骤4:GPU使用完成桶内乘积计算的值,执行WindowReduce操作,进行桶间组内,也即指数某一位的全部底数乘积的计算,具体过程为: 步骤4.1,WindowReduce需要计算,将的计算任务分配给第i个线程完成,共需个线程;在完成向各线程分配任务后,利用累乘的思想进行各项数据的乘积,计算式为: 步骤4.2,实现的结果计算:将RunningSum过程和乘到总和上并进行迭代; 所述步骤4.2首先将变量RunningSum与初始化为单位元,其次从遍历到,每轮将乘到RunningSum上,并将RunningSum乘到上,遍历完成即得到最终所需的; 步骤5:GPU根据步骤4的计算结果,将每一位的值整合起来,执行FinalReduce过程,使对应位的指数完成自乘,并将自乘后的数值相乘得到最终的结果。
如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人北京天数微芯半导体科技有限公司,其通讯地址为:100083 北京市海淀区学院路35号世宁大厦14层;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。
以上内容由龙图腾AI智能生成。
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

皖公网安备 34010402703815号
请提出您的宝贵建议,有机会获取IP积分或其他奖励