CN113535393A - 异构边缘计算中卸载dag任务的计算资源分配方法 - Google Patents

异构边缘计算中卸载dag任务的计算资源分配方法 Download PDF

Info

Publication number
CN113535393A
CN113535393A CN202110784975.8A CN202110784975A CN113535393A CN 113535393 A CN113535393 A CN 113535393A CN 202110784975 A CN202110784975 A CN 202110784975A CN 113535393 A CN113535393 A CN 113535393A
Authority
CN
China
Prior art keywords
task
edge computing
execution request
computing device
execution
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.)
Granted
Application number
CN202110784975.8A
Other languages
English (en)
Other versions
CN113535393B (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.)
Hunan Institute of Technology
Original Assignee
Hunan Institute of Technology
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 Hunan Institute of Technology filed Critical Hunan Institute of Technology
Priority to CN202110784975.8A priority Critical patent/CN113535393B/zh
Publication of CN113535393A publication Critical patent/CN113535393A/zh
Application granted granted Critical
Publication of CN113535393B publication Critical patent/CN113535393B/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/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
    • 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/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • 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)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

异构边缘计算中卸载DAG任务的计算资源分配方法,由移动设备将DAG任务卸载上传到边缘计算设备上,边缘计算设备为应用的DAG任务构造按B‑Level降序排列的缓冲队列,由协同器从缓冲队列中取出队首的就绪任务实现对DAG任务的解耦合,并把就绪任务映射到按最迟完成时间升序排列的队列中,再将该队列中的任务按排序逐个取出。边缘计算设备估算出任务在其上能开始执行的时间、估计完成时间和执行消耗并发出执行请求。通过分析执行请求、构建执行请求集合、计算执行请求权值并根据执行请求权值为DAG任务分配合适计算资源。通过该方法能实现计算资源更合理、高效地分配,缩短应用的平均处理时间,提高异构边缘计算网络的运行效率,降低应用执行消耗。

Description

