CN115345306A - 深度神经网络调度方法及调度器 - Google Patents

深度神经网络调度方法及调度器 Download PDF

Info

Publication number
CN115345306A
CN115345306A CN202211123150.2A CN202211123150A CN115345306A CN 115345306 A CN115345306 A CN 115345306A CN 202211123150 A CN202211123150 A CN 202211123150A CN 115345306 A CN115345306 A CN 115345306A
Authority
CN
China
Prior art keywords
neural network
layer
deep neural
edge
edge device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211123150.2A
Other languages
English (en)
Inventor
吴家皋
沈张驰
刘林峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN202211123150.2A priority Critical patent/CN115345306A/zh
Publication of CN115345306A publication Critical patent/CN115345306A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种深度神经网络调度方法及调度器,该方法主要包括:构建边缘智能系统和深度神经网络推理任务模型,边缘智能系统包括多个相互联网的边缘设备,设定各边缘设备的计算能力和各边缘设备之间的网络传输带宽,以及每层神经网络的推理计算量和输出数据量;计算每层神经网络的在每个边缘设备上的运行时间,得到深度神经网络推理的最小运行时间以及对应的最优设备队列;根据得到的最优设备队列,对每层神经网络进行设备分配。相较于现有技术,本发明利用多个边缘设备对深度神经网络的网络层进行多次划分,能有效减少推理时间,具有更广的通用性和更强的适用性。

Description

