System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 面向SoC边缘服务器的神经网络协同推理方法及装置制造方法及图纸_技高网

面向SoC边缘服务器的神经网络协同推理方法及装置制造方法及图纸

技术编号:40962227 阅读:2 留言:0更新日期:2024-04-18 20:41
本申请公开一种面向SoC边缘服务器的神经网络协同推理方法及装置,基于预设的算子拆分规则及预设的子模型计算图分支规则,对待推理的神经网络进行算子拆分及子模型计算图分支的划分,得到多个子模型,每个所述子模型中具有多个算子;针对每一所述子模型,基于设置的所述子模型的计算图,确定所述子模型中的多个算子的执行顺序;根据所述子模型中的多个算子的执行顺序,将所述子模型的多个算子分配到所述SoC边缘服务器的不同SoC芯片中的不同CPU中,以使所述不同的SoC芯片中的不同CPU计算所述子模型中的不同算子,完成所述神经网络的推理。这样,充分利用SoC边缘服务器的SoC芯片的计算资源,减少计算资源的损失。

【技术实现步骤摘要】

本申请涉及神经网络,特别涉及一种面向片上系统(soc,system onchip)边缘服务器的神经网络协同推理方法及装置。


技术介绍

1、深度神经网络(dnn)的应用在日常生活中的各个方面都非常普遍。从大型数据中心到边缘设备,如终端设备、移动设备、物联网设备及可穿戴设备等等,都部署了大量的dnn进行应用。dnn的广泛应用推动了如何在适合dnn应用的不同设备上部署dnn的研究。

2、在对dnn研究中,dnn推理任务的部署研究十分重要。对于计算量大的推理dnn模型场景,是在云服务器上部署dnn模型。具体实现过程包括:边缘设备向云服务器发送推理请求,云服务器基于推理请求启动执行dnn模型的推理,将得到的推理结果发送给边缘设备处理。在云服务器中,由于其具有的图形处理器(gpu)在并行计算方面优于中央处理器(cpu),所以dnn模型的推理通常在gpu中完成。对于计算量小的推理dnn模型场景,则直接在具有cpu、gpu或数字信号处理器(dsp)等硬件的边缘设备,诸如移动设备或终端设备等,完成dnn模型的推理。可以看出,在云服务器和边缘设备中实现dnn模型的推理,已经得到了广泛的应用。

3、上述实现dnn模型的推理的云服务器是传统架构的计算机服务器,而随着计算机技术的发展,还可以采用诸如arm架构的服务器作为边缘服务器。而在具有arm架构的服务器中如何实现dnn推理,则需要进一步研究。

4、具有arm架构的服务器是由数十个采用arm架构的soc芯片组成,将其作为计算机网络中的边缘服务器使用,称为soc边缘服务器。在soc边缘服务器中的soc芯片通过外围器件互联(pci,peripheral component interconnect)总线相互通信,每个soc芯片中都具有多个cpu和至少1个gpu。soc边缘服务器经常被用来部署云游戏,然而,根据单个soc芯片上运行的云游戏的处理器使用情况的统计结果,一个云游戏并无法在使用gpu的情况下,同时占用cpu资源,并且云游戏不能跨soc芯片部署,即使预设运行云游戏的不同子算法在不同的cpu实现,也会有大量空闲的cpu存在,这会浪费soc边缘服务器中的计算资源。

5、目前,如何在soc边缘服务器中部署dnn推理任务并实现,还没有提及。因此,如何在soc边缘服务器中有效使用各个soc芯片的计算资源,减少计算资源的损失的前提下,实现dnn推理,是一个亟待解决的技术问题。


技术实现思路

1、有鉴于此,本申请实施例提供一种面向soc边缘服务器的神经网络协同推理方法,该方法能够充分利用其中soc芯片的计算资源实现视神经网络的推理,减少计算资源的损失。

2、本申请实施例还提供一种面向soc边缘服务器的神经网络协同推理装置,该装置能够充分利用其中soc芯片的计算资源实现神经网络的推理,减少计算资源的损失。

3、本申请的一个实施例中,提供一种面向片上系统soc边缘服务器的神经网络协同处理方法,包括:

4、基于预设的算子拆分规则及预设的子模型计算图分支规则,对待推理的神经网络进行算子拆分及子模型计算图分支的划分,得到多个子模型,每个所述子模型中具有多个算子;

5、针对每一所述子模型,基于设置的所述子模型的计算图,确定所述子模型中的多个算子的执行顺序;

6、根据所述子模型中的多个算子的执行顺序,将所述子模型的多个算子分配到所述soc边缘服务器的不同soc芯片中的不同中央处理器cpu中,以使所述不同的soc芯片中的不同cpu计算所述子模型中的不同算子,完成所述神经网络的推理。

7、在上述方法中,所述预设的算子拆分规则包括:

8、根据预设的算子分类类型,确定所述神经网络中的各个算子的分类类型;

9、对所述神经网络中的算子进行拆分时,采用所述算子的分类类型对应的拆分方式进行拆分;

