算子执行方法、装置、电子设备和存储介质与流程

摘要: 本公开涉及人工智能,具体涉及算子、矩阵运算、向量运算等,尤其涉及一种算子执行方法、装置、电子设备和存储介质。背景技术:1、对于大模型中的复杂融合算子,其计算路径...
算子执行方法、装置、电子设备和存储介质与流程

本公开涉及人工智能,具体涉及算子、矩阵运算、向量运算等,尤其涉及一种算子执行方法、装置、电子设备和存储介质。

背景技术:

1、对于大模型中的复杂融合算子,其计算路径通常包含多次矩阵计算和向量计算的交替。在显式队列或显式数据搬运的异构加速器中,每一次跨计算单元的数据交接通常需要依赖显式队列、显式同步原语和本地缓存进行调度。

2、目前针对复杂融合算子的执行策略生成,容易出现局部可行但全链路不可行的问题,导致在显式队列或显式数据搬运的异构加速器中部署大模型复杂融合算子时,难以稳定生成兼顾正确性、资源约束和执行性能的算子执行策略。

技术实现思路

1、本公开提供了一种用于算子执行方法、装置、电子设备和存储介质。

2、根据本公开的一方面,提供了一种算子执行方法,包括:确定待编译的目标算子对应的计算图和后端约束;基于所述计算图和后端约束,确定所述目标算子的至少一条目标切换点链,所述目标切换点链包括至少一个切换点,所述切换点处于两个不同类型的计算单元之间;对所述目标切换点链进行约束求解,以获取候选的算子执行策略;从所述候选的算子执行策略中确定目标算子执行策略,并基于所述目标算子执行策略对所述目标算子进行编译,得到所述目标算子的执行信息;其中,所述执行信息包括可执行代码和执行配置信息;将所述执行信息传输至异构加速器中以执行所述目标算子。

3、根据本公开的另一方面,提供了一种算子执行装置,包括:第一确定模块,用于确定待编译的目标算子对应的计算图和后端约束;第二确定模块,用于基于所述计算图和后端约束,确定所述目标算子的至少一条目标切换点链,所述目标切换点链包括至少一个切换点,所述切换点处于两个不同类型的计算单元之间;约束求解模块,用于对所述目标切换点链进行约束求解,以获取候选的算子执行策略;第三确定模块,用于从所述候选的算子执行策略中确定目标算子执行策略,并基于所述目标算子执行策略对所述目标算子进行编译,得到所述目标算子的执行信息;其中,所述执行信息包括可执行代码和执行配置信息;执行模块,用于将所述执行信息传输至异构加速器中以执行所述目标算子。

4、根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述一方面实施例所述的算子执行方法。

5、根据本公开另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其上存储有计算机程序/指令,所述计算机指令用于使所述计算机执行上述一方面实施例所述的算子执行方法。

6、根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现上述一方面实施例所述的算子执行方法。

7、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

1.一种算子执行方法,其中,所述方法包括:

2.根据权利要求1所述的方法,其中,所述基于所述计算图和后端约束,确定所述目标算子的至少一条目标切换点链,包括:

3.根据权利要求2所述的方法,其中,所述基于所述计算图生成所述目标算子对应的初始切换点链,包括:

4.根据权利要求2所述的方法,其中,所述基于所述后端约束,构建所述初始切换点链对应的队列生产者-消费者对,包括:

5.根据权利要求4所述的方法,其中,所述基于所述队列生产者-消费者对,对所述初始切换点链进行适配操作,得到所述目标切换点链,包括:

6.根据权利要求1所述的方法,其中,所述对所述目标切换点链进行约束求解,以获取候选的算子执行策略,包括:

7.根据权利要求6所述的方法,其中,所述至少一个约束条件,包括:本地存储容量约束、队列深度约束、同步资源约束、对齐约束、缓存生命周期约束和适配可行性约束;

8.根据权利要求7所述的方法,其中,基于所述本地存储容量约束,对所述目标切换点链进行约束求解,得到满足所述本地存储容量约束的候选配置信息,包括:

9.根据权利要求7所述的方法,其中,基于所述队列深度约束,对所述目标切换点链进行约束求解,得到满足所述队列深度约束的候选配置信息,包括:

10.根据权利要求7所述的方法,其中,基于所述同步资源约束,对所述目标切换点链进行约束求解,得到满足所述同步资源约束的候选配置信息,包括:

11.根据权利要求7所述的方法,其中,基于所述对齐约束,对所述目标切换点链进行约束求解,得到满足所述对齐约束的候选配置信息,包括:

12.根据权利要求7所述的方法,其中,基于所述缓存生命周期约束,对所述目标切换点链进行约束求解,得到满足所述缓存生命周期约束的候选配置信息,包括:

13.根据权利要求7所述的方法,其中,基于所述适配可行性约束,对所述目标切换点链进行约束求解,得到满足所述适配可行性约束的候选配置信息,包括:

14.根据权利要求1-6中任一项所述的方法,其中,所述从所述候选的算子执行策略中确定目标算子执行策略,包括:

15.根据权利要求14所述的方法,其中,所述基于所述测试性能,从所述通过正确性验证的算子执行策略中确定所述目标算子执行策略,包括:

16.一种算子执行装置,其中,所述装置包括:

17.一种电子设备,包括:

18.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-15中任一项所述的方法。

19.一种计算机程序产品,包括计算机程序/指令,其中,该计算机程序/指令被处理器执行时实现权利要求1-15中任一项所述的方法。