深度学习框架调整方法技术

技术编号:39828901 阅读:6 留言:0更新日期:2023-12-29 16:06
本申请涉及一种深度学习框架调整方法

【技术实现步骤摘要】
深度学习框架调整方法、装置、设备、介质和程序产品


[0001]本申请实施例涉及人工智能
,特别是涉及一种深度学习框架调整方法

装置

设备

介质和程序产品


技术介绍

[0002]作为人工智能开发环节中的基础工具,深度学习框架承担着
AI
技术生态中至关重要的角色

深度学习框架通过将深度学习算法模块化封装,能够实现训练

测试

调优模型的快速搭建,为各领域实际应用的落地提供有力支持

[0003]相关技术中,通常将深度学习框架运行在异构加速器上,可以在训练模型时,通过异构加速器加速计算,从而减少训练和推理时间

[0004]然而,相关技术中,在深度学习框架运行于异构加速器时,深度学习框架与异构加速器存在适配性低的问题


技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种深度学习框架调整方法

装置

设备

介质和程序产品,通过对与异构加速器适配性低的原始深度学习框架进行基础功能的完整适配以及添加额外的优化扩展功能,以提高原始深度学习框架与异构加速器的适配度,进而提升深度学习框架的运行性能,以及保证异构加速器上框架的可用性和部分功能添加

[0006]第一方面,本申请实施例提供了一种深度学习框架调整方法,包括:
[0007]获取原始深度学习框架;原始深度学习框架表示与异构加速器适配度小于预设值的深度学习框架;
[0008]对原始深度学习框架进行基础功能移植处理,得到与异构加速器的基础功能完整适配的初始深度学习框架;
[0009]对初始深度学习框架添加除基础功能外的优化扩展功能,得到与异构加速器适配的目标深度学习框架

[0010]在其中一个实施例中,对原始深度学习框架进行基础功能移植处理,得到与异构加速器的基础功能完整适配的初始深度学习框架,包括:
[0011]获取原始深度学习框架的源代码和异构加速器的软件栈信息;
[0012]根据软件栈信息,对源代码进行代码修改,得到与异构加速器的基础功能完整适配的初始深度学习框架

[0013]在其中一个实施例中,软件栈信息包括软件栈路径信息和调用软件栈底层库的接口信息,根据软件栈信息,对源代码进行代码修改,得到与异构加速器的基础功能完整适配的初始深度学习框架,包括:
[0014]根据软件栈路径信息对源代码中的软件栈路径进行修改,以及根据接口信息对源代码中的软件栈底层库调用接口进行修改,得到修改后的修改源代码;
[0015]对修改源代码进行编译,得到目标代码;
[0016]在目标代码测试与验证均通过的情况下,对目标代码进行打包处理,得到初始深度学习框架

[0017]在其中一个实施例中,对修改源代码进行编译,得到目标代码,包括:
[0018]将修改源代码中与编译相关的路径标识由有效逻辑值修改为无效逻辑值,得到更新源代码;
[0019]对更新源代码进行编译,得到目标代码

[0020]在其中一个实施例中,优化扩展功能包括性能分析功能

结果可复现功能和半精度性能优化功能,对初始深度学习框架添加除基础功能外的优化扩展功能,得到与异构加速器适配的目标深度学习框架,包括:
[0021]获取与性能分析功能相关的性能分析函数

与结果可复现功能相关的可复现环境变量

与半精度性能优化功能相关的半精度性能优化环境变量,以及初始深度学习框架的代码;
[0022]根据性能分析函数

可复现环境变量

半精度性能优化环境变量和初始深度学习框架的代码,确定目标深度学习框架

[0023]在其中一个实施例中,根据性能分析函数

可复现环境变量

半精度性能优化环境变量和初始深度学习框架的代码,确定目标深度学习框架,包括:
[0024]将性能分析函数添加至初始深度学习框架的代码中,得到第一框架代码;
[0025]在第一框架代码的编译代码测试和验证均通过的情况下,将可复现环境变量添加至第一框架代码中,得到第二框架代码;
[0026]在第二框架代码的编译代码测试和验证均通过的情况下,将半精度性能优化环境变量添加至第二框架代码中,得到第三框架代码;
[0027]在第三框架代码的编译代码测试和验证均通过的情况下,对第三框架代码的编译代码进行打包处理,得到目标深度学习框架

