CN116048820B - 面向边缘云的dnn推断模型部署能耗优化方法和系统 - Google Patents

面向边缘云的dnn推断模型部署能耗优化方法和系统 Download PDF

Info

Publication number
CN116048820B
CN116048820B CN202310335972.5A CN202310335972A CN116048820B CN 116048820 B CN116048820 B CN 116048820B CN 202310335972 A CN202310335972 A CN 202310335972A CN 116048820 B CN116048820 B CN 116048820B
Authority
CN
China
Prior art keywords
heterogeneous
dnn
inference
energy consumption
model
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.)
Active
Application number
CN202310335972.5A
Other languages
English (en)
Other versions
CN116048820A (zh
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
Nari Technology Co Ltd
Original Assignee
Nanjing University
Nari Technology Co Ltd
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, Nari Technology Co Ltd filed Critical Nanjing University
Priority to CN202310335972.5A priority Critical patent/CN116048820B/zh
Publication of CN116048820A publication Critical patent/CN116048820A/zh
Application granted granted Critical
Publication of CN116048820B publication Critical patent/CN116048820B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/041Abduction
    • 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)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Neurology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种面向边缘云的DNN推断模型部署能耗优化方法和系统。所述方法在每个调度时隙内根据异构边缘节点的硬件属性配置并发DNN模型的推断组合,通过积累多个时隙不同DNN模型组合在异构边缘节点的执行时延的历史信息,利用基于上下文的组合多臂赌博机为当前时刻的DNN模型组合分发提供依据,从而不断调整当前时隙的DNN推断模型部署策略,降低异构节点的峰值负载时间,从而降低整体执行功率消耗。本发明能够在边缘云计算环境下优化系统能耗,提高能源利用率,且可以自适应地应对不同的工作负载,适用于各种边缘计算场景。

Description