异构边缘计算中卸载DAG任务的计算资源分配方法
技术领域
本发明涉及移动计算和物联网应用处理技术领域,特别涉及一种适用于异构边缘计算环境中卸载DAG任务的计算资源分配的方法。
背景技术
随着智能移动设备的普及,各种复杂移动应用蓬勃发展。诸如像自动驾驶、姿态识别、增强现实等应用程序,它们内部由任务之间的依赖约束形成有向无环图(DirectedAcyclic Graph,DAG)的逻辑结构。这类应用通常都既有大量资源消耗需求,又有时延敏感要求。利用计算卸载技术,部署在网络边缘的计算设备能有效地为这些移动设备分配计算资源,改善应用执行的用户体验。
当前,在可实施的多用户DAG任务卸载策略方面,现有工作从应用的平均时延、通信带宽分配、通信吞吐量等方面为多用户卸载DAG任务提出了不同优化目标的任务调度策略。例如:中国专利文献CN112380008A公开了一种面向移动边缘计算应用的多用户细粒度任务卸载调度方法,其考虑系统的能耗和延迟把计算卸载看作一个约束多目标优化问题(CMOP),然后通过改进的NSGA-Ⅱ算法来解决CMOP。已有的研究DAG任务计算卸载的工作,在面对多用户竞争计算资源时,都只根据用户卸载请求的简单优先级为不同用户的DAG任务分配计算资源,并未考虑服务供给方(边缘计算设备)和服务使用方(智能移动设备)在资源分配中的效用因素。
实际上,由于边缘计算设备分布部署在地理位置不同的网络边缘,它们即便去处理同一个任务也可能因各个设备自身的特性以及所处地理位置的差异,而产生不同的执行消耗。此外,因应用的任务自身计算负载和对资源消耗的差异性,同一个边缘计算设备在执行各个应用的不同任务时也会产生不同的执行消耗。目前已经有一些关于移动应用和边缘计算设备之间计算资源和通信资源分配问题的研究,但这些研究通常只考虑移动应用是由一些独立的计算任务构成,即任务之间没有依赖约束,这些方法和优化方案都无法直接应用到由DAG任务图构成的移动应用上。
发明内容
本发明的目的是提供一种异构边缘计算中卸载DAG任务的计算资源分配方法,通过匹配合适的边缘计算设备、缩短应用的平均处理时间,提高异构边缘计算网络的运行效率,有效降低移动设备利用边缘计算设备资源卸载处理DAG任务的执行消耗。
为了实现上述目的,本发明采用如下技术方案:一种异构边缘计算中DAG任务计算卸载的计算资源分配方法,在所构建的异构边缘计算网络中,由协同器实时收集能够互相通信的各边缘计算设备的当前状态信息并发布给其它边缘计算设备;为每个边缘计算设备分配一个指定的服务区域,并令其负责接收自身服务区域内的移动设备发来的计算卸载请求和上传的应用数据以及在其自身服务区域内的移动设备与其他服务区域的边缘计算设备进行数据传输时作为中转站;并按照以下步骤进行DAG任务计算卸载的计算资源分配:
S1.给每个移动设备要运行的应用n分别增加一个入口伪节点tn0和一个出口伪节点tnI
S2.移动设备向其所在服务区域的边缘计算设备发送应用数据;
S3.当应用数据到达时,边缘计算设备根据上传的应用数据确定各个任务的B-Level优先级;
S4.边缘计算设备为已到达自己的每个不同卸载请求构造一个任务缓存列表,并在每个缓存列表内将相应应用的任务按照B-Level降序排列;
S5.边缘计算设备给缓存列表中的每个任务分配一个最迟完成时间
Figure BDA0003158903170000035
S6.协同器从所有边缘计算设备的任务缓存列表集合中找出就绪任务,并把就绪任务映射到一个按照最迟完成时间升序排列的队列Qau中;
S7.从队列Qau中取出队首任务tni,任务tni向协同器发布其自身的代码解析信息,所述代码解析信息包括关联的依赖约束、依附的输入/输出数据及计算负载量;
S8.边缘计算设备收到任务tni发布的代码解析信息后,根据自身当前的工作负荷量以及要传输给任务tni的数据到达情况估算出任务tni在其上能开始执行的时间
Figure BDA0003158903170000031
和估计完成时间
Figure BDA0003158903170000032
S9.边缘计算设备向协同器发送执行请求
Figure BDA0003158903170000033
其中,
Figure BDA0003158903170000034
是该边缘计算设备估计执行完任务tni需要的执行时间,
Figure BDA0003158903170000041
Figure BDA0003158903170000042
表示由该边缘计算设备在估计完成时间
Figure BDA0003158903170000043
之前执行完成任务tni所产生的消耗;
S10.判断任务tni在发送执行请求的边缘计算设备上执行时是否满足条件:
Figure BDA0003158903170000044
并根据判断结果构建执行请求集合;
S11.计算执行请求集合中各执行请求的权值
Figure BDA0003158903170000045
其中,
Figure BDA0003158903170000046
根据各执行请求的权值
Figure BDA0003158903170000047
大小,将任务tni调度分配到合适的边缘计算设备上;
S12.再次执行步骤S7-S11,直至队列Qau中所有任务都分配完毕;
S13.当有一个新应用到达或者有一个任务在网络系统中完成时,再次执行步骤S6-S12,直到没有新应用到达且网络中且已到达的所有任务都已执行完时结束。
其中,在步骤S3中,任务的B-Level优先级按下式(1)计算:
Figure BDA0003158903170000048
式(1)中,tnj是任务tni的直接后继任务,dnij是任务tni要传输给任务tnj的数据传输量,
Figure BDA0003158903170000049
是网络中所有边缘计算设备之间的平均数据传输率,δni是任务tni的计算负载量,
Figure BDA00031589031700000410
是网络中所有边缘计算设备的平均处理能力,I是应用n的任务节点数,I包括给应用增加的入口伪节点tn0和出口伪节点tnI
其中,在步骤S5中:任务的最迟完成时间
Figure BDA00031589031700000411
按照下式(2)计算:
Figure BDA0003158903170000051
式(2)中,ln是应用n需要执行完成的时间截止期限,dniI是任务tni要传输给出口伪节点tnI的数据传输量,
Figure BDA0003158903170000052
是移动设备与所在服务区域的边缘计算设备之间的数据传输率,tnj是任务tni的直接后继任务,δnj是任务tnj的计算负载量,
Figure BDA0003158903170000053
表示网络中所有边缘计算设备的最大处理能力,
Figure BDA0003158903170000054
代表网络中所有边缘计算设备之间的平均数据传输率。
其中,在步骤S8中,
Figure BDA0003158903170000055
按下式(3)计算:
Figure BDA0003158903170000056
式(3)中,R(m)表示将当前时刻所有已经排列在边缘计算设备的计算队列Qm中的任务全部执行完时所需的时间,tnj是tni的前驱任务,
Figure BDA0003158903170000057
是任务tnj的完成时间,
Figure BDA0003158903170000058
是由执行完任务tnj的边缘计算设备发送输出数据到作为中转站的边缘计算设备上需要的传输时间,xnj和xni表示任务tnj和tni的调度决策,xnj和xni是一个长度为M的一维向量,
Figure BDA0003158903170000059
其中分配变量
Figure BDA00031589031700000510
M表示异构边缘计算网络中的边缘计算设备总数;
Figure BDA00031589031700000511
由下式(4)得出:
Figure BDA0003158903170000061
式(4)中,m、m'、mn均表示网络中的边缘计算设备,其满足
Figure BDA0003158903170000062
且mn≠m;
Figure BDA0003158903170000063
表示边缘计算设备m将执行入口伪节点tn0的子任务tnj,dn0j表示从移动设备上输出到任务tnj的数据传输量,
Figure BDA0003158903170000064
是任务tnj的分配变量,且由移动设备输出的数据须经过中转再传输到其它边缘计算设备上,否则
Figure BDA0003158903170000065
表示从出口伪节点tnI的前驱任务tni输出的数据须经过作为中转站的边缘计算设备传输回移动设备,dniI表示从出口伪节点tnI传回移动设备的数据传输量,且执行前驱任务tni的边缘计算设备为移动设备所处服务区域外的其它边缘计算设备,否则
Figure BDA0003158903170000066
进一步来说,在式(3)中,R(m)由下式(5)得出:
Figure BDA0003158903170000067
式(5)中,tn′i′表示已经在计算队列Qm中等待的任务,其对应于应用n'的第i'个任务。
其中,在步骤S8中,任务tni的估计完成时间
Figure BDA0003158903170000071
由下式(6)得出:
Figure BDA0003158903170000072
式(6)中,
Figure BDA0003158903170000073
是边缘计算设备估计执行完任务tni需要的执行时间,
Figure BDA0003158903170000074
由下式(7)得出:
Figure BDA0003158903170000075
其中,δni是任务tni的计算负载量,ρm是边缘计算设备的处理能力。
进一步地,在步骤S10中,由任务tni判断其在边缘计算设备上执行时是否满足条件
Figure BDA0003158903170000076
若某边缘计算设备满足该条件,则将该边缘计算设备的执行请求加入执行请求集合;若某边缘技算设备不满足该条件,则忽略该边缘计算设备的执行请求;若所有的边缘计算设备都不满足该条件,则将所有边缘计算设备的执行请求都加入执行请求集合。
进一步地,在步骤S11中,先将所有执行请求的权值
Figure BDA0003158903170000077
非降序排列,再将任务tni调度分配到执行请求权值
Figure BDA0003158903170000078
排在首位的边缘计算设备上。
或者,在步骤S11中,若执行请求集合中只有一个执行请求,则直接将任务tni调度分配到该执行请求所对应的边缘计算设备上;若执行请求集合中有多个满足条件
Figure BDA0003158903170000079
的执行请求且其中执行请求权值
Figure BDA00031589031700000710
最小的执行请求所对应的边缘设备将作为执行任务tni的目标设备,并记录执行任务的消耗
Figure BDA00031589031700000711
本发明让移动设备将DAG任务卸载上传到其所处服务区域的边缘计算设备上(该边缘计算设备能为处于其服务区域内的移动设备提供无线访问服务),并在边缘计算设备上为卸载的每个应用构造一个缓冲队列,队列中DAG任务按B-Level降序排列。由网络中的协同器(例如可以是移动宏基站)从所有异构边缘计算设备上构造的缓冲队列中取出各个队首的就绪任务实现对DAG任务的解耦合,并把这些就绪任务映射到一个按最迟完成时间升序排列的队列中,再将队列中的任务按照排序逐个取出,由边缘计算设备根据自身状况估算出任务在其上能开始执行的时间、估计完成时间和执行消耗并发出执行请求。通过分析各边缘计算设备发出的执行请求且在此基础上构建执行请求集合、计算执行请求权值,并根据执行请求的权值大小来为DAG任务分配合适的计算资源,通过上述方法能够实现异构边缘计算网络中计算资源更合理、高效地分配,进而缩短应用的平均处理时间,提高异构边缘计算网络的运行效率,降低应用执行消耗。
附图说明
图1为服务于移动设备的边缘计算设备构成的分布式异构边缘计算网络的示意图;
图2为任务计算卸载的网络拓扑结构示意图;
图3为实施例所涉方法与其它现有方法在不同的应用卸载到达率下平均执行消耗的比较图;
图4为实施例所涉方法与其它现有方法在不同的应用卸载到达率下平均应用执行跨度(平均完成时间)的比较图;
图5为实施例所涉方法与其它现有方法在不同的应用卸载到达率下平均应用截止期限违背率的比较图。
具体实施方式
为了便于本领域技术人员更好地理解本发明相对于现有技术的改进之处,下面结合附图和实施例对本发明作进一步的描述。
在本实施例中,异构边缘计算设备构成的网络中存在一个协同器(如可以是移动通信宏基站)能实时收集各边缘计算设备的当前状态信息并发布给其它的边缘计算设备。系统中所有边缘计算设备都能互相通信并共同组合成一个分布式异构计算网络,如附图1所示。每个边缘计算设备都为一个指定服务区域的移动设备(也可以理解为移动用户)提供无线通信服务,即在一个服务区域内各种移动设备能够访问该边缘计算设备,每个边缘计算设备负责接收自身服务区域内的移动设备发来的计算卸载请求和上传的应用数据,并在其自身服务区域内的移动设备与其他服务区域的边缘计算设备进行数据传输时作为中转站。在附图1的基础上,本实施例使用开源的云计算仿真器CloudSim搭建了一个异构边缘计算系统仿真平台。实验环境中配置四个边缘设备,各个边缘计算设备之间的传输延迟为17.77ns/byte的802.11n协议。移动设备和提供无线信号覆盖的边缘设备之间的传输延迟为7.81ns/byte的802.11ac协议。边缘计算设备和各自覆盖区域内的移动用户之间的平均传输率B由表达式(440×6+103)/7计算,即520Mbps。每个边缘计算设备允许同时服务的移动应用数设定成30,并且各个边缘计算设备的处理能力列在表1中。
表1 边缘计算设备的处理能力
Figure BDA0003158903170000101
在本实施例中,使用四种开源的科学工作流结构模拟移动应用的DAG结构。表2给出了实施例中移动应用的节点数设定。一个应用中任务的计算负载量使用记录在DAX文件中runtime元素项的值表示。具体地,如果原始的runtime值超出[100,500]的范围,则把runtime值分别设成100和500;否则,直接使用记录在DAX文件中的原始runtime值,不需要变化。另外,定义一个基准通信时间ct,该值可由记录在DAX文件中size元素项的值表示。具体地,如果
Figure BDA0003158903170000102
超出[10-3,10-2]的范围,则把ct值分别设置成10-3和10-2;否则让
Figure BDA0003158903170000103
使用
Figure BDA0003158903170000104
设置依赖任务之间的数据传输量的大小,并且与入口出口两个伪节点关联的数据传输量也设置成
Figure BDA0003158903170000105
表2移动应用参数
Figure BDA0003158903170000106
另外,本实施例中以服从λ的泊松分布间隔随机地从四种类型的工作流中选出200个应用,模拟移动用户释放的卸载请求,并让各个卸载请求发出的位置随机均匀地设定在四个边缘设备所覆盖的服务区域内。此外,为每个应用n定义一个基准执行跨度Mn。为了计算Mn,实施例中假设把应用n的每个任务调度到不同边缘计算设备上,并用边缘计算设备的平均处理能力值设定这些设备的处理能力,同时把应用n内所有传输数据量都当成0考虑。由此,应用n的截止期限可以用表达式ln=rn+df·Mn计算。需要提前说明的是,在实际应用时,边缘设备的执行消耗可以根据该边缘设备的算力、能耗、硬件消耗等参数指标来综合确定,也可以根据实际情况需要为不同的参数指标设定不同的权重值,再综合计算该边缘计算设备的执行消耗。本领域技术人员应当明白,如何确定执行消耗值并非本申请相对于现有技术的改进之处,故对于执行消耗的计算方式在此不作赘述。为简化表述,在本实施例中,给每个选出的应用中的每个任务分别使用均匀分布的方式产生四个边缘设备的执行消耗,具体地,为每个任务从[1,2]之间产生四个随机小数分别作为每个边缘设备对应于该任务的执行消耗。为了评测的公平性,在给应用的任务产生完执行消耗后将其存入文件中作为实施例的数据源。对不同的计算资源分配方案进行评测时,每种方案都从该文件数据源读入这些应用。
本实施例中,从移动设备的观点看,每一个移动设备在进行任务卸载时都有相同的网络拓扑结构,附图2给出了每一个移动设备在异构边缘计算设备构成的分布式网络中进行任务卸载时需面对的网络拓扑结构。如果移动设备需要边缘计算设备处理它的应用,必须将一些应用数据从移动设备自身卸载到边缘计算设备上。当应用的所有任务在网络中执行完后,还需要把计算的结果传回移动设备。
在上述异构边缘计算网络中实现卸载DAG任务的计算资源分配主要包括以下步骤:
1、给每个移动设备要运行的应用n分别增加一个入口伪节点tn0和一个出口伪节点tnI;其中,tn0的出边表示应用程序执行时需要从移动设备上卸载的应用数据的大小,tnI的入边表示要传回移动设备的结果数据的大小。
2、移动设备n向提供无线通信服务的边缘计算设备mn发送应用数据;
3、边缘计算设备mn根据移动设备n上传的应用数据确定各个任务的B-Level优先级;任务的B-Level优先级按下式(1)计算:
Figure BDA0003158903170000121
上式(1)中,tnj是任务tni的直接后继任务,dnij是任务tni要传输给任务tnj的数据传输量,
Figure BDA0003158903170000122
是网络中所有边缘计算设备之间的平均数据传输率,δni是任务tni的计算负载量,
Figure BDA0003158903170000123
是网络中所有边缘计算设备的平均处理能力,I是应用n的任务节点数,I包括给应用增加的入口伪节点tn0和出口伪节点tnI
4、边缘计算设备mn为已到达自己的每个不同卸载请求构造一个任务缓存列表ζn,并在每个缓存列表内将相应应用的任务按照B-Level降序排列;
5、边缘计算设备mn给列表ζn中的每个任务分配一个最迟完成时间
Figure BDA0003158903170000131
任务的最迟完成时间
Figure BDA0003158903170000132
按照下式(2)计算:
Figure BDA0003158903170000133
上式(2)中,ln是应用n需要执行完成的时间截止期限,dniI是任务tni要传输给出口伪节点tnI的数据传输量,
Figure BDA0003158903170000134
是移动设备与所在服务区域的边缘计算设备之间的数据传输率,tnj是任务tni的直接后继任务,δnj是任务tnj的计算负载量,
Figure BDA0003158903170000135
表示网络中所有边缘计算设备的最大处理能力,
Figure BDA0003158903170000136
代表网络中所有边缘计算设备之间的平均数据传输率。
6、协同器从所有边缘计算设备维护的任务列表集合
Figure BDA0003158903170000137
中找出就绪任务,并把就绪任务映射到一个按照最迟完成时间升序排列的队列Qau中;
7、从队列Qau中取出队首任务tni,并让任务tni向协同器发布自己关联的依赖约束、依附的输入/输出数据以及自己的计算负载量等代码解析信息;
8、每个边缘设备m收到任务tni发布的代码解析信息后,根据自身当前的工作负荷量以及要传输给任务tni的数据到达情况估算出任务tni在其上能开始执行的时间
Figure BDA0003158903170000138
和估计完成的时间
Figure BDA0003158903170000139
按下式(3)计算:
Figure BDA00031589031700001310
上式(3)中,tnj是tni的前驱任务,
Figure BDA00031589031700001311
是任务tnj的完成时间,
Figure BDA0003158903170000141
是由执行完任务tnj的边缘计算设备发送输出数据到作为中转站的边缘计算设备上需要的传输时间,xnj和xni表示任务tnj和tni的调度决策,xnj和xni是一个长度为M的一维向量,
Figure BDA0003158903170000142
其中分配变量
Figure BDA0003158903170000143
M表示异构边缘计算网络中的边缘计算设备总数;
Figure BDA0003158903170000144
由下式(4)得出:
Figure BDA0003158903170000145
式(4)中,m、m'、mn均表示网络中的边缘计算设备,其满足
Figure BDA0003158903170000146
且mn≠m;
Figure BDA0003158903170000147
表示边缘计算设备m将执行入口伪节点tn0的子任务tnj,dn0j表示从移动设备上输出到任务tnj的数据传输量,
Figure BDA0003158903170000148
是任务tnj的分配变量,且由移动设备输出的数据须经过中转再传输到其它边缘计算设备上,否则
Figure BDA0003158903170000149
表示从出口伪节点tnI的前驱任务tni输出的数据须经过作为中转站的边缘计算设备传输回移动设备,dniI表示从出口伪节点tnI传回移动设备的数据传输量,且执行前驱任务tni的边缘计算设备为移动设备所处服务区域外的其它边缘计算设备,否则
Figure BDA00031589031700001410
式(3)中的R(m)表示将当前时刻所有已经排列在边缘计算设备的计算队列Qm中的任务全部执行完时所需的时间;R(m)由下式(5)得出:
Figure BDA0003158903170000151
在式(5)中,tn′i′表示已经在计算队列Qm中等待的任务,其对应于应用n'的第i'个任务。应当指出的是,应用n'也可能与应用n不是同一个移动应用。
任务tni的估计完成时间
Figure BDA0003158903170000152
由下式(6)得出:
Figure BDA0003158903170000153
在式(6)中,
Figure BDA0003158903170000154
是边缘计算设备估计执行完任务tni需要的执行时间,而
Figure BDA0003158903170000155
由下式(7)得出:
Figure BDA0003158903170000156
其中,δni是任务tni的计算负载量,ρm是边缘计算设备的处理能力。
9、每个边缘计算设备根据步骤8的计算结果向协同器发送一个执行请求
Figure BDA0003158903170000157
10、判断任务tni在发送执行请求的边缘计算设备上执行时是否满足条件:
Figure BDA0003158903170000158
并根据判断结果构建执行请求集合。例如可以由任务tni判断其在边缘计算设备上执行时是否满足条件
Figure BDA0003158903170000161
若某边缘计算设备满足该条件,则将该边缘计算设备的执行请求加入执行请求集合;若某边缘技术设备不满足该条件,则忽略该边缘计算设备的执行请求;若所有的边缘计算设备都不满足该条件,则将所有边缘计算设备的执行请求都加入执行请求集合。
11、计算执行请求集合中各执行请求的权值
Figure BDA0003158903170000162
其中,
Figure BDA0003158903170000163
根据各执行请求的权值
Figure BDA0003158903170000164
大小,将任务tni调度分配到合适的边缘计算设备上:例如可以先将所有执行请求的权值
Figure BDA0003158903170000165
非降序排列,再将任务tni调度分配到执行请求权值
Figure BDA0003158903170000166
排在首位的边缘计算设备上。或者,当执行请求集合中只有一个执行请求时,直接将任务tni调度分配到该执行请求所对应的边缘计算设备上;而若执行请求集合中有多个满足条件
Figure BDA0003158903170000167
的执行请求且其中执行请求权值
Figure BDA0003158903170000168
最小的执行请求对应的边缘设备将作为执行任务tni的目标设备,并记录执行任务的消耗
Figure BDA0003158903170000169
12、再次执行步骤7-11,直至队列Qau中所有任务都分配完毕;
13、当有一个新应用到达或者有一个任务在网络系统中完成时,再次触发执行步骤6-12,直到没有新应用到达且网络系统中已到达的所有任务都已执行完时结束。
附图3、4、5示出了上述方法(对应于图中AUTE)与其它目前相对较为先进的方法(OnDoc、Selfish、ITAGS)在同一异构边缘计算网络中的测试结果。结果表明,上述实施例所涉计算资源分配方法在应用的平均执行消耗、平均执行跨度和平均截止期限违背率方面均表现出较佳的效果,综合来看,实施例所涉方法的总体测试结果要明显优于其它方法。由此说明本实施例所涉方法能够在异构边缘计算网络中实现计算资源更合理、高效地分配,并缩短应用的平均处理时间,提高异构边缘计算网络的运行效率,降低应用执行消耗。
上述实施例为本发明较佳的实现方案,除此之外,本发明还可以其它方式实现,在不脱离本技术方案构思的前提下任何显而易见的替换均在本发明的保护范围之内。
为了让本领域普通技术人员更方便地理解本发明相对于现有技术的改进之处,本发明的一些附图和描述已经被简化,并且为了清楚起见,本申请文件还省略了一些其它元素,本领域普通技术人员应该意识到这些省略的元素也可构成本发明的内容。

