深度学习模型推理方法、装置、设备及存储介质制造方法及图纸

技术编号:36342470 阅读:11 留言:0更新日期:2023-01-14 17:56
本申请公开了一种深度学习模型推理方法、装置、设备及存储介质,涉及深度学习技术领域,该方法通过将模型推理中所涉及到的芯片资源管理部分进行单独设计,实现了其他模块的复用,保证AI芯片的快速导入与适配,并根据AI芯片和推理模型对计算图进行优化,以此充分利用AI芯片的硬件资源,提高了资源利用率和推理效率,通过芯片资源管理对模型推理所需的硬件资源在推理开始前进行申请,在推理结束后进行释放,避免了模型运行中对硬件资源的反复申请、释放,进一步提高了运行效率。进一步提高了运行效率。进一步提高了运行效率。

【技术实现步骤摘要】
深度学习模型推理方法、装置、设备及存储介质


[0001]本申请涉及计算机
,尤其涉及深度学习
,提供一种深度学习模型推理方法、装置、设备及存储介质。

技术介绍

[0002]随着人工智能(Artificial Intelligence,AI)技术的不断发展,深度学习(Deep Learning,DL)模型部署对硬件设备的计算性能的要求越来越高,众多芯片厂商不断推出各自的AI芯片。
[0003]相关技术中,针对型号众多的AI芯片,通常是针对各AI芯片设计相应的深度学习模型推理(Inference)引擎,以此充分发挥AI芯片的算力水平,提高深度学习模型部署效率。并且,相关技术中的深度学习模型推理引擎一般依赖于通用计算单元实现模型推理加速,无法适配型号众多的AI芯片,缺少针对AI芯片的推理引擎会导致模型部署难度加大,严重影响AI芯片的利用效率。

技术实现思路

