一种神经网络的计算方法、系统、设备以及介质技术方案

技术编号:26792901 阅读:26 留言:0更新日期:2020-12-22 17:08
本发明专利技术公开了一种神经网络的计算方法,包括以下步骤:将存储设备分为多个存储空间以存储特征图;向当前卷积层发送用于存储待计算的特征图的存储空间对应的地址;利用所述当前卷积层获取并计算所述对应的地址中的待计算的特征图;判断向所述当前卷积层发送的存储空间中的待计算的特征图是否需要作为其他卷积层的输入;响应于不需要作为其他卷积层的输入且所述当前卷积层计算完成,释放用于存储当前卷积层对应的待计算的特征图的存储空间。本发明专利技术还公开了一种系统、计算机设备以及可读存储介质。本发明专利技术提出的方案可以在计算资源受限的边缘计算设备上正常推理的同时,提高其特征图的读写速率以及存储空间的利用率。

【技术实现步骤摘要】
一种神经网络的计算方法、系统、设备以及介质
本专利技术涉及神经网络领域,具体涉及一种神经网络的计算方法、系统、设备以及存储介质。
技术介绍
神经网络的计算是自上而下,也就是下一层的计算输入来自于上一层的计算输出。因此在整个计算过程中,一张特征图需要写入内存和读取内存两个操作。DDR和SRAM是常用的存储器。SRAM具有较高的性能,其读写速度要快于DDR,但是SRAM也有它的缺点,即它的集成度较低,功耗较DDR高,相同容量的DDR内存可以设计为较小的体积,但是SRAM却需要很大的体积。同样面积的硅片可以做出更大容量的DDR,因此SRAM显得更贵。由于受限于硬件成本以及功耗等因素,对于计算量较大的网络,通常将其特征图存放在DDR中。通常针对神经网络计算,在边缘计算端,通常有以下两种存储方式,第一,对于小网络比如Lenet,计算其feature与SRAM的大小关系,若小于SRAM空间,则将feature(特征图)存放在SRAM上;第二,对于大型网络,其feature显然超过SRMA的空间大小,则将所有的feature存放在DDR上,其存储方式本文档来自技高网...

【技术保护点】
1.一种神经网络的计算方法,其特征在于,包括以下步骤:/n将存储设备分为多个存储空间并分别存储特征图;/n向当前卷积层发送用于存储待计算的特征图的存储空间对应的地址;/n利用所述当前卷积层获取并计算所述对应的地址中的待计算的特征图;/n判断向所述当前卷积层发送的存储空间中的待计算的特征图是否需要作为其他卷积层的输入;/n响应于不需要作为其他卷积层的输入且所述当前卷积层计算完成,释放用于存储当前卷积层对应的待计算的特征图的存储空间。/n

【技术特征摘要】
1.一种神经网络的计算方法,其特征在于,包括以下步骤:
将存储设备分为多个存储空间并分别存储特征图;
向当前卷积层发送用于存储待计算的特征图的存储空间对应的地址;
利用所述当前卷积层获取并计算所述对应的地址中的待计算的特征图;
判断向所述当前卷积层发送的存储空间中的待计算的特征图是否需要作为其他卷积层的输入;
响应于不需要作为其他卷积层的输入且所述当前卷积层计算完成,释放用于存储当前卷积层对应的待计算的特征图的存储空间。


2.如权利要求1所述的方法,其特征在于,还包括:
检查所述多个存储空间的使用状态;
将所述当前卷积层计算输出的特征图存储到未使用的存储空间并记录对应关系以向利用所述当前卷积层输出的特征图进行计算的下一层卷积层发送对应的存储空间的地址。


3.如权利要求1所述的方法,其特征在于,将存储设备分为多个存储空间并分别存储特征图,进一步包括:
统计神经网络的最大分支数和单层卷积层输出的特征图所需的最大存储空间;
根据所述最大分支数和所述最大存储空间计算理论所需缓存空间大小;
比较所述理论所需缓存空间与所述存储设备的大小;
响应于所述存储设备不小于所述理论所需缓存空间,将所述存储设备分为(所述最大分支数+1)个存储空间。


4.如权利要求3所述的方法,其特征在于,还包括:
计算所述神经网络的每一层卷积层输出的特征图所需的总空间大小;
比较所述总空间大小与所述存储设备的大小;
响应于所述总空间小于所述存储设备,利用线性堆叠的方式存储所述每一层卷积层输出的特征图。


5.如权利要求4所述的方法,其...

【专利技术属性】
技术研发人员:郭韶燕
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1