面向边缘云的DNN推断模型部署能耗优化方法和系统
技术领域
本发明涉及数据中心网络以及资源调度领域,具体涉及一种面向边缘云的DNN推断模型部署能耗优化方法和设备。
背景技术
随着深度学习技术的不断发展和应用场景的扩大,基于神经网络的推断模型,即DNN推断模型,已成为众多人工智能应用的核心。然而,这些DNN模型的运行需要大量的计算资源和能源消耗,特别是在边缘计算环境中,由于设备功耗限制和电池寿命等问题,能源消耗的优化变得尤为重要。在这种背景下,采用并行加速器来提高推断模型的运行速度已成为主流。但是,这种做法在DNN推断模型不被使用时,仍需消耗静态功率,导致了能源浪费。同时,由于边缘计算环境下推断请求的动态变化,需要及时调整推断模型的部署和能耗控制策略,以保证能耗和性能的平衡。
为了实现在边缘云计算环境中的能耗优化和性能优化,许多研究者提出了各种各样的方法,比如针对不同的神经网络结构和算法特点,选择合适的硬件平台和加速器设备,并对其进行适当的配置和优化,或者采用合适的推断模型部署策略来实现能耗控制,在模型部署时,可以将模型的不同层次分配到不同的加速器设备上,以降低设备的空闲能耗,但是模型的不同层次在划分到不同设备上时,需要进行数据的传输和同步,会增加通信成本和延迟;或者根据推断请求的实时变化情况,动态地调整加速器设备的工作状态和能耗消耗策略,但是这种方法需要事先对推断请求的实时变化情况进行准确的监测和分析;亦或通过模型剪枝、量化、分组卷积等技术来优化模型的计算复杂度,从而降低能耗,通过基于遗传算法、强化学习等的算法,自适应地调节加速器设备的功率和计算负载,以实现更高效的推断过程,但是优化模型的计算复杂度可能会对模型的准确性造成一定影响,需要在准确性和能耗之间进行权衡和优化。
如何在不改变DNN推断模型的基本结构和复杂度的前提下,优化异构边缘推断系统的能耗,实现能源消耗和计算性能的最优平衡,是值得研究也是切实需要解决的问题。
发明内容
本发明的目的是提出一种面向边缘云的DNN推断模型部署能耗优化方法和设备,通过对神经网络模型的结构、算法和计算负载进行优化,实现了推断过程中的能耗控制和性能优化。同时,结合动态的推断请求变化,采用自适应的能耗调控策略,实现了能源消耗和计算性能的最优平衡。
为了达到上述发明目的,本发明采用以下技术方案:
第一方面,一种面向边缘云的DNN推断模型部署能耗优化方法,包括以下步骤:
离线信息采集:在部署的初始阶段,获取边缘云中的各异构节点在唤醒状态下的执行功率,并获取异构节点的硬件配置特性、逻辑处理器信息、采用的推断框架和并发加速套件信息,将这些信息作为预测多个推断模型并发执行时推断时延的离线上下文信息;
调度器初始化:在执行推断模型组合在线部署开始时,为每一种DNN推断模型维护一个基于设备信息和组合执行状态的上下文多臂赌博机,用于预测DNN推断模型在不同组合下的硬件吞吐提升比;并为每一个异构节点维护一个额外代价预测赌博机,用于预测异构节点由于网络波动或故障产生的额外开销;
在线部署:在当前时间域内,在每一个时隙初始时,根据当前时刻到达的请求数量和过去时隙内观测到的历史信息,综合探索代价和利用效果,以边缘云中能量消耗整体最优为目标建立优化问题,动态调整每个DNN推断模型在不同的设备上组合执行时硬件吞吐提升比预测值以及额外代价预测值,对于每种DNN推断模型,根据预测值以及异构节点在调度时隙内的最大计算能力,将DNN推断模型优先部署到具有更高硬件吞吐提升比和更低额外代价的节点上执行。
进一步地,建立的优化问题如下:
优化目标:
Figure SMS_1
(1)
约束条件:
1.1)对于每种推断模型,每个时隙部署到所有异构节点上的推断数量和到达的请求数量相同:
Figure SMS_2
1.2)在每个时隙,将DNN推断模型分配给异构节点的决策是整数:
Figure SMS_3
1.3)DNN推断模型组合上下文信息在实数域上的映射参数值与推断模型在异构边缘节点上的数量关系:
Figure SMS_4
1.4)异构节点的加速能力离线上下文信息:
Figure SMS_5
式中,函数
Figure SMS_6
和/>
Figure SMS_11
分别表示特定推断模型在异构节点上的不同组合下相比于串行执行的吞吐提升比、以及异构节点在不同时隙时由于网络或故障产生的额外开销;/>
Figure SMS_12
是异构节点的加速能力离线上下文信息,由其设备的各种计算核心数量
Figure SMS_8
加权决定,加权值为/>
Figure SMS_10
,/>
Figure SMS_13
表示采用的软件框架的并行能力评估参数,/>
Figure SMS_14
表示异构节点组合执行推断模型时的在线上下文信息,由当前时隙在当前设备上执行的推断模型数量/>
Figure SMS_7
加权决定,加权值为/>
Figure SMS_9
在问题模型中,
Figure SMS_15
表示异构节点在执行组合推断任务的唤醒状态时所消耗的功率,/>
Figure SMS_16
表示能耗的减少给边缘云系统带来的收益权重,/>
Figure SMS_17
表示当发生额外开销时边缘云系统的减益权重,/>
Figure SMS_18
表示推断模型在设备上单独执行时的推断时延,/>
Figure SMS_19
表示在时隙/>
Figure SMS_20
到达的特定推断模型总请求量,T表示调度时隙的总数量。
进一步地,对优化问题的求解包括:
将优化问题(1)分解到每一个时间域中的每个时隙,在每一个时隙结束的时候,实际求解如下优化问题:
优化目标:
Figure SMS_21
(2)
约束条件:
Figure SMS_22
式中,
Figure SMS_23
表示由推断模型组合分配方案决策变量对应的实数域的值构成的决策向量;/>
Figure SMS_24
为具有并行加速器的异构节点上资源的限制函数向量,以满足约束条件,包含约束条件1.1);约束条件1.3)和约束条件1.4)被代换到求解表达式(2)中,/>
Figure SMS_25
是异构节点吞吐能力提升比预测值的倒数;
Figure SMS_26
表示当前时隙所处的时间域,在每个时间域的每个时隙,在实数域上采用基于凸优化的梯度下降方法对优化问题(2)进行求解,得到实数域结果/>
Figure SMS_27
,用于在t时隙被应用部署。
进一步地,每一轮求解问题根据当前时隙随机变量的经验估计值确定,在每一轮算法结束后,根据观测结果更新随机变量的经验估计值,所述随机变量包括硬件吞吐提升比和额外代价,其中,硬件吞吐提升比的更新方式如下:
Figure SMS_28
Figure SMS_29
表示变量的经验估计值,/>
Figure SMS_30
表示变量的实际观察值;/>
Figure SMS_31
表示当前时间域的上下文搜索空间,/>
Figure SMS_32
表示在当前时间域内对应其上下文/>
Figure SMS_33
的值空间被访问的次数;
额外代价的更新方式如下:
Figure SMS_34
Figure SMS_35
表示异构节点n被访问的次数。
进一步地,实数域结果
Figure SMS_36
在t时隙被应用部署时,采用随机圆整的方法将实数域结果转化为整数域结果。
进一步地,所述方法还包括以下步骤:
信息收集:在每个时隙结束时,收集各个异构节点在DNN推断模型组合下完成的推断时延、功率消耗以及额外代价开销并存储,当前观测到的信息在各个时间域内均有效。
进一步地,所述方法还包括以下步骤:
时间域更新:随着在线部署阶段的不断展开,以指数形式扩展时间域,扩展方法如下:在当前时间域结束后,2倍扩展时间域,即时隙数量为上一时间域数量的2倍,同时将异构节点设备信息和组合执行状态的参数值搜索粒度细化为上一时间域的二分之一。
第二方面,一种计算机设备,包括:一个或多个处理器;存储器;以及一个或多个程序,其中所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述程序被处理器执行时实现如本发明第一方面所述的面向边缘云的DNN推断模型部署能耗优化方法的步骤。
第三方面,一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的面向边缘云的DNN推断模型部署能耗优化方法的步骤。
第四方面,一种面向边缘云的DNN推断模型部署能耗优化系统,包括一个控制节点和边缘云中的多个异构边缘计算节点,它们通过网络连接在一起,所述控制节点使用本发明第一方面所述的面向边缘云的DNN推断模型部署能耗优化方法,或者被配置为第二方面所述的计算机设备,来部署推断任务到各个边缘计算节点,边缘计算节点根据控制节点下发的推断部署决策,周期性地调整其推断模型实例数目。
相比于现有技术,本发明具有以下有益效果:本发明提出了在线化的面向边缘云的DNN推断模型组合部署能耗优化方法及系统,在每个调度时隙内根据异构边缘节点的硬件属性配置并发DNN模型的推断组合,通过积累多个时隙不同DNN模型组合在异构边缘节点的执行时延的历史信息,利用基于上下文的组合多臂赌博机为当前时刻的DNN模型组合分发提供依据,从而不断调整当前时隙的DNN推断模型部署策略,降低异构节点的峰值负载时间,从而降低整体执行功率消耗。本发明能够在边缘云计算环境下优化系统能耗,提高能源利用率。同时可以自适应地应对不同的工作负载,可以在线地、动态地适应用户推断请求的不断变化,提高系统处理效率,优化系统能量消耗。因此可以广泛应用于各种边缘计算场景,具有非常重要的实用价值。
附图说明
图1是根据本发明实施例的边缘云DNN推断模型部署能耗优化系统的结构示意图;
图2是根据本发明实施例的边缘云DNN推断模型部署能耗优化方法流程图;
图3是应用在线DNN推断模型能耗优化方法后边缘云中静息功率的变化情况对比;
图4是边缘云中异构计算节推断能耗损失的累积,即距离当前约束下最优能量消耗的累积偏差情况;
图5是应用能耗优化调度方法后队列约束的累积偏差情况;
图6是图5中A部分放大图。
具体实施方式
下面结合附图和实施例对本发明的技术方案作进一步说明。
参照图1,本发明提供一种在移动网络中应用的边缘云DNN推断模型能耗优化部署系统,该边缘计算推断模型组合部署系统包括控制节点和边缘云中的多个异构边缘计算节点,它们通过网络连接在一起,异构边缘计算节点下文中也被称为异构节点、边缘节点、边缘设备或计算节点,控制节点在下文中也被称为控制单元或中央调度器,边缘节点和控制节点之间通过心跳包进行交互。在一个实施方式中,控制节点包括:多臂赌博机(MAB)经验预估值生成单元、调度策略计算单元、边缘云信息收集单元、调度结果实施单元,其中,与边缘云直接交互的边缘云信息收集单元负责在调度的初始阶段,获取边缘云中的各异构节点在唤醒状态下的执行功率。同时异构节点应当将其硬件配置特性,包括并行加速器的种类、数量;逻辑处理器的种类、数量;采用的推断框架和并发加速套件等信息,以心跳包形式发送至中央调度器(即控制节点)。中央调度器将这些信息作为预测多个推断模型并发执行时推断时延的离线上下文信息,将其转化为具体参数保存在调度器内存中,形成如图1中所示的异构边缘特性上下文,为MAB经验预估值生成单元提供依据。同时边缘云信息收集单元也负责在每个时隙结束时,获取各个异构边缘节点对其DNN推断模型组合完成的推断时延、功率消耗以及额外代价开销的分析,这些信息伴随心跳包发送至中央调度器,为MAB经验预估值生成单元提供依据。调度策略计算单元负责计算实数域的推断组合部署决策向量,并将其发送至调度结果实施单元执行任务分发。调度策略计算单元通过根据当前时刻到达的请求数量和过去时隙内观测到的历史信息,综合探索代价和利用效果,以一段时间内边缘云中能量消耗整体最优为目标建立优化问题并求解,具体计算过程在下文中描述。MAB经验预估值生成单元不断更新对特定推断模型在异构边缘节点上的不同推断模型组合下相比于串行执行的吞吐提升比、以及异构节点在不同时隙时由于网络或者故障等原因产生的额外开销的估计值,获得更准确的经验预估值,使得调度策略计算单元中的求解更为精准。
该系统中控制节点与边缘云中具有并行加速器的异构计算节点进行周期性联动,控制节点(即中央调度器)执行面向边缘云的DNN推断模型能耗优化部署方法,通过结合每次部署后推断模型带来的实际推断能耗和额外开销,动态地为各计算节点进行推断服务实例数目调整,达到在边缘云环境中整体能量消耗最优的效果。在一种实施方式中,控制节点被实施为计算机设备,包括:一个或多个处理器;存储器;以及一个或多个程序,其中所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述程序被处理器执行时实现如下所述的面向边缘云的DNN推断模型部署能耗优化方法的步骤。参照图2,所述方法包括以下步骤:
(S1)在离线信息分析阶段,中央调度器获取边缘云中的各异构节点在唤醒状态下的执行功率。同时异构节点应当将其硬件配置特性,包括并行加速器的种类、数量;逻辑处理器的种类、数量;采用的推断框架和并发加速套件等信息告知中央调度器。中央调度器将这些信息作为预测多个推断模型并发执行时推断时延的离线上下文信息,将其转化为具体参数保存在调度器内存中。
(S2)调度器初始化阶段:在执行推断模型组合在线部署开始时,为每一种DNN推断模型都维护一个基于设备信息和组合执行状态的上下文多臂赌博机,该多臂赌博机用来预测DNN推断模型在不同的推断模型组合下,硬件的推断吞吐提升比。同时为每一个异构边缘节点都维护一个额外代价预测赌博机,用来预测边缘云网络中异构节点由于网络波动或者故障等原因产生的额外开销。
(S3)在线调度器部署阶段:在当前时间域内,在每一个时隙初始时,中央调度器根据当前时刻到达的请求数量和过去时隙内观测到的历史信息,综合探索代价和利用效果,动态调整每个DNN推断模型在不同的设备上组合执行时硬件吞吐提升比预测值,以及额外代价预测值。对于每种DNN推断模型,根据该预测值以及异构设备在调度时隙内的最大计算能力,优先部署DNN推断模型到具有更高硬件吞吐提升比和更低额外代价的设备上执行。
(S4)信息收集阶段:当每个时隙结束时,各个异构边缘节点分析其DNN推断模型组合完成的推断时延、功率消耗以及额外代价开销,伴随心跳包将其发送回中央调度器。中央调度器将该信息存储至内存,当前观测到的信息在各个时间域内均有效。
(S5)时间域更新阶段:随着在线部署阶段的不断展开,以指数形式扩展时间域。即在初始时间域,对于异构设备信息和DNN推断组合状态是粗粒度的。当前时间域结束后,2倍扩展时间域,即时隙数量为上一时间域数量的2倍,同时将设备信息和组合执行状态的参数值搜索粒度细化为上一时间域的二分之一。
其中,离线信息收集以及时隙结束时观测信息的收集可以由边缘云信息收集单元执行,在线调度器部署工作可以由调度策略计算单元、MAB经验预估值生成单元和调度结果实施单元配合执行。
具体而言,控制节点部署决策的总目标是为了在一段时间内(T个时隙),在受限于边缘计算节点资源和边缘网络带宽下,达到边缘云中能量消耗整体最优的效果(即推断精度最大化),建立的优化问题如下:
优化目标:
Figure SMS_37
(1)
约束条件:
1.1)对于每种推断模型,每个时隙部署到所有异构节点上的推断数量和到达的请求数量相同:
Figure SMS_38
1.2)在每个时隙,中央调度器将DNN推断模型分配给异构边缘节点的决策应当是整数:
Figure SMS_39
1.3)DNN推断模型组合上下文信息在实数域上的映射参数值与推断模型在异构边缘节点上的数量关系:
Figure SMS_40
1.4)异构边缘节点的加速能力离线上下文信息:
Figure SMS_41
式中,函数
Figure SMS_44
和/>
Figure SMS_46
分别表示特定推断模型在异构边缘节点上的不同推断模型组合下相比于串行执行的吞吐提升比、以及异构节点在不同时隙时由于网络或者故障等原因产生的额外开销。这两部分采用基于上下文的多臂赌博机的方式进行预测。/>
Figure SMS_48
是异构边缘节点的加速能力离线上下文信息,由其设备的各种计算核心数量/>
Figure SMS_43
加权决定,加权值为/>
Figure SMS_45
,/>
Figure SMS_47
表示采用的软件框架的并行能力评估参数。/>
Figure SMS_49
表示异构设备组合执行DNN推断设备时的在线上下文信息,由该时隙决定在当前设备上执行的DNN推断模型数量/>
Figure SMS_42
加权决定,加权值为/>
Figure SMS_50
在问题模型中,
Figure SMS_51
表示边缘节点在执行组合推断任务的唤醒状态时所消耗的功率,/>
Figure SMS_52
表示能耗的减少给边缘云系统带来的收益权重,/>
Figure SMS_53
表示当发生额外开销时边缘云系统的减益权重。/>
Figure SMS_54
表示推断模型在边缘设备上单独执行时的推断时延,/>
Figure SMS_55
表示在时刻/>
Figure SMS_56
特定推断模型到达的总请求量。T表示的调度时隙总的数量。
对优化问题的求解包括,将优化问题(1)分解到每一个时间域中的每个时隙,在每一个时隙结束的时候,实际求解如下优化问题:
优化目标:
Figure SMS_57
(2)
约束条件:
Figure SMS_58
式中,
Figure SMS_59
表示由推断模型组合分配方案决策变量对应的实数域的值构成的决策向量,/>
Figure SMS_60
表示决策变量/>
Figure SMS_61
在实数域上对应的值;/>
Figure SMS_62
为具有并行加速设备的计算节点上资源的限制函数向量,以满足约束条件,包含约束条件1.1);约束条件1.3)和约束条件1.4)被代换到求解表达式(2)中。/>
Figure SMS_63
是异构设备吞吐能力提升比值预测值的倒数。
Figure SMS_64
表示当前时隙所处的时间域,随着时间域的不断迭代,搜索空间越来越细致,能耗降低预期的估计也就越准确,算法计算得到的能耗降低预期越准确,能耗降低带来的实际收益越大。在每个时间域的每个时隙,在实数域上采用实数域上基于凸优化的梯度下降方法求解技术对优化问题(2)进行求解,得到实数域结果/>
Figure SMS_65
,用于在t时隙被应用部署。
本发明利用多臂赌博机的方式进行吞吐提升比和额外开销预测,两个随机变量的更新取决于当前时间域内对特征空间探索的程度和时间域
Figure SMS_66
的大小,并通过时隙t内基于DNN模型的推断模型的推断时延和异构边缘节点返回的心跳包提供反馈,其更新方式分别为:
Figure SMS_67
Figure SMS_68
其中
Figure SMS_69
表示变量的经验估计值,/>
Figure SMS_70
表示变量的实际观察值。在推断模型部署方法中,每一轮的求解问题根据当前时刻随机变量的经验估计值确定,在每一轮算法结束后,根据观测结果更新随机变量的经验估计值。对于随机变量/>
Figure SMS_71
,它和上下文有关,/>
Figure SMS_72
表示当前时间域的上下文搜索空间,/>
Figure SMS_73
表示在当前时间域内对应其上下文/>
Figure SMS_74
的值空间被访问的次数。对于随机变量qos,它和上下文无关,/>
Figure SMS_75
表示边缘节点被访问的次数。根据本发明的实施方式,记录每个异构设备和DNN推断模型组合上下文搜索空间对应的访问次数和吞吐提升比经验估计值,以及每个设备的额外开销的经验估计值。在每一轮更新时,根据求解优化问题获得的实数域决策变量,利用上述更新方式更新访问次数和经验估计值。并得到实际的决策方案。
实数域结果
Figure SMS_76
在t时隙被应用部署时,需要先采用随机圆整的方法将实数域结果转化为整数域结果。即将/>
Figure SMS_80
中各维度的整数部分提取出来,形成/>
Figure SMS_85
和/>
Figure SMS_78
两个部分;对/>
Figure SMS_82
的部分进行随机化提升或者随机化降低,其中有/>
Figure SMS_83
的概率将
Figure SMS_87
中的每一个维度提升/>
Figure SMS_79
倍,并有/>
Figure SMS_81
的概率将/>
Figure SMS_84
中的每一个维度降低/>
Figure SMS_86
倍,其中u为/>
Figure SMS_77
中各个维度的和。
返回的决策向量整数域值可能与随机变量在实数域时预期对应的上下文搜索空间
Figure SMS_88
有区别,算法在更新/>
Figure SMS_89
时,根据其应对的整数域值修正上下文所属空间,并更新相应的访问次数值。同时检索当前时隙是否是当前时间域的最后一个时隙,如果是,则2倍扩展时间域,将时隙数量扩为上一时间域数量的2倍,同时将设备信息和组合执行状态的参数值搜索粒度细化为上一时间域的二分之一。
图3表示应用在线DNN推断模型能耗优化方法后边缘云中静息功率的变化情况对比,可以看出尽管静息功率随着工作负载波动变化,但是静息功率始终稳定在平均功率附近,并且在一些工作负载高峰中,静息功率也能够保持比较低的功率水平。
图4表示应用在线DNN推断模型能耗优化方法后异构节点的能耗相比最优算法得到的能耗偏差。随着时间域的逐渐展开,算法在细化后的搜索空间中逐渐找到最优组合推断配置,对于第六种设备,相比于初始阶段,能耗优化降低尤其明显。
图5表示应用在线DNN推断模型能耗优化方法后每个时隙队列中任务数量的累积偏差情况,其中A部分在图6中放大表示,从图5和图6可以看出,算法能够在负载高峰期中实现队列累积任务数量不升反降,这是因为算法的动态调节机制发挥作用,当感知到持续的负载高峰到达时,通过开启更多机器保持队列稳定。
本发明通过不断调整DNN推断模型在异构边缘上的部署策略,逐步精确刻画模型能耗与边缘特性之间的关系,通过在线学习得到过往经验,从而为当前时隙DNN推断模型的部署提供依据,进而最优化异构边缘推断系统的能耗,实现能源消耗和计算性能的最优平衡。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的面向边缘云的DNN推断模型部署能耗优化方法的步骤。
应理解,本发明实施例中所提及的控制节点可以实现上述方法实施例中的全部的技术方案,其各个功能模块的功能能够根据上述方法实施例中的方法具体实现,其具体实现过程可参照上述实施例中的相关描述,此处不再赘述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,本发明中的流式数据分析任务处理方法在各系统中均适用,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。

