[发明专利]一种神经网络计算的内存管理方法在审
申请号: | 202110272308.1 | 申请日: | 2021-03-12 |
公开(公告)号: | CN113139649A | 公开(公告)日: | 2021-07-20 |
发明(设计)人: | 杨旭光 | 申请(专利权)人: | 苏州芯启微电子科技有限公司 |
主分类号: | G06N3/063 | 分类号: | G06N3/063;G06F9/50 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 215024 江苏省苏州市苏州*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 神经网络 计算 内存 管理 方法 | ||
本发明提供一种神经网络计算的内存管理方法。该方法对神经网络计算过程中的输入、临时和输出三者之间的数据转换关系,总结为有向图表达的管理算法。通过算法分析,进行了内存管理的规范化,将所有数据的转化关系简化为对内存偏移地址的管理。
技术领域
本发明属于计算机软件、人工智能领域,具体涉及一种对任意深度神经网络优化其运行功能时内存管理的方法。
背景技术
深度卷积神经网络算法由多层具体的神经元算法层、隐藏层组成,主要包含有卷积层,主要算子为矩阵或向量的卷积计算。该计算任务的主要特点为输入的数据量大、输入数据具有空间特征信息的耦合。计算所需算力大,所需要的数据量更大,存储瓶颈成为了主要的制约因素。
近年来人工智能算法已经得到广泛应用,但在相关场景下,数据存储的容量、性能和成本因素成为制约需求的主要因素。
在终端部署人工智能算法,其需求特征为,由于存储的硬件容量有限,必需要将数据进行复用,减少数据的膨胀;而对于不同领域和产业场景所常用的人工神经网络算法不同,需要存储容量不同,动态分配带来的风险需要一种静态分配方法,防止存储空间分配失败的风险。这样,我们就需要一种方法,能够静态分配神经网络数据存储,复用神经网络存储区存储神经网络数据,灵活快速定位神经网络数据地址。
发明内容
本发明提供一种神经网络计算的内存管理方法。针对终端部署场景,解决对数据存储静态分配问题,突破过去动态管理内存的技术限制;解决存储数据的复用问题,大大降低过去所需要的存储规模所带来的成本限制;还对静态分配办法进行了优化,使数据定位以及操作仍具有灵活性。
本发明所述方法,包括一套数据结构设计方法、一套编译张量算法所需计算参数的初始化的方法、内存管理策略、以及一套可供运行支持本发明方法的软件的硬件平台实施例。
本发明的效果在于:
1、提供了一种内存管理方法
2、降低了软硬件系统的整体成本
3、提高了嵌入式系统的性能
4、适合于低成本嵌入式ASIC上应用。
附图说明
图1为深度神经网络优化其运行功能时所需存储的方法框图;
图2为本发明所述神经网络存储区描述和层数据描述区根据网络配置静态分配的主流程图;
图3为本发明所述人工智能神经网络算法数据处理过程图;
图4为本发明所述数据宏块的可能的内存地址分布示意图;
图5为本发明所述可部署所述人工智能算法推理软件的硬件平台;
图6为本发明所述神经网络存储区描述和层数据描述区根据网络配置静态分配的初始化层只读数据描述项流程图;
图7为本发明所述神经网络存储区描述和层数据描述区根据网络配置静态分配的初始化不复用层读写数据存储区描述流程图;
图8为本发明所述神经网络存储区描述和层数据描述区根据网络配置静态分配的初始化层读写数据描述项流程图;
附图标记说明
layer 神经网络层
ro Read only,神经网络只读存储区
rw Read Write,神经网络可读可写存储区
buffer 神经网络存储区
stack 神经网络存储区描述的栈描述
data 神经网络数据描述区
content 神经网络数据项描述
CPU 一般处理器,用于进行软件指令的执行,以调度与配置各种硬件装置
AIoC 智能处理硬件子系统,包括CPU以及专用于智能硬件处理的功能硬件装置、存储装置、调试装置以及其他系统辅助装置
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州芯启微电子科技有限公司,未经苏州芯启微电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110272308.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种多边互信机制式数据报文分段传输方法
- 下一篇:一种金属PTC电加热器