深度神经网络调度方法及调度器
技术领域
本发明涉及一种深度神经网络调度方法及调度器,属于分布式深度神经网络推理任务模型推理技术领域。
背景技术
作为支持现代智能移动应用的重要技术,深度神经网络(Deep Neural Networks)是目前最为常用的机器学习技术,并日益受到人们的欢迎。由于深度神经网络能够执行高度准确且可靠的推理任务,从而在计算机视觉、语音识别和自然语言处理等领域中得以广泛应用。然而,由于基于深度神经网络的应用程序通常需要大量的推理计算,而当前移动设备处理器的性能并不足以支持这些应用程序的运行。为了应对这一问题,传统做法是借助性能强大的远程服务器对深度神经网络进行训练和评估。然而,这种以云服务器为中心的方法,大量数据需要通过广域网上传到远程服务器,导致移动设备的通信延迟和能耗增高,并给数据中心带来巨大的计算压力。因而,为了缓解以云服务器为中心方法的延迟和能源瓶颈,研究人员利用新兴的边缘计算(Edge Computing)进行深度神经网络推理。具体地说,通过将云能力从网络核心推送到靠近设备的网络边缘,边缘计算实现了低延迟和节能深度神经网络推理,也称作边缘智能(Edge Intelligence)。
而在边缘智能的应用过程中,常出现因神经网络层的划分不合理导致了深度神经网络推理的时间性能负优化的问题。Yiping Kang等提出了一种名为神经外科(Neurosurgeon)的调度器以解决上述问题。但是上述方法仍有一定的局限性,即神经外科调度器对深度神经网络仅能进行一次划分,也只能调度边缘智能系统中的两台设备进行协同推理,从而限制了系统性能的提升。
有鉴于此,确有必要提出一种深度神经网络调度方法及调度器,以解决上述问题。
发明内容
本发明的目的在于提供一种深度神经网络调度方法及调度器,能够有效减少深度神经网络的推理时间。
为实现上述目的,本发明提供了一种深度神经网络调度方法,主要包括以下步骤:
步骤1、构建边缘智能系统和深度神经网络推理任务模型,边缘智能系统包括多个相互联网的边缘设备,设定各边缘设备的计算能力和各边缘设备之间的网络传输带宽,以及每层神经网络的推理计算量和输出数据量;
步骤2、计算每层神经网络的在每个边缘设备上的运行时间,得到深度神经网络推理的最小运行时间以及对应的最优设备队列;
步骤3、根据得到的最优设备队列,对每层神经网络进行设备分配。
作为本发明的进一步改进,在步骤2中,经过深度神经网络优化调度后的最优设备队列为
A=<A0,A1,...,AL>,
其中,Al∈[1,N],l∈[1,L],表示第l层神经网络推理计算所分配的设备号,A0∈[1,N]为深度神经网络初始输入数据所存放的设备号;N为边缘设备总数,i,j∈[1,N],Ui为第i个边缘设备的计算能力,Bij为边缘设备i到边缘设备j的网络传输带宽;L为深度神经网络推理任务模型的总层数,l∈[1,L],Cl为第l层神经网络的推理计算量,Dl为第l层的输出数据量。
作为本发明的进一步改进,在步骤2中,深度神经网络推理的最短运行时间为Topt,最短运行时间Topt的初始值为0。
作为本发明的进一步改进,步骤2具体包括以下步骤:
步骤21、设置初始神经网络层l=1;
步骤22、对边缘设备i∈[1,N],分别计算边缘设备i为第l层神经网络推理的运行设备时,所需要的运行时间ti
步骤23、计算Al,将运行时间最小的边缘设备作为第l层神经网络推理的优化调度设备;
步骤24、计算
Figure BDA0003847242650000033
获得第l层神经网络推理的最小运行时间;
步骤25、更新
Figure BDA0003847242650000034
步骤26、更新l=l+1;若l≤L,跳转至步骤22;否则优化调度完成,跳转至步骤3。
作为本发明的进一步改进,步骤22中,运行时间ti为:
Figure BDA0003847242650000031
作为本发明的进一步改进,步骤23中,Al=argmini∈[1,N]{ti}。
作为本发明的进一步改进,步骤24中,
Figure BDA0003847242650000032
作为本发明的进一步改进,在步骤3中,将深度神经网络以网络层为单位进行功能分割,共分为L层神经网络,根据所得到的最优设备队列A,将第l层神经网络分配给边缘设备Al
作为本发明的进一步改进,步骤3具体包括以下步骤:
步骤31、边缘设备A0将神经网络初始输入数据发给边缘设备A1
步骤32、边缘设备A1将接收到的数据作为第1层神经网络的输入,完成第1层神经网络的推理任务,并将第1层神经网络的输出数据发送给边缘设备A2
步骤33、以此类推,直到边缘设备AL完成推理,得到的输出数据即为深度神经网络推理任务模型的最终推理结果。
为实现上述目的,本发明还提供了一种调度器,应用如上所述的深度神经网络调度方法。
本发明的有益效果是:本发明利用多个边缘设备对深度神经网络的网络层进行多次划分,能有效减少推理时间,具有更广的通用性和更强的适用性。
附图说明
图1是本发明深度神经网络调度方法的流程结构图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
在此,需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
另外,还需要说明的是,术语“包括”、“包含”或者任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
如图1所示,本发明提出了一种基于边缘智能的深度神经网络调度方法及调度器,该调度器可以在移动设备和数据中心之间以神经网络层的粒度自动划分深度神经网络推理的计算任务,以获得最低的延迟或最低移动设备能源损耗,所述调度器应用深度神经网络调度方法,并通过在边缘智能系统中设置多个边缘设备,并能对深度神经网络的网络层进行多次划分,主要包括以下步骤:
步骤1、构建边缘智能系统和深度神经网络推理任务模型,边缘智能系统包括多个相互联网的边缘设备,设定各边缘设备的计算能力和各边缘设备之间的网络传输带宽,以及每层神经网络的推理计算量和输出数据量;
步骤2、计算每层神经网络的在每个边缘设备上的运行时间,得到深度神经网络推理的最小运行时间以及对应的最优设备队列;
步骤3、根据得到的最优设备队列,对每层神经网络进行设备分配。
以下将对步骤1-步骤3进行详细说明。
在步骤1中,设N为边缘设备总数,对于i,j∈[1,N],定义Ui为第i个边缘设备的计算能力,以每秒能处理的浮点操作数表示;
Bij为边缘设备i到边缘设备j的网络传输带宽,以每秒能传输的字节数表示,并令Bii=inf,其中inf设为一很大的正数,表示设备本机内网络传输带宽足够大;
L为深度神经网络推理任务模型的总层数,对于l∈[1,L],定义Cl为第l层神经网络的推理计算量,以浮点操作数表示,Dl为第l层的输出数据量,以字节数表示,并令D0表示深度神经网络的初始输入数据量。
在步骤2中,设经过深度神经网络优化调度后的最优设备队列为A=<A0,A1,...,AL>,其中,Al∈[1,N],l∈[1,L],表示第l层神经网络推理计算所分配的设备号,A0∈[1,N]为深度神经网络初始输入数据所存放的设备号;设优化调度后深度神经网络推理的最短运行时间为Topt,其初始值为0,则最优设备队列A和最短运行时间T的计算方法如具体包括以下步骤:
步骤21、设置初始神经网络层l=1;
步骤22、对边缘设备i∈[1,N],分别计算边缘设备i为第l层神经网络推理的运行设备时,所需要的运行时间ti
Figure BDA0003847242650000051
步骤23、计算Al=argmini∈[1,N]{ti},即将运行时间最小的边缘设备作为第l层神经网络推理的优化调度设备;
步骤24、计算
Figure BDA0003847242650000053
获得第l层神经网络推理的最小运行时间;
步骤25、更新
Figure BDA0003847242650000052
步骤26、更新l=l+1;若l≤L,跳转至步骤22;否则优化调度完成,跳转至步骤3。
在步骤3中,将深度神经网络以网络层为单位进行功能分割,共分为L层神经网络,根据所得到的最优设备队列A,将第l层神经网络分配给边缘设备Al,则深度神经网络的优化协同推理过程具体如下所示:
步骤31、边缘设备A0将神经网络初始输入数据发给边缘设备A1
步骤32、边缘设备A1将接收到的数据作为第1层神经网络的输入,完成第1层神经网络的推理任务,并将第1层神经网络的输出数据发送给边缘设备A2
步骤33、以此类推,直到边缘设备AL完成推理,得到的输出数据即为深度神经网络推理任务模型的最终推理结果。
为了验证本发明的任务优化调度方法能够有效实现减少时间成本,以下进行具体说明。
设边缘设备总数N=3,各边缘设备的计算能力(单位:FLOPS)为:U1=5.0×1011,U2=2.0×1011,U3=1.0×1011
各边缘设备之间的网络传输带宽(单位:B/s)为:B11=inf,B12=2.0×109,B13=5.0×106,B21=2.0×109,B22=inf,B23=1.0×108,B31=5.0×106,B32=1.0×108,B33=inf,且令inf=1.0×1050为一很大的正数。
设深度神经网络推理任务模型的总层数L=4,各神经网络层的推理计算量(单位:FLOP)为:C1=2.0×108,C2=9.0×108,C3=5.0×108,C4=3.0×108
各神经网络层的输出数据量(单位:Byte)为:D1=1.2×105,D2=3.0×104,D3=3.0×103,D4=5.0×102,且令该深度神经网络的初始输入数据量D0=1.5×105,初始输入数据所存放的边缘设备号A0=3。
计算第1层神经网络推理任务在各设备上所需要的运行时间:
Figure BDA0003847242650000061
Figure BDA0003847242650000071
Figure BDA0003847242650000072
计算得到使第1层神经网络推理运行时间最小的边缘设备号A1=3,第1层神经网络推理的最小运行时间
Figure BDA0003847242650000073
赋值优化调度后深度神经网络推理的最短运行时间
Figure BDA0003847242650000074
同理可得,使第2层神经网络推理运行时间最小的边缘设备号A2=2,第2层神经网络推理的最小运行时间
Figure BDA0003847242650000075
赋值优化调度后深度神经网络推理的最短运行时间
Figure BDA0003847242650000076
使第3层神经网络推理运行时间最小的边缘设备号A3=1,第3层神经网络推理的最小运行时间
Figure BDA0003847242650000077
赋值优化调度后深度神经网络推理的最短运行时间
Figure BDA0003847242650000078
使第4层神经网络推理运行时间最小的边缘设备号A4=1,第4层神经网络推理的最小运行时间
Figure BDA0003847242650000079
赋值优化调度后深度神经网络推理的最短运行时间
Figure BDA00038472426500000710
Figure BDA00038472426500000711
由上,将深度神经网络以网络层为单位分割成4层神经网络,根据得到的最优设备队列A=<3,3,2,1,1>,将第1层神经网络分配给边缘设备3,第2层神经网络分配给边缘设备2,第3、4层神经网络分配给边缘设备1。
则深度神经网络的优化协同推理运行过程为:边缘设备3将神经网络初始输入数据作为第1层神经网络的输入以完成第1层神经网络的推理任务,完成后将输出数据发送给边缘设备2;边缘设备2将接收到的数据作为第2层神经网络的输入,完成第2层神经网络的推理任务,并将第2层神经网络的输出数据发送给边缘设备1;边缘设备1将接收到的数据作为第3层神经网络的输入,依序完成第3、4层深度神经网络推理,第4层的输出数据即为深度神经网络推理任务模型的最终推理结果。
综上所述,本发明考虑了边缘智能系统中多个边缘设备,并能对深度神经网络的网络层进行多次划分,相较于现有方法,能够有效减少深度神经网络的推理时间;其次,本发明从实际边缘智能应用的角度出发,构建边缘智能系统和深度神经网络推理任务模型,具有更广的通用性和更强的适用性。
以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种深度神经网络调度方法,其特征在于,主要包括以下步骤:
步骤1、构建边缘智能系统和深度神经网络推理任务模型,边缘智能系统包括多个相互联网的边缘设备,设定各边缘设备的计算能力和各边缘设备之间的网络传输带宽,以及每层神经网络的推理计算量和输出数据量;
步骤2、计算每层神经网络的在每个边缘设备上的运行时间,得到深度神经网络推理的最小运行时间以及对应的最优设备队列;
步骤3、根据得到的最优设备队列,对每层神经网络进行设备分配。
2.根据权利要求1所述的深度神经网络调度方法,其特征在于:在步骤2中,经过深度神经网络优化调度后的最优设备队列为
A=<A0,A1,...,AL>,
其中,Al∈[1,N],l∈[1,L],表示第l层神经网络推理计算所分配的设备号,A0∈[1,N]为深度神经网络初始输入数据所存放的设备号;N为边缘设备总数,i,j∈[1,N],Ui为第i个边缘设备的计算能力,Bij为边缘设备i到边缘设备j的网络传输带宽;L为深度神经网络推理任务模型的总层数,l∈[1,L],Cl为第l层神经网络的推理计算量,Dl为第l层的输出数据量。
3.根据权利要求2所述的深度神经网络调度方法,其特征在于:在步骤2中,深度神经网络推理的最短运行时间为Topt,最短运行时间Topt的初始值为0。
4.根据权利要求3所述的深度神经网络调度方法,其特征在于:步骤2具体包括以下步骤:
步骤21、设置初始神经网络层l=1;
步骤22、对边缘设备i∈[1,N],分别计算边缘设备i为第l层神经网络推理的运行设备时,所需要的运行时间ti
步骤23、计算Al,将运行时间最小的边缘设备作为第l层神经网络推理的优化调度设备;
步骤24、计算
Figure FDA0003847242640000021
获得第l层神经网络推理的最小运行时间;
步骤25、更新
Figure FDA0003847242640000022
步骤26、更新l=l+1;若l≤L,跳转至步骤22;否则优化调度完成,跳转至步骤3。
5.根据权利要求4所述的深度神经网络调度方法,其特征在于:步骤22中,运行时间ti为:
Figure FDA0003847242640000023
6.根据权利要求4所述的深度神经网络调度方法,其特征在于:步骤23中,Al=argmini∈[1,N]{ti}。
7.根据权利要求4所述的深度神经网络调度方法,其特征在于:步骤24中,
Figure FDA0003847242640000024
8.根据权利要求2所述的深度神经网络调度方法,其特征在于:在步骤3中,将深度神经网络以网络层为单位进行功能分割,共分为L层神经网络,根据所得到的最优设备队列A,将第l层神经网络分配给边缘设备Al
9.根据权利要求8所述的深度神经网络调度方法,其特征在于:步骤3具体包括以下步骤:
步骤31、边缘设备A0将神经网络初始输入数据发给边缘设备A1
步骤32、边缘设备A1将接收到的数据作为第1层神经网络的输入,完成第1层神经网络的推理任务,并将第1层神经网络的输出数据发送给边缘设备A2
步骤33、以此类推,直到边缘设备AL完成推理,得到的输出数据即为深度神经网络推理任务模型的最终推理结果。
10.一种调度器,其特征在于:应用如权利要求1-9中任一项所述的深度神经网络调度方法。
CN202211123150.2A 2022-09-15 2022-09-15 深度神经网络调度方法及调度器 Pending CN115345306A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211123150.2A CN115345306A (zh) 2022-09-15 2022-09-15 深度神经网络调度方法及调度器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211123150.2A CN115345306A (zh) 2022-09-15 2022-09-15 深度神经网络调度方法及调度器