Claims (9)

1.异构边缘计算中DAG任务计算卸载的计算资源分配方法,其特征在于:在所构建的异构边缘计算网络中,由协同器实时收集能够互相通信的各边缘计算设备的当前状态信息并发布给其它边缘计算设备;为每个边缘计算设备分配一个指定的服务区域并令其负责接收自身服务区域内的移动设备发来的计算卸载请求和上传的应用数据以及在其自身服务区域内的移动设备与其他服务区域的边缘计算设备进行数据传输时作为中转站;并按照以下步骤进行DAG任务计算卸载的计算资源分配:
S1.给每个移动设备要运行的应用n分别增加一个入口伪节点tn0和一个出口伪节点tnI
S2.移动设备向其所在服务区域的边缘计算设备发送应用数据;
S3.当应用数据到达时,边缘计算设备根据上传的应用数据确定各个任务的B-Level优先级;
S4.边缘计算设备为已到达自己的每个不同卸载请求构造一个任务缓存列表,并在每个缓存列表内将相应应用的任务按照B-Level降序排列;
S5.边缘计算设备给缓存列表中的每个任务分配一个最迟完成时间
Figure FDA0003158903160000011
S6.协同器从所有边缘计算设备的任务缓存列表集合中找出就绪任务,并把就绪任务映射到一个按照最迟完成时间升序排列的队列Qau中;
S7.从队列Qau中取出队首任务tni,任务tni向协同器发布其自身的代码解析信息,所述代码解析信息包括关联的依赖约束、依附的输入/输出数据及计算负载量;
S8.边缘计算设备收到任务tni发布的代码解析信息后,根据自身当前的工作负荷量以及要传输给任务tni的数据到达情况估算出任务tni在其上能开始执行的时间
Figure FDA0003158903160000021
和估计完成时间
Figure FDA0003158903160000022
S9.边缘计算设备向协同器发送执行请求
Figure FDA0003158903160000023
其中,
Figure FDA0003158903160000024
是该边缘计算设备估计执行完任务tni需要的执行时间,
Figure FDA0003158903160000025
Figure FDA0003158903160000026
表示由该边缘计算设备在估计完成时间
Figure FDA0003158903160000027
之前执行完成任务tni所产生的消耗;
S10.判断任务tni在发送执行请求的边缘计算设备上执行时是否满足条件:
Figure FDA0003158903160000028
并根据判断结果构建执行请求集合;
S11.计算执行请求集合中各执行请求的权值
Figure FDA0003158903160000029
其中,
Figure FDA00031589031600000210
根据各执行请求的权值
Figure FDA00031589031600000211
大小,将任务tni调度分配到合适的边缘计算设备上;
S12.再次执行步骤S7-S11,直至队列Qau中所有任务都分配完毕;
S13.当有一个新应用到达或者有一个任务在网络系统中完成时,再次执行步骤S6-S12,直到没有新应用到达且网络中且已到达的所有任务都已执行完时结束。
2.根据权利要求1所述的异构边缘计算中DAG任务计算卸载的计算资源分配方法,其特征在于:在步骤S3中,任务的B-Level优先级按下式(1)计算:
Figure FDA0003158903160000031
式(1)中,tnj是任务tni的直接后继任务,dnij是任务tni要传输给任务tnj的数据传输量,
Figure FDA0003158903160000032
是网络中所有边缘计算设备之间的平均数据传输率,δni是任务tni的计算负载量,
Figure FDA0003158903160000033
是网络中所有边缘计算设备的平均处理能力,I是应用n的任务节点数,I包括给应用增加的入口伪节点tn0和出口伪节点tnI
3.根据权利要求1所述的异构边缘计算中DAG任务计算卸载的计算资源分配方法,其特征在于,在步骤S5中:任务的最迟完成时间
Figure FDA0003158903160000034
按照下式(2)计算:
Figure FDA0003158903160000035
式(2)中,ln是应用n需要执行完成的时间截止期限,dniI是任务tni要传输给出口伪节点tnI的数据传输量,
Figure FDA0003158903160000036
是移动设备与所在服务区域的边缘计算设备之间的数据传输率,tnj是任务tni的直接后继任务,δnj是任务tnj的计算负载量,
Figure FDA0003158903160000037
表示网络中所有边缘计算设备的最大处理能力,
Figure FDA0003158903160000038
代表网络中所有边缘计算设备之间的平均数据传输率。
4.根据权利要求1所述的异构边缘计算中DAG任务计算卸载的计算资源分配方法,其特征在于:在步骤S8中,
Figure FDA0003158903160000039
按下式(3)计算:
Figure FDA00031589031600000310
式(3)中,R(m)表示将当前时刻所有已经排列在边缘计算设备的计算队列Qm中的任务全部执行完时所需的时间,tnj是tni的前驱任务,
Figure FDA0003158903160000041
是任务tnj的完成时间,
Figure FDA0003158903160000042
是由执行完任务tnj的边缘计算设备发送输出数据到作为中转站的边缘计算设备上需要的传输时间,xnj和xni表示任务tnj和tni的调度决策,xnj和xni是一个长度为M的一维向量,
Figure FDA0003158903160000043
其中分配变量
Figure FDA0003158903160000044
M表示异构边缘计算网络中的边缘计算设备总数;
Figure FDA0003158903160000045
由下式(4)得出:
Figure FDA0003158903160000046
式(4)中,m、m'、mn均表示网络中的边缘计算设备,其满足
Figure FDA0003158903160000047
且mn≠m;
Figure FDA0003158903160000048
表示边缘计算设备m将执行入口伪节点tn0的子任务tnj,dn0j表示从移动设备上输出到任务tnj的数据传输量,
Figure FDA0003158903160000049
是任务tnj的分配变量,且由移动设备输出的数据须经过中转再传输到其它边缘计算设备上,否则
Figure FDA00031589031600000410
Figure FDA00031589031600000411
表示从出口伪节点tnI的前驱任务tni输出的数据须经过作为中转站的边缘计算设备传输回移动设备,dniI表示从出口伪节点tnI传回移动设备的数据传输量,且执行前驱任务tni的边缘计算设备为移动设备所处服务区域外的其它边缘计算设备,否则
Figure FDA0003158903160000051
5.根据权利要求4所述的异构边缘计算中DAG任务计算卸载的计算资源分配方法,其特征在于:在式(3)中,R(m)由下式(5)得出:
Figure FDA0003158903160000052
式(5)中,tn′i′表示已经在计算队列Qm中等待的任务,其对应于应用n'的第i'个任务。
6.根据权利要求1所述的异构边缘计算中DAG任务计算卸载的计算资源分配方法,其特征在于:在步骤S8中,任务tni的估计完成时间
Figure FDA0003158903160000053
由下式(6)得出:
Figure FDA0003158903160000054
式(6)中,
Figure FDA0003158903160000055
是边缘计算设备估计执行完任务tni需要的执行时间,
Figure FDA0003158903160000056
由下式(7)得出:
Figure FDA0003158903160000057
其中,δni是任务tni的计算负载量,ρm是边缘计算设备的处理能力。
7.根据权利要求1所述的异构边缘计算中DAG任务计算卸载的计算资源分配方法,其特征在于,在步骤S10中,由任务tni判断其在边缘计算设备上执行时是否满足条件
Figure FDA0003158903160000058
若某边缘计算设备满足该条件,则将该边缘计算设备的执行请求加入执行请求集合;若某边缘技术设备不满足该条件,则忽略该边缘计算设备的执行请求;若所有的边缘计算设备都不满足该条件,则将所有边缘计算设备的执行请求都加入执行请求集合。
8.根据权利要求1所述的异构边缘计算中DAG任务计算卸载的计算资源分配方法,其特征在于:在步骤S11中,先将所有执行请求的权值
Figure FDA0003158903160000061
非降序排列,再将任务tni调度分配到执行请求权值
Figure FDA0003158903160000062
排在首位的边缘计算设备上。
9.根据权利要求1所述的异构边缘计算中DAG任务计算卸载的计算资源分配方法,其特征在于:在步骤S11中,若执行请求集合中只有一个执行请求,则直接将任务tni调度分配到该执行请求所对应的边缘计算设备上;若执行请求集合中有多个满足条件
Figure FDA0003158903160000063
的执行请求且其中执行请求权值
Figure FDA0003158903160000064
最小的执行请求将会作为要执行任务tni的目标设备,并记录执行任务的消耗
Figure FDA0003158903160000065
CN202110784975.8A 2021-07-12 2021-07-12 异构边缘计算中卸载dag任务的计算资源分配方法 Active CN113535393B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110784975.8A CN113535393B (zh) 2021-07-12 2021-07-12 异构边缘计算中卸载dag任务的计算资源分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110784975.8A CN113535393B (zh) 2021-07-12 2021-07-12 异构边缘计算中卸载dag任务的计算资源分配方法

