System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 面向异构可重构架构的矩阵乘与矢量计算实现的融合方法技术_技高网

面向异构可重构架构的矩阵乘与矢量计算实现的融合方法技术

技术编号:44366565 阅读:3 留言:0更新日期:2025-02-25 09:46
本申请涉及一种面向异构可重构架构的矩阵乘与矢量计算实现的融合方法。所述方法包括:矩阵乘单元基于输入数据运行矩阵乘算子;在所述矩阵乘单元基于所述输入数据得到部分输出结果的情况下,将所述部分输出结果传输至矢量运算单元;所述矢量运算单元将所述部分输出结果作为输入运行矢量运算算子,直至得到目标输出结果。采用本方法能够提高资源利用率。

【技术实现步骤摘要】

本申请涉及计算机架构,特别是涉及一种面向异构可重构架构的矩阵乘与矢量计算实现的融合方法


技术介绍

1、在异构可重构架构中,当前的推理技术主要采用逐个算子的计算推理方法。具体而言,前一个算子的计算过程受到计算单元所在芯片片上内存限制的影响,通常以分块的方式进行数据输入、计算和输出。当进行下一个算子的计算时,这一输入、计算和输出的过程会被重复执行。

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、在矩阵乘单元基于输入数据得到部分输出结果的情况下,将部分输出结果传输至矢量运算单元;

36、矢量运算单元将部分输出结果作为输入运行矢量运算算子,直至得到目标输出结果。

37、上述面向异构可重构架构的矩阵乘与矢量计算实现的融合方法,矩阵乘单元先基于输入数据运行矩阵乘算子;在矩阵乘单元基于输入数据得到部分输出结果的情况下,将部分输出结果传输至矢量运算单元;矢量运算单元将部分输出结果作为输入运行矢量运算算子,直至得到目标输出结果;该方法中,在矩阵乘单元生成部分输出结果的同时,矢量运算单元可以开始处理这些部分输出结果,从而实现了数据流的连续性和并行性,另外,分工明确的计算结构允许不同单元在不同的时间点发挥各自的优势,从而提高了计算资源的利用率。

本文档来自技高网...

【技术保护点】

1.一种面向异构可重构架构的矩阵乘与矢量计算实现的融合方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述将所述部分输出结果传输至矢量运算单元,包括:

3.根据权利要求1所述的方法,其特征在于,所述矩阵乘单元包括多个矩阵乘处理子单元,所述部分输出结果的确定过程,包括:

4.根据权利要求1-3任一项所述的方法,其特征在于,所述矢量运算单元上集成有激活函数映射功能。

5.一种面向异构可重构架构的矩阵乘与矢量计算实现的融合装置,其特征在于,所述装置包括:矩阵乘单元和矢量运算单元,所述矩阵乘单元与所述矢量运算单元通信连接;

6.根据权利要求5所述的装置,其特征在于,所述装置还包括共享内存,所述共享内存分别与所述矩阵乘单元和所述矢量运算单元通信连接;

7.根据权利要求5所述的装置,其特征在于,所述矩阵乘单元包括多个矩阵乘处理子单元;

8.根据权利要求5所述的装置,其特征在于,所述矢量运算单元包括基本矢量运算子单元、指数矢量运算子单元和对数矢量运算子单元;

9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述的方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。

...

【技术特征摘要】

1.一种面向异构可重构架构的矩阵乘与矢量计算实现的融合方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述将所述部分输出结果传输至矢量运算单元,包括:

3.根据权利要求1所述的方法,其特征在于,所述矩阵乘单元包括多个矩阵乘处理子单元,所述部分输出结果的确定过程,包括:

4.根据权利要求1-3任一项所述的方法,其特征在于,所述矢量运算单元上集成有激活函数映射功能。

5.一种面向异构可重构架构的矩阵乘与矢量计算实现的融合装置,其特征在于,所述装置包括:矩阵乘单元和矢量运算单元,所述矩阵乘单元与所述矢量运算单元通信连接;

6.根据权利要求5所述的装置,其特...

【专利技术属性】
技术研发人员:尹首一谷江源陆以宁韩慧明
申请(专利权)人:上海清华国际创新中心
类型:发明
国别省市:

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

1