




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1GB/TXXXXX—XXXX人工智能深度学习框架适配多硬件平台技术要求本文件规定了在训练和推理场景下,深度学习框架适配多硬件平台的技术要求,本文件不涉及硬件平台的技术要求。本文件适用于支持训练和推理功能的深度学习框架,可用于评价深度学习框架与硬件的适配能力,指导人工智能软硬件适配过程。2规范性引用文件下列文件中的内容通过文中的规范性引用而构成本文件必不可少的条款。其中,注日期的引用文件,仅该日期对应的版本适用于本文件;不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。GB/T41867-2022信息技术人工智能术语3术语和定义GB/T41867-2022界定的以及下列术语和定义适用于本文件。3.1深度学习框架deeplearningframework一种实现对人工智能算法开发、封装、数据调用以及计算资源使用的软件库。3.2多硬件平台multi-hardwareplatform包含多种人工智能加速处理器的可提供人工智能计算能力的硬件系统。3.3适配多硬件平台adaptmulti-hardwareplatform深度学习框架可将多硬件平台作为计算资源完成深度学习模型训练与推理任务的活动。3.4计算图computationalgraph用来表示数学函数,由一定数量节点和节点间连接构成的有向图3.52GB/TXXXXX—XXXX整图graph用于描述某个深度学习特定任务的计算过程,由一系列算子和张量组成的完整的计算图。3.6子图subgraph将整图依据某种规则抽取为多个特定部分,每个部分被称为一个子图。3.7张量tensor由同一类型元素所组成的多维数组。3.8算子operator函数的名字,或表示行动的数学或逻辑符号。3.9算子注册接口operatorregistrationinterface向深度学习框架提交算子信息以实现新增算子的接口。注:提交的内容可包括算子名、输入、输出、属性等信息。3.10计算内核computekernel一类在计算中运行在AI加速器上的执行单元。3.11神经网络编译器neuralnetworkcompiler接收不同框架的计算图结构,通过计算图、多层中间表示等结构转化,自动生成硬件平台可执行指令的工具。4缩略语下列缩略语适用于本文件。AI:人工智能(ArtificialIntelligence)API:应用编程接口(ApplicationProgramInterface)CPU:中央处理器(CentralProcessingUnit)DNN:深度神经网络(DeepNeuralNetwork)3GB/TXXXXX—XXXX5概述5.1总体要求深度学习框架适配多硬件平台是指以深度学习框架为基础,从训练和推理两个方面适配不同组合的硬件平台。硬件平台环境由操作系统、服务器端的训练芯片、服务器端推理芯片、移动端推理芯片和边缘端推理芯片组成,环境要求参见5.2.2节。在训练和推理过程中,深度学习框架通过硬件接入模块适配硬件平台的软件栈,完成软硬件平台的互通,具体包括设备管理层接入、计算执行层接入和分布式通信层接入三个部分,其中面向云测和端侧的推理过程,分布式通信层接入不做必选要求。训练框架的环境要求参见5.2.1,推理框架的环境要求在如上所述的适配环境中,本文件规定了适配接口要求以及相关的功能要求,其中训练场景的接口要求见6.2节,推理场景的接口要求见6.3;其中训练场景的功能要求见7.1节,推理场景的功能要求见7.2节。5.2训练框架与硬件平台适配环境要求5.2.1训练框架环境训练框架环境符合以下要求:a)训练框架:应具备基础单机单卡、单机多卡与多机多卡的模型训练功能;b)版本要求:深度学习框架与硬件AI加速库版本应是尚在维护中的版本,宜支持最新稳定版。5.2.2训练框架适配的硬件平台环境训练框架适配的硬件平台环境符合以下要求:a)操作系统:应支持基于Linux内核的操作系统;b)芯片类型:应支持通用人工智能训练芯片,以及至少一款支持训练的人工智能加速芯片。c)设备识别:硬件驱动应支持在选定操作系统上安装/卸载,设备可正确识别,宜支持容器映射;d)分析监控:硬件宜提供设备的状态监控工具与性能分析工具,用于检测设备健康状态。5.3推理框架与硬件平台适配环境要求5.3.1云侧推理框架与端侧推理框架环境云侧推理框架与端侧推理框架环境符合以下要求:a)推理框架:应具备基础模型推理功能;b)版本要求:深度学习框架与硬件AI加速库版本应是尚在维护中的版本,宜支持最新稳定版。5.3.2云侧推理框架适配的硬件平台环境云侧推理框架适配的硬件平台环境应符合5.2.2的规定。5.3.3端侧推理框架适配的硬件平台环境端侧推理框架所适配的硬件平台环境符合以下要求:a)操作系统:应支持智能终端操作系统和嵌入式操作系统中的一种;b)芯片类型:应支持通用人工智能推理芯片,以及至少一款支持推理的人工智能加速芯片;4GB/TXXXXX—XXXXc)设备识别:硬件驱动应支持在选定操作系统上安装/卸载,设备可正确识别,宜支持容器映射;d)分析监控:硬件宜提供设备的状态监控工具和性能分析工具,用于检测设备健康状态。6适配接口要求6.1概述本文件面向多硬件平台的适配,规范了深度学习训练和推理框架的适配接口技术要求:包括设备管理模块接口、计算执行模块接口与分布式通信模块接口,见图2。图2深度学习框架多硬件平台适配接口适配接口与图2中接口对应,具体接口功能包括:a)设备管理模块接口:图2接口a(训练侧定义见6.2.1,推理侧定义见6.3.1对硬件平台驱动与运行时的接入接口进行抽象与封装,并向计算执行模块、训练与推理框架提供一致的设备管理模块功能。设备管理模块接口主要包括设备管理接口、内存管理接口、执行流管理接口和事件管理接口,允许各硬件自行实现相应设备管理接口接入框架。b)计算执行模块接口:实现深度学习框架算子与目标硬件算子内核函数的映射与匹配,针对不同硬件类型规范不同的适配接口。计算执行模块接口提供算子开发或映射、子图或整图接入、编译器后端接入3种适配接口,硬件平台根据环境类型选择接口:1)算子开发或映射:见图2接口b(训练侧定义见6.2.2.1,推理侧定义见6.3.2.1),若硬件支持可编程算子内核开发语言,或硬件具备对应的AI算子库,则选择该方式接入;2)子图或整图接入:见图2接口c(训练侧定义见6.2.2.2,推理侧定义见6.3.2.2),若硬件支持图引擎,则选择该方式进行子图或整图接入;3)神经网络编译器:见图2接口d(训练侧定义见6.2.2.3,推理侧定义见6.3.2.3),若硬件支持编译器后端,或硬件支持代码生成器,则选择该方式进行神经网络编译器的算子接入。c)分布式通信模块接口:见图2接口e(训练侧定义见6.2.3,推理侧定义见6.3.3对硬件平台集合通信库接入框架的接口进行封装与抽象,为上层框架提供一致的分布式通信模块接口,硬件自行实现相应接口接入框架。5GB/TXXXXX—XXXX6.2训练场景适配接口要求6.2.1设备管理模块接口6.2.1.1通则深度学习框架应提供设备管理模块接口供硬件平台驱动和运行时接入,使硬件可被框架识别为可分配管理的计算资源进行模型训练。设备管理模块接口包括:设备管理接口、内存管理接口、执行流管理接口和事件管理接口,允许各硬件自行实现相应设备管理接口接入框架。6.2.1.2设备管理接口设备管理接口见表1。表1设备管理接口6.2.1.3内存管理接口内存管理接口见表2。表2内存管理接口6GB/TXXXXX—XXXXhost_memory_deallocaunified_memory_allocunified_memory_deallocamemory_copy_h2dmemory_copy_d2hmemory_copy_d2dmemory_copy_p2p6.2.1.4执行流管理接口执行流管理接口见表3。表3执行流管理接口6.2.1.5事件管理接口7GB/TXXXXX—XXXX事件管理接口见表4。表4事件管理接口6.2.2计算执行模块6.2.2.1算子注册接口深度学习框架应提供硬件算子的内核函数注册接口,供目标硬件进行内核函数或DNN算子库的接入,见表5。表5硬件算子注册接口硬件算子注册接口所需的输入参数见表6。表6硬件算子注册接口输入参数6.2.2.2子图或整图接入接口8GB/TXXXXX—XXXX深度学习框架应提供整图或子图接入接口,由硬件平台的图引擎自行接管计算图的组网与执行并返回计算结果,见表7。表7图生成与执行接口6.2.2.3神经网络编译器接口在硬件支持编译器后端或硬件支持代码生成器的情况下,可采用神经网络编译器来实现适配。硬件设备生产方为其硬件提供编译器后端,通过编译器将框架侧的计算图模型根据特定硬件目标产生编译器端的低层中间表示,然后根据硬件后端再转化为某个具体硬件上的可执行代码。编译器可以由深度学习框架实现,也可以采用第三方编译器接入。采用该方式进行适配,神经网络编译器后端接入接口规范应满足如下的要求。若深度学习框架支持神经网络编译器后端接入,则训练框架应提供框架计算图转化为编译器高层中间表示接口,见表8。表8框架计算图转化编译器高层中间表示的接口在硬件厂商对接的后端,编译器应提供从高层中间表示的接口转化为低层中间表示的接口,见表9。表9框编译器高层中间表示转为低层中间表示的接口在编译器后端底层,硬件厂商应根据各自不同的接入方式,对接编译器低层中间表示,生成相应硬件指令。接入方式包含代码生成(Codegen),算子库接入、子图计算库接入、硬件方自己设计的IR接入等,硬件厂商根据自己硬件的支持的方式选择其中一种接入。6.2.3分布式通信模块接口9GB/TXXXXX—XXXX深度学习训练框架应提供分布式通信模块接口供硬件平台的集合通信库接入,支持框架大规模分布式训练功能,分布式通信模块接口定义见表9。表10分布式通信模块接口xccl_get_unique_id_6.2.4训练场景适配接口规范深度学习训练框架应提供与异构硬件平台的适配接口文档与代码,且接口符合以下规定:a)设备管理模块接口应符合本文件6.2.1的规定,包括设备管理接口(见6.2.1.2)、内存管理接口(见6.2.1.3)、执行流管理接口(见6.2.1.4)和事件管理接口(见6.2.1.5);b)计算执行模块接口应符合本文件6.2.2的规定,可选择算子开发或映射接口(见6.2.2.1)、子图或整图接入接口(见6.2.2.2)、编译器后端接入接口(见6.2.2.3)其中一种实现;c)分布式通信模块接口应符合本文件6.2.3的规定。6.3推理场景适配接口要求6.3.1设备管理模块接口推理侧设备管理层接口应符合本文件6.2.1的规定。GB/TXXXXX—XXXX6.3.2计算执行模块接口6.3.2.1算子开发或映射接口推理侧算子开发或映射接口应符合6.2.2.1的规定。6.3.2.2子图或整图接入接口深度学习推理框架宜提供子图检测、融合和执行的能力,通过硬件抽象层接口,将框架层的图的中间表示转化为硬件厂商软件层的图的中间表示,并调用厂商接口生成硬件可执行模型后在目标硬件上执a)子图检测、融合和执行接口:包括子图检测接口、子图编译、执行接口。1)子图检测接口:根据硬件支持的算子,通过检测符合条件的所有子图,并将符合条件的子图进行融合,实现将全图切分、融合生成若干子图。2)子图编译、执行接口:将各个子图按照顺序下发至指定硬件的硬件适配层,调用该硬件的硬件抽象层接口,将子图编译生成硬件代码并执行。b)硬件抽象层接口:主要包括设备和模型接口。1)设备接口:进行设备基本信息的注册、参数配置和上下文管理,包括打开设备、关闭设备、创建设备上下文、销毁设备上下文接口,定义见表10。表11设备管理接口2)模型接口:包括框架层的图的中间表示向硬件厂商软件层的中间表示的转换,验证、创建、销毁和运行硬件可执行模型,定义见表11。表12模型接口选validate_program/vaGB/TXXXXX—XXXXy_model6.3.2.3编译器后端接入接口深度学习框架推理侧宜提供编译器后端接入接口。若深度学习框架支持神经网络编译器后端接入,则推理侧编译器后端接口要求应符合本文件6.2.2.3的规定。6.3.3分布式通信模块接口深度学习推理框架宜提供分布式通信模块接口供硬件平台的集合通信库接入,支持框架大规模分布式推理功能,接口要求应符合本文件6.2.3的规定。6.3.4推理场景适配接口规范深度学习推理框架应提供与异构硬件平台的适配接口文档与代码,且接口符合以下规定:a)设备管理模块接口应符合本文件6.3.1的规定,包括设备管理接口(见6.2.1.2)、内存管理接口(见6.2.1.3)、执行流管理接口(见6.2.1.4)和事件管理接口(见6.2.1.5);b)计算执行模块接口应符合本文件6.3.2的规定,可选择算子开发或映射接口(见6.3.2.1)、子图或整图接入接口(见6.3.2.2)、编译器后端接入接口(见6.3.2.3)其中一种实现;c)分布式通信模块接口宜符合本文件6.3.3的规定。7功能要求7.1训练场景适配功能要求7.1.1基本功能深度学习训练框架与异构硬件设备适配后的软硬件平台应具备多种安装部署能力:a)应提供对应软/硬件环境下的深度学习开发框架的安装包,支持安装/卸载功能;b)应提供对应软/硬件环境下的深度学习开发框架的容器运行镜像,支持容器内运行环境;c)应提供对应软/硬件环境下的深度学习开发框架的容器编译镜像,支持容器内源码编译;d)宜支持异构CPU编译并支持纯CPU训练场景,支持CPU算子内核优化与加速。深度学习训练框架与异构硬件设备适配后的软硬件平台应支持基础模型训练,且训练结果正确,性能符合对应硬件预期,压力测试下无异常结果。应符合在图像分类、目标检测、图像分割、语义表示、机器翻译、视频分类、智能推荐等应用领域的模型及其精度评估指标,见表A.1。7.1.2可靠性深度学习训练框架与异构硬件设备适配后的软硬件平台应在可靠性方面达到以下要求:a)应保证多次训练精度误差在一定范围内,训练精度结果可稳定复现;GB/TXXXXX—XXXXb)应支持7天以上长时间训练作业运行,且性能稳定、无资源泄露、精度无偏差;c)应支持在训练过程中的断点保存及训练遇到故障后的恢复,宜支持自动恢复;7.1.3训练效率深度学习训练框架与异构硬件设备适配后的软硬件平台应在性能效率方面达到以下要求:a)训练效率:应提供可供性能分析的数据来衡量模型训练速度,例如固定配置下模型训练时间;b)大规模分布式训练:应支持多机多卡分布式并行训练,并提供多卡与多机加速比数据;7.1.4易用性深度学习训练框架与异构硬件设备适配后的软硬件平台应在易用性方面达到以下要求:a)深度学习框架应提供说明文档,对新硬件接入深度学习框架的工作进行指导,硬件厂商可根据说明文档进行独立的深度学习框架的新硬件接入与适配开发工作;b)深度学习框架应提供使用文档,指导用户针对不同目标硬件进行模型开发工作与训练任务提交工作等。7.2推理场景适配功能要求7.2.1基本功能深度学习推理框架与异构硬件设备适配后的软硬件平台应具备多种安装部署能力,以便开发/测试/运维人员进行使用/管理/维护/升级等工作:a)应提供对应软/硬件环境下的深度学习推理框架的安装包,支持安装/卸载功能;b)应提供对应软/硬件环境下的深度学习推理框架的C/C++推理库,支持模型部署上线;c)应提供对应软/硬件环境下的深度学习推理框架的容器运行镜像,宜支持容器内运行环境;d)应提供对应软/硬件环境下的深度学习推理框架的容器编译镜像,宜支持容器内源码编译。深度学习推理框架与异构硬件设备适配后的软硬件平台应支持基础模型,结果正确,性能符合对应硬件预期,压力测试下无异常结果。a)云侧推理:应符合在图像分类、目标检测、图像分割、语义表示、机器翻译等应用领域的主流模型的评估指标,见表B.1。b)端侧推理:应符合在图像分类、目标检测、图像分割等应用领域的主流模型的评估指标,见表B.2。7.2.2可靠性深度学习推理框架与异构硬件设备适配后的软硬件平台应在可靠性方面达到以下要求:a)推理框架下多次推理精度误差在一定范围内,且推理框架的推理精度与训练框架的前向预测精度误差在一定范围内,推理精度结果可稳定复现;b)应支持7天以上长时间推理作业运行,且性能稳定、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 合同欺诈后的补充协议
- 硬件合同终止协议
- 股东投资协议合同范本
- 酒店协议合同折扣
- 卖猫合同协议
- 购房合同违约协议书范本
- 冰箱买卖合同协议书
- 商品采购协议合同
- 入股合同生效前退股协议
- 诚信协议合同
- 2024年汽车维修工高级理论考试题库带答案(满分必刷)
- 《自然教育》课件-自然记录
- 室上性心动过速-医学课件
- 英语专业四级听力50篇
- 课件:敏捷制造概述-美化讲解
- (高清版)TDT 1015.1-2024 地籍数据库 第1部分:不动产
- CJJT146-2011 城镇燃气报警控制系统技术规程
- 臭氧在骨科疾病治疗中的应用
- 2024年安徽省中考英语真题(原卷版+解析版)
- 轴承压装力计算软件
- 2024年佛山市高三二模普通高中教学质量检测二 数学试卷(含答案)
评论
0/150
提交评论