Publications (2)

Publication Number Publication Date
CN113535393A true CN113535393A (zh) 2021-10-22
CN113535393B CN113535393B (zh) 2023-04-04

Family

ID=78127487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110784975.8A Active CN113535393B (zh) 2021-07-12 2021-07-12 异构边缘计算中卸载dag任务的计算资源分配方法

Country Status (1)

Country Link
CN (1) CN113535393B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115033373A (zh) * 2022-03-08 2022-09-09 西安电子科技大学 一种移动边缘计算网络中逻辑依赖性任务的调度卸载方法
CN115941791A (zh) * 2022-11-25 2023-04-07 重庆邮电大学 一种基于无服务器边缘计算的热点服务缓存方法及系统
CN117827619A (zh) * 2024-02-29 2024-04-05 浪潮电子信息产业股份有限公司 异构算力的耗时预测仿真方法、装置、设备、介质及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200036808A1 (en) * 2016-09-23 2020-01-30 Intel Corporation Methods and apparatus for computation offloading in networked environments
WO2020216135A1 (zh) * 2019-04-25 2020-10-29 南京邮电大学 基于边-端协同的多用户多mec任务卸载资源调度方法
WO2021012584A1 (zh) * 2019-07-25 2021-01-28 北京工业大学 一种移动边缘计算场景下制定单任务迁移策略的方法
CN112506627A (zh) * 2020-11-19 2021-03-16 西安电子科技大学 有向无环图任务的调度方法、系统、介质、设备及终端

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200036808A1 (en) * 2016-09-23 2020-01-30 Intel Corporation Methods and apparatus for computation offloading in networked environments
WO2020216135A1 (zh) * 2019-04-25 2020-10-29 南京邮电大学 基于边-端协同的多用户多mec任务卸载资源调度方法
WO2021012584A1 (zh) * 2019-07-25 2021-01-28 北京工业大学 一种移动边缘计算场景下制定单任务迁移策略的方法
CN112506627A (zh) * 2020-11-19 2021-03-16 西安电子科技大学 有向无环图任务的调度方法、系统、介质、设备及终端

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JIAGANG LIU等: "Distributed Algorithm for Computation Offloading in Mobile Edge Computing" *
温醒醒: "面向异构网络边缘计算的任务卸载策略研究" *
赵鹏涛: "移动边缘计算中的计算卸载策略研究" *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115033373A (zh) * 2022-03-08 2022-09-09 西安电子科技大学 一种移动边缘计算网络中逻辑依赖性任务的调度卸载方法
CN115941791A (zh) * 2022-11-25 2023-04-07 重庆邮电大学 一种基于无服务器边缘计算的热点服务缓存方法及系统
CN117827619A (zh) * 2024-02-29 2024-04-05 浪潮电子信息产业股份有限公司 异构算力的耗时预测仿真方法、装置、设备、介质及系统
CN117827619B (zh) * 2024-02-29 2024-05-24 浪潮电子信息产业股份有限公司 异构算力的耗时预测仿真方法、装置、设备、介质及系统