Claims (8)

1.一种面向边缘云的DNN推断模型部署能耗优化方法,其特征在于,所述方法包括以下步骤:
离线信息采集:在部署的初始阶段,获取边缘云中的各异构节点在唤醒状态下的执行功率,并获取异构节点的硬件配置特性、逻辑处理器信息、采用的推断框架和并发加速套件信息,将这些信息作为预测多个推断模型并发执行时推断时延的离线上下文信息;
调度器初始化:在执行推断模型组合在线部署开始时,为每一种DNN推断模型维护一个基于设备信息和组合执行状态的上下文多臂赌博机,用于预测DNN推断模型在不同组合下的硬件吞吐提升比;并为每一个异构节点维护一个额外代价预测赌博机,用于预测异构节点由于网络波动或故障产生的额外开销;
在线部署:在当前时间域内,在每一个时隙初始时,根据当前时刻到达的请求数量和过去时隙内观测到的历史信息,综合探索代价和利用效果,以边缘云中能量消耗整体最优为目标建立优化问题,动态调整每个DNN推断模型在不同的设备上组合执行时硬件吞吐提升比预测值以及额外代价预测值,对于每种DNN推断模型,根据预测值以及异构节点在调度时隙内的最大计算能力,将DNN推断模型优先部署到具有更高硬件吞吐提升比和更低额外代价的节点上执行;
信息收集:在每个时隙结束时,收集各个异构节点在DNN推断模型组合下完成的推断时延、功率消耗以及额外代价开销并存储,当前观测到的信息在各个时间域内均有效;
时间域更新:随着在线部署阶段的不断展开,以指数形式扩展时间域,扩展方法如下:在当前时间域结束后,2倍扩展时间域,即时隙数量为上一时间域数量的2倍,同时将异构节点设备信息和组合执行状态的参数值搜索粒度细化为上一时间域的二分之一。
2.根据权利要求1所述的方法,其特征在于,建立的优化问题如下:
优化目标:
Figure QLYQS_1
(1)
约束条件:
1.1)对于每种推断模型,每个时隙部署到所有异构节点上的推断数量和到达的请求数量相同:
Figure QLYQS_2
1.2)在每个时隙,将DNN推断模型分配给异构节点的决策是整数:
Figure QLYQS_3
1.3)DNN推断模型组合上下文信息在实数域上的映射参数值与推断模型在异构边缘节点上的数量关系:
Figure QLYQS_4
1.4)异构节点的加速能力离线上下文信息:
Figure QLYQS_5
式中,函数
Figure QLYQS_7
和/>
Figure QLYQS_10
分别表示特定推断模型在异构节点上的不同组合下相比于串行执行的吞吐提升比、以及异构节点在不同时隙时由于网络或故障产生的额外开销;/>
Figure QLYQS_12
是异构节点的加速能力离线上下文信息,由其设备的各种计算核心数量/>
Figure QLYQS_8
加权决定,加权值为/>
Figure QLYQS_11
,/>
Figure QLYQS_13
表示采用的软件框架的并行能力评估参数,/>
Figure QLYQS_14
表示异构节点组合执行推断模型时的在线上下文信息,由当前时隙在当前设备上执行的推断模型数量
Figure QLYQS_6
加权决定,加权值为/>
Figure QLYQS_9
在问题模型中,
Figure QLYQS_15
表示异构节点在执行组合推断任务的唤醒状态时所消耗的功率,
Figure QLYQS_16
表示能耗的减少给边缘云系统带来的收益权重,/>
Figure QLYQS_17
表示当发生额外开销时边缘云系统的减益权重,/>
Figure QLYQS_18
表示推断模型在设备上单独执行时的推断时延,/>
Figure QLYQS_19
表示在时隙/>
Figure QLYQS_20
到达的特定推断模型总请求量,T表示调度时隙的总数量。
3.根据权利要求2所述的方法,其特征在于,对优化问题的求解包括:
将优化问题(1)分解到每一个时间域中的每个时隙,在每一个时隙结束的时候,实际求解如下优化问题:
优化目标:
Figure QLYQS_21
(2)
约束条件:
Figure QLYQS_22
式中,
Figure QLYQS_23
表示由推断模型组合分配方案决策变量对应的实数域的值构成的决策向量;
Figure QLYQS_24
为具有并行加速器的异构节点上资源的限制函数向量,以满足约束条件,包含约束1.1);约束条件1.3)和约束条件1.4)被代换到求解表达式(2)中,/>
Figure QLYQS_25
是异构节点吞吐能力提升比预测值的倒数;
Figure QLYQS_26
表示当前时隙所处的时间域,在每个时间域的每个时隙,在实数域上采用基于凸优化的梯度下降方法对优化问题(2)进行求解,得到实数域结果/>
Figure QLYQS_27
,用于在t时隙被应用部署。
4.根据权利要求3所述的方法,其特征在于,每一轮求解问题根据当前时隙随机变量的经验估计值确定,在每一轮算法结束后,根据观测结果更新随机变量的经验估计值,所述随机变量包括硬件吞吐提升比和额外代价,其中,硬件吞吐提升比的更新方式如下:
Figure QLYQS_28
Figure QLYQS_29
表示变量的经验估计值,/>
Figure QLYQS_30
表示变量的实际观察值;/>
Figure QLYQS_31
表示当前时间域的上下文搜索空间,/>
Figure QLYQS_32
表示在当前时间域内对应其上下文/>
Figure QLYQS_33
的值空间被访问的次数;
额外代价的更新方式如下:
Figure QLYQS_34
;/>
Figure QLYQS_35
表示异构节点n被访问的次数。
5.根据权利要求3所述的方法,其特征在于,实数域结果
Figure QLYQS_36
t时隙被应用部署时,采用随机圆整的方法将实数域结果转化为整数域结果。
6.一种计算机设备,其特征在于,包括:
一个或多个处理器;
存储器;以及
一个或多个程序,其中所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述程序被处理器执行时实现如权利要求1-5中任一项所述的面向边缘云的DNN推断模型部署能耗优化方法的步骤。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5中任一项所述的面向边缘云的DNN推断模型部署能耗优化方法的步骤。
8.一种面向边缘云的DNN推断模型部署能耗优化系统,其特征在于,包括一个控制节点和边缘云中的多个异构边缘计算节点,它们通过网络连接在一起,所述控制节点使用权利要求1-5中任一项所述的面向边缘云的DNN推断模型部署能耗优化方法,或者被配置为权利要求6所述的计算机设备,来部署推断任务到各个边缘计算节点,边缘计算节点根据控制节点下发的推断部署决策,周期性地调整其推断模型实例数目。
CN202310335972.5A 2023-03-31 2023-03-31 面向边缘云的dnn推断模型部署能耗优化方法和系统 Active CN116048820B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310335972.5A CN116048820B (zh) 2023-03-31 2023-03-31 面向边缘云的dnn推断模型部署能耗优化方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310335972.5A CN116048820B (zh) 2023-03-31 2023-03-31 面向边缘云的dnn推断模型部署能耗优化方法和系统