10、其中,算子分类类型包括:ⅰ型、ⅱ型和ⅲ型,ⅰ型算子表示在单个输入张量上计算的算子,ⅱ型算子表示在由高度维度和宽度维度确定的输入张量平面上计算的算子,ⅲ型算子为表示在输入张量平面上的高度维度和宽度维度的取值都是1的计算算子;

11、i型算子采用的拆分方式为沿输入张量平面的高度维度进行拆分;

12、ⅱ型算子采用的拆分方式为沿输入张量平面上的高度维度和宽度维度进行拆分;

13、ⅲ型算子采用的拆分方式为不进行拆分。

14、在上述方法中,所述预设的子模型计算图分支规则包括:

15、将i型算子采用回溯多算子分支进行分支,所述ⅰ型算子表示在单个输入张量上计算的算子,所述回溯多算子分支为将相连的多个i型算子作为一个算子进行分支,得到所述子模型中的一个算子;

16、将ii型算子采用单算子分支进行分支,所述ⅱ型算子表示在由高度维度和宽度维度确定的输入张量平面上计算的算子,所述单算子分支为对于发送数据的ii型算子进行分支,将所述发送数据的ii型算子作为所述子模型中的一个算子。

17、在上述方法中,所述基于设置的所述子模型的计算图,确定所述子模型中的多个算子的执行顺序包括:

18、基于多个所述子模型具有的合并算子,对所述子模型的计算图进行划分;

19、将划分的多个所述子模型的计算图,基于具有的共享输入算子,进行分组;

20、针对每一组的所述子模型的计算图,分别划分为三种运算类型的运算算子;

21、根据所述子模型的计算图中具有的运算算子的执行顺序,确定所述子模型中算子的执行顺序。

22、在上述方法中,所述进行分组后,还包括:

23、将不同组的所述子模型,分配到soc边缘服务器的不同soc芯片中运行;

24、将同一组中的不同所述子模型中的不同算子,按照执行顺序分配到对应的soc中的不同cpu中或同一cpu中运行。

25、在上述方法中,所述三种运算类型的运算算子包括:

26、发送运算算子、合并运算类型算子及其他类型运算算子;

27、所述根据所述子模型的计算图中具有的运算算子的执行顺序,确定所述子模型中算子的执行顺序包括:

28、先执行所述子模型中的发送运算算子后,再执行所述子模型中的其他类型算子,最后执行所述子模型中的合并运算类型算子。

29、在上述方法中,所述方法还包括:

30、设置全局规划器;

31、所述全局规划器对待推理的神经网络进行算子拆分及子模型计算图分支的划分,得到多个子模型;

32、所述全局规划器针对每一子模型,基于设置的所述子模型的计算图,确定所述子模型中算子的执行顺序;

33、所述全局规划器根据所述子模型中的多个算子的执行顺序,将所述子模型的多个算子分配到所述soc边缘服务器的不同soc芯片中的不同cpu中。

34、本申请的另一实施例中,提供一种面向soc边缘服务器的神经网络协同处理系统,包括:划分单本文档来自技高网...

【技术保护点】

1.一种面向片上系统SoC边缘服务器的神经网络协同处理方法,其特征在于,包括:

2.如权利要求1所述的方法,其特征在于,所述预设的算子拆分规则包括:

3.如权利要求1所述的方法,其特征在于,所述预设的子模型计算图分支规则包括:

4.如权利要求1~3任一所述的方法,其特征在于,所述基于设置的所述子模型的计算图,确定所述子模型中的多个算子的执行顺序包括:

5.如权利要求4所述的方法,其特征在于,所述进行分组后,还包括:

6.如权利要求4所述的方法,其特征在于,所述三种运算类型的运算算子包括:

7.如权利要求1所述的方法,其特征在于,所述方法还包括:

8.一种面向SoC边缘服务器的神经网络协同处理系统,其特征在于,包括:划分单元、确定执行顺序单元及控制运行单元,其中,

9.一种非瞬时计算机可读存储介质,其特征在于,所述非瞬时计算机可读存储介质存储指令,所述指令在由处理器执行时使得所述处理器执行如权利要求1至7任一项所述的一种面向SoC边缘服务器的神经网络协同处理方法中的各个步骤。

>10.一种电子设备,其特征在于,包括处理器,所述处理器用于执行如权利要求1至7中任一项所述的一种面向SoC边缘服务器的神经网络协同处理方法中的各个步骤。

...

【技术特征摘要】

1.一种面向片上系统soc边缘服务器的神经网络协同处理方法,其特征在于,包括:

2.如权利要求1所述的方法,其特征在于,所述预设的算子拆分规则包括:

3.如权利要求1所述的方法,其特征在于,所述预设的子模型计算图分支规则包括:

4.如权利要求1~3任一所述的方法,其特征在于,所述基于设置的所述子模型的计算图,确定所述子模型中的多个算子的执行顺序包括:

5.如权利要求4所述的方法,其特征在于,所述进行分组后,还包括:

6.如权利要求4所述的方法,其特征在于,所述三种运算类型的运算算子包括:

7.如权...

【专利技术属性】
技术研发人员:徐梦炜衣容颉张力马骁周傲孙其博王尚广
申请(专利权)人:北京邮电大学
类型:发明
国别省市:

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

1