基于矩阵模式处理器的数据处理方法和装置制造方法及图纸

技术编号:39723318 阅读:10 留言:0更新日期:2023-12-17 23:28
本申请实施例公开基于矩阵模式处理器的数据处理方法及装置,该数据处理方法可以通过对环上多项式乘法问题进行适配于矩阵模式处理器的矩阵化处理,使得矩阵模式处理器能够应用于环上多项式乘法的计算场景,拓宽了矩阵模式处理器的使用场景,并且充分利用到矩阵模式处理器的算力解决基于环上多项式乘法的各种业务处理问题,提升这类业务的处理速度。以格密码为例,格密码的加密速度瓶颈即为环上多项式乘法,在格密码场景中基于本申请实施例提供的方法对加密参数进行数据处理,可以突破格密码加密速度瓶颈,快速得到格密码的加密结果。快速得到格密码的加密结果。快速得到格密码的加密结果。

【技术实现步骤摘要】
基于矩阵模式处理器的数据处理方法和装置


[0001]本申请实施例涉及计算机
,尤其涉及基于矩阵模式处理器的数据处理方法和装置。

技术介绍

[0002]环上多项式乘法是一种对于格密码而言十分重要的算子,该算子特别耗时间,从而成为了格密码的计算瓶颈。得益于人工智能的发展,与之相关的应用越来越普及,从而促进了用于进行人工智能计算的处理器或者加速器,这些处理器或者加速器针对特定算法操作(如矩阵乘法操作)的性能远高于一般的通用处理器。这类处理器或者加速器的算力在人工智能领域中虽然可以充分发挥作用,但是,这类处理器或者加速器的设计架构是为了人工智能计算而被特别设置的,不能直接适用于解决环上多项式乘法的计算问题,因此,相关技术目前难以利用到这类处理器或者加速器的算力解决格密码的计算瓶颈问题。

技术实现思路

[0003]为了解决上述至少一个技术问题,本申请实施例提供基于矩阵模式处理器的数据处理方法和装置。
[0004]一方面,本申请实施例提供了一种基于矩阵模式处理器的数据处理方法,所述方法包括:
[0005]接收业务处理组件发出的目标任务,所述目标任务为基于环上多项式乘法对业务数据进行处理的任务,所述目标任务中的多项式环多项式a和多项式b中各参数均属于所述业务数据,其中,n=l2,l为正整数且l≥2;
[0006]对多项式a和b分别进行适配于矩阵模式处理器的矩阵化处理,得到对应的第一矩阵A和l个第二子矩阵B
m
,m为大于等于0并且小于l的正整数,对于第一矩阵A中的第t行元素形成的第一序列和任一所述第二子矩阵B
m
中第p列元素形成的第二序列,第一元素和第二元素分别在多项式a和b各自对应的下标的和相对于n的余数为预设值,所述第一元素和所述第二元素分别在所述第一序列和所述第二序列中具备相同位置,0≤t,p<l;
[0007]根据所述第一矩阵A和l个第二子矩阵B
m
生成矩阵模式处理指令,将所述矩阵模式处理指令传输至矩阵模式处理器,所述矩阵模式处理指令用于触发所述矩阵模式处理器对所述第一矩阵A和l个第二子矩阵B
m
分别进行矩阵乘法操作,得到对应的矩阵C
m

[0008]基于矩阵C
m
执行所述目标任务,将所述目标任务的执行结果返回至所述业务处理组件。
[0009]另一方面,本申请实施例提供一种基于矩阵模式处理器的数据处理装置,所述装置包括:
[0010]目标任务获取模块,用于接收业务处理组件发出的目标任务,所述目标任务为基于环上多项式乘法对业务数据进行处理的任务,所述目标任务中的多项式环多项式a和多项式b中各参数均属于所述业务数据,其中,n=l2,l
为正整数且l≥2;
[0011]矩阵化处理模块,用于对多项式a和b分别进行适配于矩阵模式处理器的矩阵化处理,得到对应的第一矩阵A和l个第二子矩阵B
m
,m为大于等于0并且小于l的正整数,对于第一矩阵A中的第t行元素形成的第一序列和任一所述第二子矩阵B
m
中第p列元素形成的第二序列,第一元素和第二元素分别在多项式a和b各自对应的下标的和相对于n的余数为预设值,所述第一元素和所述第二元素分别在所述第一序列和所述第二序列中具备相同位置,0≤t,p<l;
[0012]矩阵处理结果输出模块,用于根据所述第一矩阵A和l个第二子矩阵B
m
生成矩阵模式处理指令,将所述矩阵模式处理指令传输至矩阵模式处理器,所述矩阵模式处理指令用于触发所述矩阵模式处理器对所述第一矩阵A和l个第二子矩阵B
m
分别进行矩阵乘法操作,得到对应的矩阵C
m