Publications (2)

Publication Number Publication Date
CN116048820A CN116048820A (zh) 2023-05-02
CN116048820B true CN116048820B (zh) 2023-06-06

Family

ID=86133581

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310335972.5A Active CN116048820B (zh) 2023-03-31 2023-03-31 面向边缘云的dnn推断模型部署能耗优化方法和系统

Country Status (1)

Country Link
CN (1) CN116048820B (zh)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2864946A1 (en) * 2012-06-21 2015-04-29 Thomson Licensing Method and apparatus for contextual linear bandits
WO2018222204A1 (en) * 2017-06-02 2018-12-06 Google Llc Systems and methods for black-box optimization
CN111158893B (zh) * 2018-11-06 2023-04-11 上海科技大学 应用于雾计算网络的任务卸载方法、系统、设备及介质
CN109947545B (zh) * 2019-03-11 2020-10-16 重庆邮电大学 一种基于用户移动性的任务卸载及迁移的决策方法
WO2022006830A1 (zh) * 2020-07-10 2022-01-13 广东石油化工学院 一种多队列多集群的任务调度方法及系统
CN112286677B (zh) * 2020-08-11 2021-07-16 安阳师范学院 一种面向资源受限边缘云的物联网应用优化部署方法
CN113887138A (zh) * 2021-10-09 2022-01-04 昆明理工大学 一种基于图神经网络和强化学习的wrsn充电调度方法
CN114217974A (zh) * 2021-12-20 2022-03-22 哈尔滨工业大学 一种云计算环境中的资源管理方法及系统
CN114968559B (zh) * 2022-05-06 2023-12-01 苏州国科综合数据中心有限公司 基于lsf的多主机多gpu分布式布置深度学习模型的方法