Publications (1)

Publication Number Publication Date
CN115345306A true CN115345306A (zh) 2022-11-15

Family

ID=83956183

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211123150.2A Pending CN115345306A (zh) 2022-09-15 2022-09-15 深度神经网络调度方法及调度器

Country Status (1)

Country Link
CN (1) CN115345306A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115858131A (zh) * 2023-02-22 2023-03-28 山东海量信息技术研究院 一种任务执行方法、系统、设备及可读存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115858131A (zh) * 2023-02-22 2023-03-28 山东海量信息技术研究院 一种任务执行方法、系统、设备及可读存储介质

Similar Documents

Publication Publication Date Title
CN113516250B (zh) 一种联邦学习方法、装置、设备以及存储介质
CN111242282B (zh) 基于端边云协同的深度学习模型训练加速方法
CN108460457A (zh) 一种面向卷积神经网络的多机多卡混合并行异步训练方法
WO2024060571A1 (zh) 面向异构算力的多策略智能调度方法和装置
CN111556516B (zh) 面向时延和能效敏感业务的分布式无线网络任务协同分配方法
CN113485826A (zh) 一种边缘服务器负载均衡方法、系统
CN115686846B (zh) 边缘计算中融合图神经网络和强化学习的容器集群在线部署方法
CN116489708B (zh) 面向元宇宙的云边端协同的移动边缘计算任务卸载方法
CN115345306A (zh) 深度神经网络调度方法及调度器
CN114327811A (zh) 一种任务调度方法、装置、设备及可读存储介质
CN112835684B (zh) 一种面向移动边缘计算的虚拟机部署方法
CN115879543B (zh) 一种模型训练方法、装置、设备、介质及系统
Chen et al. A3C-based and dependency-aware computation offloading and service caching in digital twin edge networks
CN116501483A (zh) 基于多智能体强化学习的车辆边缘计算任务调度方法
CN110830294A (zh) 一种基于分支定界法的边缘计算任务分配方法
CN115983032A (zh) 一种数字孪生辅助的边缘计算资源分配方法
CN104507150A (zh) 一种基带池内虚拟资源分簇方法
Duan et al. Lightweight federated reinforcement learning for independent request scheduling in microgrids
CN113572647A (zh) 一种基于强化学习的区块链-边缘计算联合系统
CN113254215A (zh) 数据处理方法和装置、存储介质及电子设备
CN113537504A (zh) 一种基于边缘节点的迁移学习方法、装置与系统
Di Cicco et al. DRL-FORCH: A Scalable Deep Reinforcement Learning-based Fog Computing Orchestrator
US20220237045A1 (en) Method, device, and program product for managing computing system
CN115174681B (zh) 一种边缘计算服务请求调度方法、设备及存储介质
Wang et al. Automatically setting parameter-exchanging interval for deep learning

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination