[发明专利]一种基于指令队列的分布式深度神经网络性能建模方法有效
申请号: | 201811592739.0 | 申请日: | 2018-12-20 |
公开(公告)号: | CN109657794B | 公开(公告)日: | 2022-09-06 |
发明(设计)人: | 李陈圣;秦晓卫;裴梓茜;李晓敏;杨渡佳 | 申请(专利权)人: | 中国科学技术大学 |
主分类号: | G06N3/10 | 分类号: | G06N3/10;G06N3/08;G06N3/063 |
代理公司: | 安徽省合肥新安专利代理有限责任公司 34101 | 代理人: | 汪祥虬 |
地址: | 230026 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于指令队列的分布式深度神经网络性能建模方法,特征是根据硬件性能参数、神经网络结构、底层计算架构、数据传输协议、链路带宽特点、服务器GPU拓扑结构,对深度神经网络进行分层映射拆分、分段计算,然后利用指令队列对训练一次迭代耗时进行估计,同时输出各硬件间的数据交互情况。由于本发明基于指令队列的分布式深度神经网络性能建模方法同时考虑了软硬件特征,使用了指令级的队列模型进行耗时分析,从而实现了对深度神经网络训练的一次迭代耗时估计和对各硬件数据交互过程的分析,适用于不同的硬件环境(不同的服务器、不同种类的GPU、不同块数的GPU)和不同的神经网络。 | ||
搜索关键词: | 一种 基于 指令 队列 分布式 深度 神经网络 性能 建模 方法 | ||
【主权项】:
1.一种基于指令队列的分布式深度神经网络性能建模方法,针对GPU上训练的深度神经网络一次迭代耗时建模,其特征在于:根据硬件性能参数、神经网络结构、底层计算架构CUDA、数据传输协议、链路带宽特点、服务器GPU拓扑结构,对深度神经网络进行分层映射拆分、分段计算,然后利用指令队列对训练一次迭代耗时进行估计,同时输出各硬件间的数据交互情况;具体操作步骤为:首先执行软硬件关键特征参数提取:在部署神经网络的GPU服务器上,使用linux系统指令查看硬件配置,提取硬件关键特征参数‑‑‑‑包括硬件性能参数、链路带宽、服务器GPU拓扑结构;根据神经网络代码,提取软件关键特征参数‑‑‑‑包括神经网络结构参数、数据传输协议;并将提取到的软硬件关键特征参数汇总成配置文件;然后进行单GPU性能建模,将深度神经网络训练一次迭代耗时拆分为数据传输时间、前向传播时间、反向传播时间分别计算,其中前向传播时间和反向传播时间根据神经网络结构再进行分层拆分;再根据相应的CUDA核函数的计算原理得到执行一层的所有核函数,转化成指令;然后使用提出的队列模型将指令转化成耗时,最终得到一次迭代耗时的估计;最后进行多GPU性能建模,基于单GPU性能建模的前向反向传播时间建模结果,结合GPU拓扑结构和吞吐量模型,根据传输模式构建传输模型,计算传输时间,最终得到一次迭代耗时的估计,同时输出硬件间的数据交互过程,包括开始和结束的时间、进行数据交互的硬件以及本次交互的数据量。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学技术大学,未经中国科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201811592739.0/,转载请声明来源钻瓜专利网。