通过处理器加速矩阵乘法的方法、计算设备和存储介质技术

技术编号:46064930 阅读:11 留言:0更新日期:2025-08-11 15:51
本说明书实施例提供一种通过处理器加速矩阵乘法的方法,所述处理器支持目标指令,所述目标指令用于对两个输入向量各自包括的多个预定维度的子向量分别对位进行点积,并将点积结果进行累加。所述方法包括:将第一矩阵中的目标行存入第一向量寄存器;多次执行第一操作,所述第一操作包括:从第二矩阵各列的各自指定位置分别截取子向量形成列数据,将所述列数据存入第二向量寄存器;对第一向量寄存器和第二向量寄存器中的向量执行所述目标指令,将点积结果按位累加至第三向量寄存器;对第三向量寄存器中的向量进行第一循环移动,用于下一次累加;根据多次执行第一操作后所述第三向量寄存器中的数据,得到所述目标行与所述第二矩阵的相乘结果行。

【技术实现步骤摘要】

本说明书一个或多个实施例涉及矩阵乘法操作,尤其涉及利用处理器加速矩阵乘法。


技术介绍

1、矩阵乘法是许多科学计算和工程应用(如深度学习、高性能计算等)的核心操作,但在传统处理器(例如cpu)上,其实现效率可能受到多重循环嵌套和内存访问瓶颈的限制,尤其是在处理大规模数据时。因此,期望能有改进的方案,其能加速矩阵乘法。


技术实现思路

1、根据第一方面,提供了一种通过处理器加速矩阵乘法的方法,所述处理器支持目标指令,所述目标指令用于对两个输入向量各自包括的多个预定维度的子向量分别对位进行点积,并将点积结果进行累加;所述方法包括:将第一矩阵中的目标行存入第一向量寄存器;多次执行第一操作,所述第一操作包括:从第二矩阵各列的各自指定位置分别截取子向量形成列数据,将所述列数据存入第二向量寄存器;对第一向量寄存器和第二向量寄存器中的向量执行所述目标指令,将点积结果按位累加至第三向量寄存器;对第三向量寄存器中的向量进行第一循环移动,用于下一次累加;根据多次执行第一操作后所述第三向量寄存器中的数据,得到所述目标行与所述第二矩阵的本文档来自技高网...

【技术保护点】

1.一种通过处理器加速矩阵乘法的方法,所述处理器支持目标指令,所述目标指令用于对两个输入向量各自包括的预定维度的多个子向量分别对位进行点积,并将点积结果进行累加;所述方法包括:

2.根据权利要求1所述的方法,其中,所述两个输入向量各自包括连续的n个子向量,各个子向量的所述预定维度均为m,所述第一和第二矩阵的维度均为n*n。

3.根据权利要求2所述的方法,其中,将第一矩阵中的目标行存入第一向量寄存器包括:将所述目标行复制m次存入第一向量寄存器。

4.根据权利要求2所述的方法,其中,从第二矩阵各列的各自指定位置分别截取子向量形成列数据,包括:

...

【技术特征摘要】

1.一种通过处理器加速矩阵乘法的方法,所述处理器支持目标指令,所述目标指令用于对两个输入向量各自包括的预定维度的多个子向量分别对位进行点积,并将点积结果进行累加;所述方法包括:

2.根据权利要求1所述的方法,其中,所述两个输入向量各自包括连续的n个子向量,各个子向量的所述预定维度均为m,所述第一和第二矩阵的维度均为n*n。

3.根据权利要求2所述的方法,其中,将第一矩阵中的目标行存入第一向量寄存器包括:将所述目标行复制m次存入第一向量寄存器。

4.根据权利要求2所述的方法,其中,从第二矩阵各列的各自指定位置分别截取子向量形成列数据,包括:

5.根据权利要求4所述的方法,其中,所述第一预定方向为向下的方向,并且所述多次为n/m次。

6.根据权利要求4所述的方法,其中,所述第一循环移动为向左循环移动;所述第二预定方向为向上的方向。

7.根据权利要求4所述的方法,其中,所述第一循环移动为向右循环移动;所述第二预定方向为向下的方向。

8.根据权利要求6所述的方法,其中,在任意第b次第一操作中,所述列数据是从第二矩阵的第b列开始向右循环依次从每列中截取...

【专利技术属性】
技术研发人员:郑昉昱边毅
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

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

1