载风月|深度学习中的内存管理问题研究综述( 七 )


这些解决方案应用了不同的内存管理技术 , 各有优点和缺点, 具体见表1 。
载风月|深度学习中的内存管理问题研究综述4 结束语本文介绍了深度神经网络的一些基本特征 , 分析了深度学习训练过程中的内存瓶颈 , 讨论了在深度学习中内存管理面临的挑战 。 深度神经网络正朝着更深、更广的方向发展 , 训练和部署这些深度神经网络需要更大的内存空间 , 这对深度学习系统中的内存管理提出了新的挑战 。 如何在深度学习系统中进行高效的内存管理 , 从而满足更深、更广层次的神经网络模型的训练需求 , 是当前深度学习系统研究的重要问题 。 为了分析现有的深度学习中内存管理的解决方案 , 笔者根据其所应用技术的不同对这些解决方案进行分类 。 内存管理方案主要应用的技术包括内存交换、重计算、内存共享和压缩 。 通过对现有的一些代表性工作的分析 , 笔者发现大多数工作通过观察、分析DNN模型训练过程中的一些特征 , 从数据流图、层以及张量等不同的维度 , 应用上述的一种或多种技术方案 , 充分发挥各技术的优势 , 实现有效的内存管理 。 从顶层的角度来看 , 许多工作是类似的 , 只是它们的实现细节不同 。
最后 , 笔者对在深度学习中进行内存管理的一些新的挑战和机会做如下总结 。
● 基于虚拟内存实现的内存管理方案 。 内存交换和内存共享技术都通过构建虚拟内存来扩展加速设备有限的内存资源 , 提高内存资源的利用率 。 内存交换技术中交换单元的大小对系统的性能有较大的影响 , 先前的解决方案以页面为内存交换的基本单位 , 但是性能较差 , 现在最好的解决方案是以张量为内存交换的基本单位 , 在虚拟内存中能够以一个更合适的粒度对内存进行管理 , 从而实现更好的性能 。 但是以张量为粒度的方案并不一定是最优的 , 后续的研究也需要探索更多可能的方案 。 此外 , 内存管理策略也十分重要 , 内存管理策略决定了优化内存占用的效果 。 目前的研究都朝着这个方向努力 , 但是还没有很好的内存管理策略能够实现内存占用和计算性能的完美平衡 。
● 基于压缩技术实现的内存管理方案 。 在目前的工作中 , 压缩技术只能应用于特定的层所产生的数据结构 。 这些特定的数据结构具有稀疏性和高度可压缩的特征 。 但是这些特定的数据结构是特定的算法产生的 , 这为压缩技术的应用带来了很大的限制 。 随着深度神经网络的发展 , 研究人员也在不断提出新的算法 , 试图从数据中提取更多信息 , 通过新型网络结构的设计提高模型的准确率 。 未来会有更多新的算法出现 , 而这些算法产生的数据结构依然可能会具有稀疏性和高度可压缩性的特征 , 这将为压缩技术的应用带来更多的可能 。
● 深度学习编译器优化 。 深度学习系统的编译器旨在提高系统性能、优化内存使用以及提高模型的可移植性 。 编译器框架有机会分析和调度内存的使用 , 消除许多中间变量产生的不必要的内存空间 , 优化内存使用 。 这为解决深度学习系统中的内存管理问题提供了新的思路 。 目前在这方面已经有了一些研究 , 比如谷歌公司提出的XLA编译框架 , 用于优化TenosrFlow中计算的子图 , 可提高计算性能 , 优化内存占用 。 但是现有的研究还有很多问题需要解决 , 距离实现理想的编译器框架构想还有很长的路要走 。
联系我们:
Tel:010-81055448
010-81055490
010-81055534
E-mail:bdr@bjxintong.com.cn
转载、合作:010-81055537
大数据期刊
《大数据(Big Data Research , BDR)》双月刊是由中华人民共和国工业和信息化部主管 , 人民邮电出版社主办 , 中国计算机学会大数据专家委员会学术指导 , 北京信通传媒有限责任公司出版的期刊 , 已成功入选中文科技核心期刊、中国计算机学会会刊、中国计算机学会推荐中文科技期刊 , 并被评为2018年国家哲学社会科学文献中心学术期刊数据库“综合性人文社会科学”学科最受欢迎期刊 。


推荐阅读