[0013]任务结果输出模块,用于基于矩阵C
m
执行所述目标任务,将所述目标任务的执行结果返回至所述业务处理组件。
[0014]另一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现上述的一种基于矩阵模式处理器的数据处理方法。
[0015]另一方面,本申请实施例提供了一种电子设备,包括至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现上述的一种基于矩阵模式处理器的数据处理方法。
[0016]另一方面,本申请实施例提供了一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现上述的一种基于矩阵模式处理器的数据处理方法。
[0017]本申请实施例提供了一种基于矩阵模式处理器的数据处理方法,该数据处理方法可以基于矩阵模式处理器执行环上多项式乘法问题,通过对环上多项式乘法问题进行适配于矩阵模式处理器的矩阵化处理,将环上多项式乘法问题转化为可以依赖矩阵运算解决的问题,从而充分利用矩阵模式处理器加速相关矩阵乘法的实现以及乘积矩阵到乘积多项式的转化,达到得到环上多项式乘法结果的目的,从而可以充分利用到矩阵模式处理器的算力解决环上多项式乘法问题,提升环上多项式乘法的处理速度,实现矩阵模式处理器的跨领域应用,矩阵模式处理器能够应用于环上多项式乘法的计算场景,拓宽了矩阵模式处理器的使用场景,并且充分利用到矩阵模式处理器的算力解决基于环上多项式乘法的各种业务处理问题,提升这类业务的处理速度。以格密码为例,格密码的加密速度瓶颈即为环上多项式乘法,在格密码场景中基于本申请实施例提供的方法对加密参数进行数据处理,可以突破格密码加密速度瓶颈,快速得到格密码的加密结果。本申请实施例并不对矩阵模式处理器进行限定,前述的人工智能领域的处理器或者加速器都支持矩阵乘法操作,都可以被认为是矩阵模式处理器,比如,NVI D IA的Tensor Core就是典型的矩阵模式处理器。
附图说明
[0018]为了更清楚地说明本申请实施例或相关技术中的技术方案和优点,下面将对实施例或相关技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅
仅是本申请实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
[0019]图1是本申请实施例提供的基于矩阵模式处理器的数据处理方法的一种可行的实施框架示意图;
[0020]图2是本申请实施例提供的基于矩阵模式处理器的数据处理方法的流程示意图;
[0021]图3是本申请实施例提供的乘法操作执行示意图;
[0022]图4是本申请实施例提供的目标任务的输出结果执行示意图;
[0023]图5是本申请实施例提供的基于矩阵模式处理器的数据处理装置的框图;
[0024]图6是本申请实施例提供的一种用于实现本申请实施例所提供的方法的设备的硬件结构示意图。
具体实施方式
...

【技术保护点】

【技术特征摘要】
1.一种基于矩阵模式处理器的数据处理方法,其特征在于,所述方法包括:接收业务处理组件发出的目标任务,所述目标任务为基于环上多项式乘法对业务数据进行处理的任务,所述目标任务中的多项式环多项式a和多项式b中各参数均属于所述业务数据,其中,n=l2,l为正整数且l≥2;对多项式a和b分别进行适配于矩阵模式处理器的矩阵化处理,得到对应的第一矩阵A和l个第二子矩阵B
m
,m为大于等于0并且小于l的正整数,对于第一矩阵A中的第t行元素形成的第一序列和任一所述第二子矩阵B
m
中第p列元素形成的第二序列,第一元素和第二元素分别在多项式a和b各自对应的下标的和相对于n的余数为预设值,所述第一元素和所述第二元素分别在所述第一序列和所述第二序列中具备相同位置,0≤t,p<l;根据所述第一矩阵A和l个第二子矩阵B
m
生成矩阵模式处理指令,将所述矩阵模式处理指令传输至矩阵模式处理器,所述矩阵模式处理指令用于触发所述矩阵模式处理器对所述第一矩阵A和l个第二子矩阵B
m
分别进行矩阵乘法操作,得到对应的矩阵C
m
;基于矩阵C
m
执行所述目标任务,将所述目标任务的执行结果返回至所述业务处理组件。2.根据权利要求1所述的方法,其特征在于,所述对多项式a和b分别进行适配于矩阵模式处理器的矩阵化处理,得到对应的第一矩阵A和l个第二子矩阵B
m
,包括:将多项式a的系数a
k
填充在l行l列的矩阵中,得到所述第一矩阵A,k表征对应的多项式项的次数,k为大于等于0并且小于n的正整数;将多项式b的系数b
k
填充在l个l行l列的矩阵中,得到l个所述第二子矩阵B
m
。3.根据权利要求1或2所述的方法,其特征在于,针对同一个t和l,各第一元素和对应的第二元素分别在多项式a和b各自对应的下标的和相对于n的余数均为同一个小于n的整数。4.根据权利要求3所述的方法,其特征在于,所述对多项式a和b分别进行适配于矩阵模式处理器的矩阵化处理,得到对应的第一矩阵A和l个第二子矩阵B
m
,包括:对于第一矩阵A中第i行第j列的元素α
ij
和第二子矩阵B
m
与α
ij
位于相同位置的β
ij
,0≤i,j<l,第一矩阵A的排布满足α
ij
=a
j*l+i
,第二子矩阵B
m
的排布满足β
ij
=b
t+j
,其中t=(i*(l

1)+m)*l mod n。5.根据权利要求4所述的方法,其特征在于,所述矩阵模式处理器对所述第一矩阵A和l个第二子矩阵B
m
分别进行矩阵乘法操作,得到对应的矩阵C
m
,包括:将所述第一矩阵A和l个第二子矩阵B
m
中的各元素转化为矩阵模式处理器计算所需的数据类型;基于矩阵处理接口对转化结果执行矩阵乘法计算任务并输出对应的矩阵C
m
;其中,所述矩阵处理接口为所述矩阵模式处理器提供的、通过多线程并发方式进行计算的并且基于数据分片的矩阵乘法计算接口。6.根据权利要求1所述的方法,其特征在于,所述基于矩阵C
m
...

【专利技术属性】
技术研发人员:郑昉昱范广吴怡
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1