[0028]第二方面,本申请实施例还提供了一种深度学习框架调整装置,包括:
[0029]框架获取模块,用于获取原始深度学习框架;原始深度学习框架表示与异构加速器适配度小于预设值的深度学习框架;
[0030]第一确定模块,用于对原始深度学习框架进行基础功能移植处理,得到与异构加速器的基础功能完整适配的初始深度学习框架;
[0031]第二确定模块,用于对初始深度学习框架添加除基础功能外的优化扩展功能,得到与异构加速器适配的目标深度学习框架

[0032]第三方面,本申请实施例还提供了一种计算机设备

计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述第一方面中任一实施例中的步骤

[0033]第四方面,本申请实施例还提供了一种计算机可读存储介质

计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面中任一实施例中的步骤

[0034]第五方面,本申请实施例还提供了一种计算机程序产品

计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述第一方面中任一实施例中的步骤

[0035]上述深度学习框架调整方法

装置

设备

介质和程序产品,通过获取原始深度学
习框架,原始深度学习框架表示与异构加速器适配度小于预设值的深度学习框架,进而对原始深度学习框架进行基础功能移植处理,得到与异构加速器的基础功能完整适配的初始深度学习框架,最后对初始深度学习框架添加除基础功能外的优化扩展功能,得到与异构加速器适配的目标深度学习框架

上述方法,通过对与异构加速器适配性低的原始深度学习框架进行基础功能的完整适配以及添加额外的优化扩展功能,以得到与异构加速器适配的目标深度学习框架,即在保证原始深度学习框架功能完整移植的基础上,再对原始深度学习框架进行适应的功能优化和扩展,以提高原始深度学习框架与异构加速器的适配度,进而提升深度学习框架的运行性能,以及本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种深度学习框架调整方法,其特征在于,所述方法包括:获取原始深度学习框架;所述原始深度学习框架表示与异构加速器适配度小于预设值的深度学习框架;对所述原始深度学习框架进行基础功能移植处理,得到与所述异构加速器的基础功能完整适配的初始深度学习框架;对所述初始深度学习框架添加除所述基础功能外的优化扩展功能,得到与所述异构加速器适配的目标深度学习框架
。2.
根据权利要求1所述的方法,其特征在于,所述对所述原始深度学习框架进行基础功能移植处理,得到与所述异构加速器的基础功能完整适配的初始深度学习框架,包括:获取所述原始深度学习框架的源代码和所述异构加速器的软件栈信息;根据所述软件栈信息,对所述源代码进行代码修改,得到与所述异构加速器的基础功能完整适配的初始深度学习框架
。3.
根据权利要求2所述的方法,其特征在于,所述软件栈信息包括软件栈路径信息和调用软件栈底层库的接口信息,所述根据所述软件栈信息,对所述源代码进行代码修改,得到与所述异构加速器的基础功能完整适配的初始深度学习框架,包括:根据所述软件栈路径信息对所述源代码中的软件栈路径进行修改,以及根据所述接口信息对所述源代码中的软件栈底层库调用接口进行修改,得到修改后的修改源代码;对所述修改源代码进行编译,得到目标代码;在所述目标代码测试与验证均通过的情况下,对所述目标代码进行打包处理,得到所述初始深度学习框架
。4.
根据权利要求3所述的方法,其特征在于,所述对所述修改源代码进行编译,得到目标代码,包括:将所述修改源代码中与编译相关的路径标识由有效逻辑值修改为无效逻辑值,得到更新源代码;对所述更新源代码进行编译,得到所述目标代码
。5.
根据权利要求1‑4任一项所述的方法,其特征在于,所述优化扩展功能包括性能分析功能

结果可复现功能和半精度性能优化功能,所述对所述初始深度学习框架添加除所述基础功能外的优化扩展功能,得到与所述异构加速器适配的目标深度学习框架,包括:获取与所述性能分析功能相关的性能分析函数

与所述结果可复现功能相关的可复现环境变量

与所述半...

【专利技术属性】
技术研发人员:潘宁胡辰钱永军
申请(专利权)人:中科曙光国际信息产业有限公司
类型:发明
国别省市:

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

1