System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种矩阵乘算子的优化方法、设备、存储介质及程序产品技术_技高网

一种矩阵乘算子的优化方法、设备、存储介质及程序产品技术

技术编号:44386458 阅读:2 留言:0更新日期:2025-02-25 10:02
本申请实施例提供了一种矩阵乘算子的优化方法、设备、存储介质及程序产品,涉及人工智能技术领域,该方法包括:在执行矩阵乘算子之前,确定矩阵乘算子的多个输入矩阵各自在内存中的目标布局方式以及矩阵乘算子的目标相乘方式,使得目标布局方式和目标相乘方式支持在矩阵乘算子的执行过程中采用连续访存方式从内存中读取多个输入矩阵。这样,在矩阵乘算子的执行过程中,人工智能芯片可采用连续访存方式读取多个输入矩阵(即读取在内存中连续存储的数据)进行矩阵乘计算;相较于读取非连续存储数据来说,人工智能芯片对连续存储数据的读取性能更高,这样有效提高了矩阵乘算子执行过程中的数据读取效率,从而提高矩阵乘算子的计算效率。

【技术实现步骤摘要】

本申请实施例涉及人工智能,尤其涉及一种矩阵乘算子的优化方法、设备、存储介质及程序产品


技术介绍

1、人工智能模型通常指被训练用来进行推理预测的神经网络模型,例如图像推理模型、语音推理模型等。人工智能模型的运算可以由计算图(computation graph)中的算子(operator)来实现。算子指的是对人工智能模型中各层的张量所做的各种运算。矩阵乘算子是人工智能模型中常见并且耗时较长的算子,加速矩阵乘算子的计算可以加速人工智能模型的训练效率和推理效率。

2、相关技术下,人工智能芯片在执行矩阵乘算子的过程中,若请求的数据离散地分布在内存中,则人工智能芯片需要读取这些离散分布(即非连续存储)在内存中的数据。由于人工智能芯片从内存中读取非连续存储的数据时,效率较低,因此会导致矩阵乘算子的性能下降。


技术实现思路

1、本申请实施例提供了一种矩阵乘算子的优化方法、设备、存储介质及程序产品,用于在矩阵乘算子计算过程中,提高从内存中读取数据的速度,从而提高矩阵乘算子的性能。

2、一方面,本申请实施例提供了一种矩阵乘算子的优化方法,包括:

3、在执行矩阵乘算子之前,确定所述矩阵乘算子的多个输入矩阵各自在内存中的目标布局方式,以及所述矩阵乘算子的目标相乘方式;

4、其中,所述目标布局方式和所述目标相乘方式,支持在所述矩阵乘算子的执行过程中采用连续访存方式从所述内存中读取所述多个输入矩阵。

5、一方面,本申请实施例提供了一种矩阵乘算子的优化装置,包括:

6、配置模块,用于在执行矩阵乘算子之前,确定所述矩阵乘算子的多个输入矩阵各自在内存中的目标布局方式,以及所述矩阵乘算子的目标相乘方式;

7、其中,所述目标布局方式和所述目标相乘方式,支持在所述矩阵乘算子的执行过程中采用连续访存方式从所述内存中读取所述多个输入矩阵。

8、可选地,所述多个输入矩阵包括:左矩阵和右矩阵;所述多个输入矩阵各自的目标布局方式和所述矩阵乘算子的目标相乘方式为以下多种形式中的任意一种:

9、所述左矩阵的目标布局方式为行主序方式、所述右矩阵的目标布局方式为列主序方式、所述目标相乘方式为内积方式;或者,

10、所述左矩阵的目标布局方式为列主序方式、所述右矩阵的目标布局方式为行主序方式、所述目标相乘方式为外积方式。

11、可选地,所述配置模块具体用于:

12、获取所述矩阵乘算子的多个输入矩阵各自在所述内存中的目标布局方式;

13、从多个候选相乘方式中,选取与所述多个输入矩阵各自的目标布局方式匹配的目标相乘方式。

14、可选地,所述多个候选相乘方式包括:内积方式和外积方式;所述多个输入矩阵包括左矩阵和右矩阵;

15、所述配置模块具体用于:

16、当所述左矩阵的目标布局方式为行主序方式,且所述右矩阵的目标布局方式为列主序方式时,选取所述内积方式作为所述目标相乘方式;

17、当所述左矩阵的目标布局方式为列主序方式,且所述右矩阵的目标布局方式为行主序方式时,选取所述外积方式作为所述目标相乘方式。

18、可选地,所述配置模块具体用于:

19、基于所述矩阵乘算子的参数配置信息,从多个候选相乘方式中获得所述矩阵乘算子的目标相乘方式;

20、基于所述目标相乘方式从多个候选布局方式中,选取所述多个输入矩阵各自的目标布局方式。

21、可选地,所述矩阵乘算子的参数配置信息包括:所述多个输入矩阵各自的形状信息;

22、所述配置模块具体用于:

23、针对所述多个候选相乘方式,分别执行以下操作:基于所述多个输入矩阵各自的形状信息,获得采用一个候选相乘方式对所述多个输入矩阵进行矩阵乘计算时对应的预计处理性能;

24、基于所述多个候选相乘方式各自对应的预计处理性能,从所述多个候选相乘方式中获得所述矩阵乘算子的目标相乘方式。

25、可选地,所述配置模块具体用于:

26、当采用所述一个候选相乘方式对所述多个输入矩阵进行矩阵乘计算时,基于所述多个输入矩阵各自的形状信息,获得加载所述多个输入矩阵所需的第一时钟周期数;以及,基于所述多个输入矩阵各自的形状信息,获得对所述多个输入矩阵进行计算所需的第二时钟周期数;

27、将所述第一时钟周期数和所述第二时钟周期数中的最大时钟周期数,作为所述一个候选相乘方式对应的预计处理性能。

28、可选地,所述多个候选布局方式包括:行主序方式和列主序方式;所述多个输入矩阵包括左矩阵和右矩阵;

29、所述配置模块具体用于:

30、当所述目标相乘方式为内积方式时,将所述行主序方式作为所述左矩阵的目标布局方式,以及将所述列主序方式作为所述右矩阵的目标布局方式;

31、当所述目标相乘方式为外积方式时,将所述列主序方式作为所述左矩阵的目标布局方式,以及将所述行主序方式作为所述右矩阵的目标布局方式。

32、一方面,本申请实施例提供了一种计算机设备,包括存储器、人工智能芯片及存储在存储器上并可在人工智能芯片上运行的计算机程序,所述人工智能芯片执行所述计算机程序时实现上述矩阵乘算子的优化方法的步骤。

33、一方面,本申请实施例提供了一种计算机可读存储介质,其存储有可由计算机设备执行的计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行上述矩阵乘算子的优化方法的步骤。

34、一方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机设备执行时,使所述计算机设备执行上述矩阵乘算子的优化方法的步骤。

35、本申请实施例中,在执行矩阵乘算子之前,确定矩阵乘算子的多个输入矩阵各自在内存中的目标布局方式以及矩阵乘算子的目标相乘方式,使得目标布局方式和目标相乘方式支持在矩阵乘算子的执行过程中采用连续访存方式从内存中读取多个输入矩阵。这样,在矩阵乘算子的执行过程中,人工智能芯片可采用连续访存方式读取多个输入矩阵(即读取在内存中连续存储的数据)进行矩阵乘计算;相较于读取非连续存储数据来说,人工智能芯片对连续存储数据的读取性能更高,这样有效提高了矩阵乘算子执行过程中的数据读取效率,从而提高矩阵乘算子的计算效率。

本文档来自技高网...

【技术保护点】

1.一种矩阵乘算子的优化方法,其特征在于,包括:

2.如权利要求1所述的方法,其特征在于,所述多个输入矩阵包括:左矩阵和右矩阵;所述多个输入矩阵各自的目标布局方式和所述矩阵乘算子的目标相乘方式为以下多种形式中的任意一种:

3.如权利要求1所述的方法,其特征在于,所述确定所述矩阵乘算子的多个输入矩阵各自在内存中的目标布局方式,以及所述矩阵乘算子的目标相乘方式,包括:

4.如权利要求3所述的方法,其特征在于,所述多个候选相乘方式包括:内积方式和外积方式;所述多个输入矩阵包括左矩阵和右矩阵;

5.如权利要求1所述的方法,其特征在于,所述确定所述矩阵乘算子的多个输入矩阵各自在内存中的目标布局方式,以及所述矩阵乘算子的目标相乘方式,包括:

6.如权利要求5所述的方法,其特征在于,所述矩阵乘算子的参数配置信息包括:所述多个输入矩阵各自的形状信息;

7.如权利要求6所述的方法,其特征在于,所述基于所述多个输入矩阵各自的形状信息,获得采用一个候选相乘方式对所述多个输入矩阵进行矩阵乘计算时对应的预计处理性能,包括:

>8.如权利要求5所述的方法,其特征在于,所述多个候选布局方式包括:行主序方式和列主序方式;所述多个输入矩阵包括左矩阵和右矩阵;

9.一种计算机设备,包括存储器、人工智能芯片及存储在存储器上并可在人工智能芯片上运行的计算机程序,其特征在于,所述人工智能芯片执行所述计算机程序时实现如权利要求1~8任一项所述方法的步骤。

10.一种计算机可读存储介质,其特征在于,其存储有可由计算机设备执行的计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行如权利要求1~8任一项所述方法的步骤。

11.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机设备执行时,使所述计算机设备执行如权利要求1-8任一项所述方法的步骤。

...

【技术特征摘要】

1.一种矩阵乘算子的优化方法,其特征在于,包括:

2.如权利要求1所述的方法,其特征在于,所述多个输入矩阵包括:左矩阵和右矩阵;所述多个输入矩阵各自的目标布局方式和所述矩阵乘算子的目标相乘方式为以下多种形式中的任意一种:

3.如权利要求1所述的方法,其特征在于,所述确定所述矩阵乘算子的多个输入矩阵各自在内存中的目标布局方式,以及所述矩阵乘算子的目标相乘方式,包括:

4.如权利要求3所述的方法,其特征在于,所述多个候选相乘方式包括:内积方式和外积方式;所述多个输入矩阵包括左矩阵和右矩阵;

5.如权利要求1所述的方法,其特征在于,所述确定所述矩阵乘算子的多个输入矩阵各自在内存中的目标布局方式,以及所述矩阵乘算子的目标相乘方式,包括:

6.如权利要求5所述的方法,其特征在于,所述矩阵乘算子的参数配置信息包括:所述多个输入矩阵各自的形状信息;

7.如权利要求6所述的方法,其特征在于,所述基于所述多个输...

【专利技术属性】
技术研发人员:请求不公布姓名请求不公布姓名请求不公布姓名
申请(专利权)人:广州壁仞集成电路有限公司
类型:发明
国别省市:

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

1