[0004]本申请实施例提供一种深度学习模型推理方法、装置、设备及存储介质,用于使用同一套推理框架对不同的AI芯片进行底层适配,提高AI芯片的资源利用率。
[0005]一方面,提供一种深度学习模型推理方法,所述方法包括:
[0006]基于待推理的深度学习模型的模型结构以及参数,生成相应的计算图;其中,所述计算图包含多个算子,每个算子表征所述深度学习模型中的最小计算单元;
[0007]确定所述深度学习模型推理对应的目标调度策略,并基于所述目标调度策略,构建所述计算图对应的调度流;
[0008]基于所述计算图以及所述目标调度策略,确定所述深度学习模型推理所需的AI芯片资源量,并向AI芯片申请所需的AI芯片资源量;
[0009]在资源申请成功时,按照所述调度流指示的所述多个算子之间的调度顺序,采用申请到的AI芯片资源运行所述多个算子,获得所述深度学习模型的推理结果。
[0010]一方面,提供一种深度学习模型推理装置,应用于推理加速设备中,所述装置包括:
[0011]模型解析单元,用于基于待推理的深度学习模型的模型结构以及参数,生成相应的计算图;其中,所述计算图包含多个算子,每个算子表征所述深度学习模型中的最小计算单元;
[0012]调度单元,用于确定所述深度学习模型推理对应的目标调度策略,并基于所述目标调度策略,构建所述计算图对应的调度流;
[0013]资源申请单元,用于基于所述计算图以及所述目标调度策略,确定所述深度学习模型推理所需的AI芯片资源量,并向AI芯片申请所需的AI芯片资源量;
[0014]推理执行单元,用于在资源申请成功时,按照所述调度流指示的所述多个算子之
间的调度顺序,采用申请到的AI芯片资源运行所述多个算子,获得所述深度学习模型的推理结果。
[0015]可选的,所述资源申请单元包括推理引擎子单元、芯片资源管理子单元以及所述AI芯片对应的芯片驱动接口;
[0016]所述推理引擎子单元,用于基于所述计算图中各个算子之间的关系、各个算子的参数信息,确定所述推理所需的AI芯片资源量;以及,基于所述AI芯片资源量向所述芯片资源管理子单元发起资源申请;
[0017]所述芯片资源管理子单元,用于调用所述芯片驱动接口,向所述AI芯片发送资源申请请求,以请求所述推理所需的AI芯片资源量。
[0018]可选的,所述推理引擎子单元,具体用于:
[0019]基于各个算子对应的输入参数和输出参数,确定所需的中间数据内存量以及临时内存量;
[0020]基于所述中间数据内存量、所述临时内存量,以及所述各个算子之间的先后运行关系,确定推理所需的最小内存量。
[0021]可选的,所述调度单元,具体用于:
[0022]基于所述计算图以及指定的资源限制信息,确定所述深度学习模型推理所需的加速单元数量;
[0023]若所述加速单元数量为一个,确定目标调度策略为第一调度策略,所述第一调度策略指示按照所述多个算子之间的调度顺序构建单一线程的调度流;或者,
[0024]若所述加速单元数量为多个,则确定目标调度策略为第二调度策略,所述第二调度策略指示按照所述多个算子之间的调度顺序构建多线程的多个子调度流组成的调度流。
[0025]可选的,所述调度单元,具体用于:
[0026]基于所述目标调度策略指示的子调度流的数量,将所述计算图拆分为多个子计算图;
[0027]针对每个所述子计算图,分别构建相应的子调度流,每个所述子调度流对应一个所述子计算图。
[0028]可选的,所述推理加速设备还包括计算图调度模块;所述推理执行单元,具体用于:
[0029]针对多个所述算子中每一个所述算子,分别通过所述计算图调度模块,向芯片资源管理器查询所述算子对应的AI芯片资源的状态;
[0030]若芯片资源管理器向所述计算图调度模块反馈相应的AI芯片资源为可用状态,则推理引擎调用相应的AI芯片资源,运行所述算子。
[0031]可选的,所述芯片资源管理子单元,还用于:
[0032]向所述AI芯片发送AI芯片资源释放请求,以释放所述深度学习模型推理所占用的AI芯片资源。
[0033]一方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种方法的步骤。
[0034]一方面,提供一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一种方法的步骤。
[0035]一方面,提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述任一种方法的步骤。
[0036]本申请实施例提供的深度学习模型推理方法、装置、设备及存储介质,针对待推理的深度学习模型,基于其模型结构以及参数生成相应的计算图,并基于计算图,确定深度学习模型推理对应的目标调度策略,以及基于目标调度策略,构建计算图对应的调度流,从而基于计算图以及目标调度策略,确定深度学习模型推理所需的AI芯片资源量,并向AI芯片申请所需的AI芯片资源量,进而在资源申请成功时,按照调度流指示的多个算子之间的调度顺序,采用申请到的AI芯片资源运行多个算子,获得深度学习模型的推理结果。本申请实施例中,通过对模型进行分析来估算推理过程所需的AI芯片资源量,并向AI芯片进行申请,从而只需要按照推理过程所需的资源向AI芯片申请占用即可,实现了对AI芯片的资源管理,提升了对不同类型的AI芯片的适配能力,保证深度学习模型的跨平台复用能力,同时,合理的预测和申请AI芯片资源,能够提高AI芯片的资源利用率,从而提高模型的部署和推理效率。
附图说明
[0037]为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种深度学习模型推理方法,其特征在于,应用于推理加速处理设备中,所述方法包括:基于待推理的深度学习模型的模型结构以及参数,生成相应的计算图;其中,所述计算图包含多个算子,每个算子表征所述深度学习模型中的最小计算单元;确定所述深度学习模型推理对应的目标调度策略,并基于所述目标调度策略,构建所述计算图对应的调度流;基于所述计算图以及所述目标调度策略,确定所述深度学习模型推理所需的AI芯片资源量,并向AI芯片申请所需的AI芯片资源量;在资源申请成功时,按照所述调度流指示的所述多个算子之间的调度顺序,采用申请到的AI芯片资源运行所述多个算子,获得所述深度学习模型的推理结果。2.如权利要求1所述的方法,其特征在于,所述推理加速设备包括推理引擎、芯片资源管理器以及所述AI芯片对应的芯片驱动接口;基于所述计算图以及所述目标调度策略,确定所述深度学习模型推理所需的AI芯片资源量,并向所述AI芯片申请所需的AI芯片资源量,包括:通过所述推理引擎,基于所述计算图中各个算子之间的关系、各个算子的参数信息,确定所述推理所需的AI芯片资源量;通过所述推理引擎,基于所述AI芯片资源量向所述芯片资源管理器发起资源申请;通过所述芯片资源管理器,调用所述芯片驱动接口,向所述AI芯片发送资源申请请求,以请求所述推理所需的AI芯片资源量。3.如权利要求2所述的方法,其特征在于,通过所述推理引擎,基于所述计算图中各个算子之间的关系、各个算子的参数信息,确定所述推理所需的AI芯片资源量,包括:基于各个算子对应的输入参数和输出参数,确定所需的中间数据内存量以及临时内存量;基于所述中间数据内存量、所述临时内存量,以及所述各个算子之间的先后运行关系,确定推理所需的最小内存量。4.如权利要求1所述的方法,其特征在于,确定所述深度学习模型推理对应的目标调度策略,包括:基于所述计算图以及指定的资源限制信息,确定所述深度学习模型推理所需的加速单元数量;若所述加速单元数量为一个,则确定目标调度策略为第一调度策略,所述第一调度策略指示按照所述多个算子之间的调度顺序构建单一线程的调度流;或者,若所述加速单元数量为多个,则确定目标调度策略为第二调度策略,所述第二调度策略指示按照所述多个算子之间的调度顺序构建多线程的多个子调度流组成的调度流。5.如权利要求4所述的方法,其特征在于,若目标调度策略为第二调度策略,则基于所述目标调度策略,构建所述计算图对...

【专利技术属性】
技术研发人员:苏政鹏
申请(专利权)人:浙江大华技术股份有限公司
类型:发明
国别省市:

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

1