Also Published As

Publication number Publication date
CN116048820A (zh) 2023-05-02

Similar Documents

Publication Publication Date Title
CN109324875B (zh) 一种基于强化学习的数据中心服务器功耗管理与优化方法
Zhu et al. BLOT: Bandit learning-based offloading of tasks in fog-enabled networks
CN111722910B (zh) 一种云作业调度及资源配置的方法
CN107404523A (zh) 云平台自适应资源调度系统和方法
Yang et al. An utility-based job scheduling algorithm for cloud computing considering reliability factor
Zhang et al. A-SARSA: A predictive container auto-scaling algorithm based on reinforcement learning
CN112214301B (zh) 面向智慧城市基于用户偏好的动态计算迁移方法及装置
Goodarzy et al. Resource management in cloud computing using machine learning: A survey
Masoumzadeh et al. Dynamic virtual machine consolidation: A multi agent learning approach
Safavifar et al. Adaptive workload orchestration in pure edge computing: A reinforcement-learning model
CN116069512A (zh) 一种基于强化学习的Serverless高效资源分配方法及系统
Kanoun et al. Big-data streaming applications scheduling with online learning and concept drift detection
Masoumzadeh et al. A cooperative multi agent learning approach to manage physical host nodes for dynamic consolidation of virtual machines
Hussin et al. Efficient energy management using adaptive reinforcement learning-based scheduling in large-scale distributed systems
Xiao et al. Dscaler: A horizontal autoscaler of microservice based on deep reinforcement learning
CN116028193B (zh) 一种混部集群的大数据任务动态高能效调度方法和系统
CN116048820B (zh) 面向边缘云的dnn推断模型部署能耗优化方法和系统
CN117290102A (zh) 跨域异构资源的调度方法及装置
CN117156492A (zh) 一种基于深度强化学习的联合服务缓存、通信与计算的双时间尺度资源分配方法
CN116996941A (zh) 基于配网云边端协同的算力卸载方法、装置及系统
CN115686830A (zh) 边缘计算资源弹性调度方法及系统
CN113157344B (zh) 移动边缘计算环境下基于drl的能耗感知任务卸载方法
CN115562812A (zh) 面向机器学习训练的分布式虚拟机调度方法、装置和系统
Cui et al. Resource-Efficient DNN Training and Inference for Heterogeneous Edge Intelligence in 6G
KR20230089509A (ko) Bi-LSTM 기반 웹 애플리케이션 워크로드 예측 방법 및 장치

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
GR01 Patent grant
GR01 Patent grant