Also Published As

Publication number Publication date
CN113535393B (zh) 2023-04-04

Similar Documents

Publication Publication Date Title
CN113535393B (zh) 异构边缘计算中卸载dag任务的计算资源分配方法
WO2020216135A1 (zh) 基于边-端协同的多用户多mec任务卸载资源调度方法
CN110493360B (zh) 多服务器下降低系统能耗的移动边缘计算卸载方法
US7823154B2 (en) System and method for providing, by a plurality of schedulers, differentiated service to consumers of distributed resources
CN105718479B (zh) 跨idc大数据处理架构下执行策略生成方法、装置
CN112039965B (zh) 一种时间敏感网络中的多任务卸载方法及系统
CN111641973B (zh) 一种雾计算网络中基于雾节点协作的负载均衡方法
CN107733689A (zh) 基于优先级的动态加权轮询调度策略方法
CN109788046B (zh) 一种基于改进蜂群算法的多策略边缘计算资源调度方法
CN109582448B (zh) 一种面向关键度和时效性的边缘计算任务调度方法
Samanta et al. Battle of microservices: Towards latency-optimal heuristic scheduling for edge computing
WO2020134133A1 (zh) 一种资源配置方法、变电站及计算机可读存储介质
CN113419867B (zh) 一种面向边云协同计算环境中节能的服务供应方法
CN114071582A (zh) 面向云边协同物联网的服务链部署方法及装置
CN109005211B (zh) 一种无线城域网环境下的微云部署及用户任务调度方法
CN112799823A (zh) 边缘计算任务的在线分派调度方法和系统
CN110996390B (zh) 一种无线接入网络计算资源分配方法及网络系统
CN103455375A (zh) Hadoop云平台下基于负载监控的混合调度方法
Maray et al. Dependent task offloading with deadline-aware scheduling in mobile edge networks
CN104811467A (zh) 综合效用的数据处理方法
CN108965168B (zh) 一种基于效用函数的车联网占优资源公平分配优化方法
CN106028453B (zh) 基于排队论的无线虚拟网络资源跨层调度映射方法
CN113190342A (zh) 用于云-边协同网络的多应用细粒度卸载的方法与系统架构
WO2024036909A1 (zh) 一种面向边缘服务网络的负载公平卸载与迁移方法
CN116939044A (zh) 一种基于区块链技术的算力路由规划方法和装置

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
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20211022

Assignee: Hengyang Yishui Trading Co.,Ltd.

Assignor: HUNAN INSTITUTE OF TECHNOLOGY

Contract record no.: X2023980052697

Denomination of invention: Computing resource allocation method for unloading DAG tasks in heterogeneous edge computing

Granted publication date: 20230404

License type: Common License

Record date: 20231215