System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 用于跨算子计算优化的方法及计算设备技术_技高网

用于跨算子计算优化的方法及计算设备技术

技术编号:41863033 阅读:15 留言:0更新日期:2024-06-27 18:35
本发明专利技术提供一种跨算子计算优化的方法和计算设备,所述方法用于人工智能数据流芯片的模型编译,所述方法包括:判断第一节点后的第二节点的计算逻辑是否满足优化条件,所述第一节点为反量化节点;当所述第二节点的计算逻辑满足优化条件时,则将反量化计算操作进行优化,得到优化计算逻辑;将所述优化计算逻辑得到的输出结果,直接输出至所述第二节点的后续节点,同时删除所述第二节点,实现跨算子计算优化。根据本发明专利技术的技术方案,能够对实际的计算逻辑进行变换,达到计算加速的目的,提高整体推理速度。

【技术实现步骤摘要】

本专利技术涉及人工智能,具体涉及一种跨算子计算优化的方法及计算设备。


技术介绍

1、人工智能模型中计算中,通常会为了加快计算同时节约存储资源的需要,将部分模型中的计算节点做量化并按uint8的方式进行计算存储,而后继节点则可能继续保持float32的浮点数计算方式。当某节点的输出数据为uint8时,后继节点的输入数据需要的是float32时,就需要进行一个数据类型和值的转换,即反量化dequant。然而,如果每个节点仅根据自己的输入输出需求进行操作,而不考虑整个计算图或其相邻节点的具体需求,可能会错过一些优化机会。如果节点直接将数据解量化为float32类型,而不考虑其后继节点的实际需求,这会导致效率上的损失。

2、为此,需要一种技术方案,能够对实际的计算逻辑进行变换,达到计算加速的目的,提高整体推理速度。


技术实现思路

1、本专利技术旨在提供用于跨算子计算优化的方法及计算设备,能够对实际的计算逻辑进行变换,达到计算加速的目的,提高整体推理速度。

2、根据本专利技术的一方面,提供一种跨算子计算优化的方法,所述方法用于人工智能数据流芯片的模型编译,所述方法包括:

3、判断第一节点后的第二节点的计算逻辑是否满足优化条件,所述第一节点为反量化节点;

4、当所述第二节点的计算逻辑满足优化条件时,则将反量化计算操作进行优化,得到优化计算逻辑;

5、将所述优化计算逻辑得到的输出结果,直接输出至所述第二节点的后续节点,同时删除所述第二节点,实现跨算子计算优化。

6、根据一些实施例,所述优化条件包括:

7、所述第二节点有且只有一个;

8、所述第二节点是乘法操作;

9、所述第二节点的另一个操作数是常量数据。

10、根据一些实施例,所述优化条件包括:

11、所述第二节点有且只有一个;

12、所述第二节点是除法操作;

13、所述第二节点的另一个操作数是常量数据。

14、根据一些实施例,将反量化计算进行优化,包括:当所述第二节点的计算逻辑是乘法操作时,则将反量化计算中的第二量化参数与常量参数的乘积,作为优化量化参数。

15、根据一些实施例,将反量化计算进行优化,还包括:当所述第二节点的计算逻辑是除法操作时,则将反量化计算中的第二量化参数与常量参数的比值,作为优化量化参数。

16、根据一些实施例,所述优化计算逻辑为:

17、f=(q-zeropoint)*scale_new

18、其中,q为所述第一节点的输入值,zeropoint为第一量化参数,scale_new为所述优化量化参数,f为所述第一节点的输出值。

19、根据一些实施例,所述人工智能数据流芯片支持在编译期静态配置量化及反量化参数。

20、根据一些实施例,所述第一节点的输出为多维数组。

21、根据本专利技术的另一方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上任一项所述的方法。

22、根据本专利技术的另一方面,提供一种计算设备,包括:

23、处理器;以及

24、存储器,存储有计算机程序,当所述计算机程序被所述处理器执行时,实现如上任一项所述的方法。

25、根据本专利技术的实施例,根据反量化(dequant)的计算特点,以及后续计算节点计算逻辑的特殊性,将后继节点的计算逻辑融合到dequant的计算中,减少一个乘法/除法计算节点,能够对实际的计算逻辑进行变换,达到计算加速的目的,提高整体推理速度。

26、根据一些实施例,计算逻辑融合策略直接融合乘法/除法运算,如果反量化节点之后紧跟着一个乘法或除法节点,并且该运算因子是已知的常数,可以直接将这个因子融合到反量化过程中。在将量化值转换为浮点数的同时,执行相应的乘法或除法运算,从而跳过单独的乘法或除法节点。通过减少运算量,直接减少了一个或多个计算节点,特别是乘法和除法这类相对耗时的操作,可以显著提高计算效率。

27、根据一些实施例,计算逻辑融合策略可以降低内存访问,减少中间结果的存储需求,因为不再需要为被融合的运算保存临时变量,减少了内存带宽压力。

28、根据一些实施例,简化计算图,可用更简洁的计算图达到更低的控制开销的目的,硬件调度更加高效。由于执行步骤减少,总的能耗也会相应降低,这对于移动设备和边缘计算尤为重要,能提高能源效率。

29、应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本专利技术。

本文档来自技高网...

【技术保护点】

1.一种跨算子计算优化的方法,所述方法用于人工智能数据流芯片的模型编译,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述优化条件包括:

3.根据权利要求1所述的方法,其特征在于,所述优化条件包括:

4.根据权利要求2所述的方法,其特征在于,将反量化计算进行优化,包括:当所述第二节点的计算逻辑是乘法操作时,则将反量化计算中的第二量化参数与常量参数的乘积,作为优化量化参数。

5.根据权利要求3所述的方法,其特征在于,将反量化计算进行优化,还包括:当所述第二节点的计算逻辑是除法操作时,则将反量化计算中的第二量化参数与常量参数的比值,作为优化量化参数。

6.根据权利要求4或5所述的方法,其特征在于,所述优化计算逻辑为:

7.根据权利要求1所述的方法,其特征在于,所述人工智能数据流芯片支持在编译期静态配置量化及反量化参数。

8.根据权利要求1所述的方法,其特征在于,所述第一节点的输出为多维数组。

9.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器执行时实现如权利要求1-8中任一项所述的方法。

10.一种计算设备,其特征在于,包括:

...

【技术特征摘要】

1.一种跨算子计算优化的方法,所述方法用于人工智能数据流芯片的模型编译,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述优化条件包括:

3.根据权利要求1所述的方法,其特征在于,所述优化条件包括:

4.根据权利要求2所述的方法,其特征在于,将反量化计算进行优化,包括:当所述第二节点的计算逻辑是乘法操作时,则将反量化计算中的第二量化参数与常量参数的乘积,作为优化量化参数。

5.根据权利要求3所述的方法,其特征在于,将反量化计算进行优化,还包括:当所述第二节点的计算逻辑是除法...

【专利技术属性】
技术研发人员:黄雪辉熊超牛昕宇
申请(专利权)人:深圳鲲云信息科技有限公司
类型:发明
国别省市:

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

1