CN110069341B - 边缘计算中结合功能按需配置的有依赖关系任务的调度方法 - Google Patents

边缘计算中结合功能按需配置的有依赖关系任务的调度方法 Download PDF

Info

Publication number
CN110069341B
CN110069341B CN201910286347.XA CN201910286347A CN110069341B CN 110069341 B CN110069341 B CN 110069341B CN 201910286347 A CN201910286347 A CN 201910286347A CN 110069341 B CN110069341 B CN 110069341B
Authority
CN
China
Prior art keywords
edge
tasks
server
task
scheduling
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
CN201910286347.XA
Other languages
English (en)
Other versions
CN110069341A (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.)
University of Science and Technology of China USTC
Original Assignee
University of Science and Technology of China USTC
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 University of Science and Technology of China USTC filed Critical University of Science and Technology of China USTC
Priority to CN201910286347.XA priority Critical patent/CN110069341B/zh
Publication of CN110069341A publication Critical patent/CN110069341A/zh
Application granted granted Critical
Publication of CN110069341B publication Critical patent/CN110069341B/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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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
    • 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
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

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)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种边缘计算中结合功能按需配置的有依赖关系任务的调度方法,包括:步骤1,获取网络和任务的相关参数,选取一初始化边缘服务器;步骤2,用步骤1的相关参数对边缘服务器进行贪心初始配置得出服务器配置信息;步骤3,用有向无环图表示步骤1中具有依赖关系的任务,并对有向无环图中任务进行拓扑排序成拓扑序列;步骤4,用步骤2的服务器配置信息对步骤3的拓扑序列迭代,算出各任务在各边缘服务器上运行最早结束的完成时间,得到任务的分配和调度方案;步骤5,在边缘服务器实际容量约束下,按照步骤4的任务的分配和调度方案对各任务进行分配和调度。该方法能在边缘计算环境中最小化一个由多个依赖任务组成的应用的完成时间。

Description

边缘计算中结合功能按需配置的有依赖关系任务的调度方法
技术领域
本发明涉及边缘计算领域,尤其涉及一种边缘计算中结合功能按需配置的有依赖关系任务的调度方法。
背景技术
近年来,随着蜂窝网络和物联网(IOT)的快速发展,高速度、高可靠性的空中接口使得高复杂度、高能耗的应用被卸载至远程云数据中心运行,从而弥补移动终端计算能力的不足并降低其能耗。然而,长距离的传播不可避免地导致严重的通信延迟,这无法满足诸如增强现实(VR)、认知辅助、车联网等应用程序需实时响应的要求。为了缓解这一问题,移动计算领域出现了一个重要的范式转变,从集中式云计算转向边缘计算(Edge Computing,也叫雾计算,微云计算)。边缘计算的理念是在互联网的边缘(如Wi-Fi接入点或蜂窝基站)部署小型服务器,称为边缘服务器,这些服务器相比于移动设备具有更强大的计算和存储能力,且在地理上靠近移动用户,通常移动用户可以通过无线网络直接与边缘服务器相连,从而极大的降低了通信延迟,使移动用户能够在低延迟的情况下无缝地访问云服务。
然而由于移动应用的性能要求和资源需求正在急剧增加,边缘计算在实际应用中面临着许多挑战,如:
(1)容量限制及按需配置:与远程云计算相比,边缘服务器的计算和存储能力都相对有限,边缘服务器上只能配置有限数量的功能。边缘服务器为了运行某一个任务,需要进行相应的数据库缓存,镜像下载、安装和启动以及额外的环境配置等操作,这些系列操作可称为功能配置,因而一个任务只能在具有所需功能的边缘服务器上运行。若当前边缘服务器没有足够的容量去配置当前待调度任务对应的功能,则需要决策移除部分边缘服务器上已配置的功能。功能的按需配置将显著影响移动应用程序的性能和边缘服务器的利用率,因此如何提供智能的功能配置策略至关重要。
(2)任务依赖和并行执行:移动应用程序由多个有依赖关系的任务组成,通常用一个有向无环图(DAG)来表示。图中的点代表不同类型的任务,有向边上的值代表一个任务结束后需要传输一定的数据量作为箭头指向任务的输入,所以图中的边集也定义了任务执行的先后或并行关系。此外,不同的任务可能对边缘服务器有不同的偏好,比如一个Facebook的视频处理应用,编码操作是计算密集型任务,更适合放在运算性能更强大的边缘服务器上。为了尽可能的最小化应用的完成时间,如何设计合理的调度策略是需要解决的问题,包括决策DAG中各个任务分别放置到哪个边缘服务器以及各边缘服务器上任务执行的顺序。
目前的移动边缘计算领域,有大量研究任务调度和功能配置问题的工作,但是已有的算法没有考虑应用程序中任务的依赖关系,而是假定应用是一个独立且不可分的整体。随着移动应用日益复杂,将其中可并行的任务分配到不同的边缘服务器上运行能有效优化移动应用的性能。但在资源受限的边缘计算环境中,如何进行功能配置和对有依赖关系的任务调度是急需解决的问题。
发明内容
基于现有技术所存在的问题,本发明的目的是提供一种边缘计算中结合功能按需配置的有依赖关系任务的调度方法,能解决现有边缘计算中任务调度没有考虑应用程序中任务的依赖关系,导致边缘计算中应用运行效率不高的问题。
本发明的目的是通过以下技术方案实现的:
本发明实施方式提供一种边缘计算中结合功能按需配置的有依赖关系任务的调度方法,包括:
步骤1,获取边缘计算网络和包含具有依赖关系任务的应用的相关参数,从边缘计算网络中选取一个边缘服务器作为处理所述应用输入和输出的初始化服务器;
步骤2,利用所述步骤1获取的应用的相关参数对所述边缘计算网络中的各边缘服务器进行贪心初始配置得出服务器配置信息;
步骤3,用有向无环图表示所述步骤1中的应用的具有依赖关系的任务,并对所述有向无环图中的任务进行拓扑排序,得到任务的拓扑序列;
步骤4,利用所述步骤2得出的服务器配置信息对所述步骤3得出的任务的拓扑序列迭代计算,计算出拓扑序列中每个任务放置在边缘计算网络的各边缘服务器上运行最早结束的完成时间并存储对应分配过程,根据最后一个任务完成时间反向搜索所存储的各分配过程来反向重建所有任务的分配和调度方案;
步骤5,在边缘服务器实际容量约束下,按照所述步骤4最终确定的任务的分配和调度方案对各任务进行分配和调度。
由上述本发明提供的技术方案可以看出,本发明实施例提供的边缘计算中结合功能按需配置的有依赖关系任务的调度方法,其有益效果为:
本发明的方法实现了决策功能的按需配置,以及各个任务分别放置到哪个边缘服务器以及各边缘服务器上任务的执行顺序。能对边缘计算中,考虑边缘服务器上有限数量的功能配置前提下,对具有依赖关系的任务的高效调度及功能的按需配置,提高边缘服务器的利用率,实现在边缘计算环境中最小化一个由多个依赖任务组成的应用的完成时间(完成时间是指应用从边缘服务器或远程云服务器卸载后,获得最终运行结果返回至移动用户的时间),减少应用运行时间,与其他修改后利用到本场景下的方法(如Topcuoglu提出的HEFT算法)相比,能减少1.54~2.8倍的应用完成时间,提高用户体验。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的边缘计算中结合功能按需配置的有依赖关系任务的调度方法的流程图;
图2为本发明实施例提供的配置方法的模型图;
图3为本发明实施提供的三种应用的有向无环图结构示意图;
图4为本发明实施提供的方法的实施性能对比图。
具体实施方式
下面结合本发明的具体内容,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。本发明实施例中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
如图1所示,本发明实施例提供一种边缘计算中结合功能按需配置的有依赖关系任务的调度方法,能实现在边缘计算环境中最小化一个由多个依赖任务组成的应用的完成时间,进而提高边缘计算中应用运行的效率,提升用户体验,包括:
步骤1,获取边缘计算网络和包含具有依赖关系任务的应用的相关参数,从边缘计算网络中选取一个边缘服务器作为应用的初始化服务器;
步骤2,利用所述步骤1获取的相关参数对所述边缘计算网络中的各边缘服务器进行贪心初始配置得出服务器配置信息;
步骤3,用有向无环图表示所述步骤1中的具有依赖关系的任务,并对所述有向无环图中的任务进行拓扑排序,得到任务的拓扑序列;
步骤4,利用所述步骤2得出的服务器配置信息对所述步骤3得出的任务的拓扑序列迭代计算,计算出拓扑序列中每个任务放置在边缘计算网络的各边缘服务器上运行最早结束的完成时间并存储对应过程,根据最后一个任务完成时间反向搜索所存储的各过程来反向重建所有任务的分配和调度方案;
步骤5,在边缘服务器实际容量约束下,按照所述步骤4最终确定的任务的分配和调度方案对各任务进行分配和调度。
上述方法的步骤1中,边缘计算网络包括:
一个远程云服务器和多个异构的边缘服务器,每个边缘服务器具有有限容量,其中,任意两个边缘服务器之间的双向数据传输率相等。
上述方法的步骤1中,获取边缘计算网络和具有依赖关系的任务的相关参数包括:
各任务在边缘计算网络的各边缘服务器上的运行时间以及各边缘服务器配置不同功能需花费的时间。
上述方法的步骤1中,贪心初始配置开始的服务器是由所有任务在所有服务器上运行时间最小值决定的。这个初始化服务器其实是模拟某一个移动设备将其一个计算任务(比如一个人脸识别的应用)卸载到某一个边缘服务器(就是此处的初始化服务器),希望借助初始化服务器的资源帮其更快速的完成该计算任务,移动设备会提供计算任务所需要的输入数据,并由该初始化服务器返回最终的计算结果。
上述方法的步骤2的利用所述步骤1获取的相关参数对所述边缘计算网络中的边缘服务器进行贪心初始配置得出服务器配置信息中,在各边缘服务器上设置一个对应的数组记录配置功能的编号,数组存储的信息即为得出的服务器配置信息,配置过程包括以下步骤:
步骤21,在忽略边缘服务器的实际容量的前提下,贪心的确保每个任务在其运行时间最少的边缘服务器上配置好对应的功能,将功能的编号记录在该边缘服务器的数组中,并计算出当前配置下,边缘服务器中最大容量花费值作为虚拟容量;
步骤22,将所有边缘服务器的容量设为虚拟容量,对所述步骤21中未满配的边缘服务器继续进行如下配置:将所有任务在所有边缘服务器的运行时间从小到大排序,依次判断运行时间所对应的边缘服务器上是否已经满配,若满配,则跳过后续步骤,若未满配,判断未满配的边缘服务器是否已经配置任务对应的功能,若已配置,跳过后续步骤,否则,进行配置并保存到数组后再跳到下一个运行时间进行判断,直到所有的边缘服务器均配满。
上述步骤21的处理具体是统计各个边缘服务器在贪心配置方案下分别需要花费多少的容量,边缘服务器中最大容量花费值为虚拟容量(当一个功能占用一个单位的容量时,最大配置功能数目就等于最大容量消耗数目)。
上述步骤22中,未满配是指配置的功能数小于边缘服务器的虚拟容量;
满配是指配置的功能数等于边服务器的虚拟容量。
上述步骤22的处理具体是在步骤21下未满配的边缘服务器上继续进行功能配置,使得每个边缘服务器消耗完其虚拟容量,实际中可用一个二维数组记录每个边缘服务器上配置的功能。
上述方法的步骤3中,用有向无环图表示所述步骤1中应用的具有依赖关系的任务包括:
具有依赖关系的任务中,每个任务表示应用中的一个计算模块,将具有依赖关系的任务设定为一个任务集合
Figure GDA0003687924250000051
其中,任务vj在边缘服务器sk的运行时间为tjk
用一个有向无环图
Figure GDA0003687924250000052
表示一个应用,设定有向边e:=(vi,vj)∈ε表示任务vj的执行需要任务vi的结果作为输入,其中传输的数据量为wij
上述步骤4中,对任务的分配和调度方案是在动态规划过程得出的,动态规划方法中会记忆化存储子问题的结果,当迭代到最后一步时(也就是最后一个任务)得到了最小化完成时间,可从该结果反向重建任务分配和调度方案,用数组记录该完成时间下各个任务的分配以及各个服务器上任务调度次序,进而得到最终确定的任务的分配和调度方案。
本发明的方法实现了决策功能的按需配置,以及各个任务分别放置到哪个边缘服务器以及各边缘服务器上任务的执行顺序。能对边缘计算中,考虑边缘服务器上有限数量的功能配置前提下,对具有依赖关系的任务的高效调度及功能的按需配置,提高边缘服务器的利用率,实现在边缘计算环境中最小化一个由多个依赖任务组成的应用的完成时间(完成时间是指应用从边缘服务器或远程云服务器卸载后,获得最终运行结果返回至移动用户的时间),减少应用运行时间,提高用户体验。
下面对本发明实施例具体作进一步地详细描述。
本发明实施例的边缘计算中结合功能按需配置的有依赖关系任务的调度方法,是一种结合功能配置的有依赖关系任务的调度方法,包括:模型定义以及处理步骤;
其中,(1)该调度方法所用的网络环境、各模型定义如下:
(11)边缘计算网络:本发明的方法应用的边缘计算网络为边缘云***,其中有K个异构的边缘服务器,用
Figure GDA0003687924250000061
表示;其中,每一个边缘服务器sk有有限容量Ck;边缘服务器si到sj的数据传输率是dij,设定dij=dji;边缘云***中包括一个远程云服务器sK
(12)任务依赖图:每个应用中的一个计算模块为一个任务,每个应用的多个任务具有依赖关系,设定一个应用的多个的任务集合
Figure GDA0003687924250000062
其中,任务vj在边缘服务器sk的运行时间用tjk表示;用一个有向无环图(DAG)
Figure GDA0003687924250000063
来表示一个应用,设定有向边e:=(vi,vj)∈ε表示任务vj的执行需要任务vi,的结果作为输入,其中传输的数据量为wij
(13)服务器配置:任务vi只能在配置了对应功能的边缘服务器上运行,在边缘服务器sj为任务vi进行配置需要花费时间rij;设定每个功能占一个单位的容量,边缘服务器si上一次可以至多配置Ci个功能,默认服务器会为配置好的功能开启一个实例(也可称为线程)以处理对应的任务;如果边缘服务器上没有足够的容量配置新功能,则需要决策扔掉某些已配置的功能,同时终止所扔掉功能对应的实例。
(14)有向无环图简化:为了简化应用表示,加入一个空节点,并生成有向边指向有向无环图中所有的入口节点(入度为0),这些边上的数据传输量为应用初始化数据量,另外一个空节点用来收集所有结束节点(出度为0)的结果;空节点不占据任何容量,也没有执行时间,两个空节点只能放置在同一个边缘服务器上,表示任务请求的初始化服务器也是其接收最终执行结果的边缘服务器。这一步的加入是因为用户的移动设备一般会将计算的应用卸载到与其距离最近的边缘服务器(本申请中称为初始化服务器),同时把应用的初始输入数据发送给初始化服务器,在调度的时候,若初始化服务器决定把入口节点(也就是需要初始输入数据作为输入的任务)放置到了别的边缘服务器上,那势必要考虑初始输入数据从初始化服务器传输到别的边缘服务器带来的通信延迟。反之最后的结果也由初始化服务器返回给用户的移动设备,对有向无环图简化有利用刻画这一过程。
该方法的具体处理包括如下步骤:
步骤1,输入模型定义中各个参数的信息,包括:网络、有向无环图、各个任务在各个服务器上的运行时间以及各个边缘服务器配置不同功能需要花费的时间,并指定该应用的入口节点所在的服务器。
步骤2,利用上述步骤1的信息,具体是指每个任务在不同服务器上的运行时间信息,对网络中的边缘服务器进行贪心初始配置:
步骤21,在不考虑边缘服务器的实际容量约束的前提下,贪心的确保每个任务在其运行时间最少的服务器上配置好,并计算出所有服务器中容量花费的最大值(也就是服务器上最大配置的功能数目),该值被称为虚拟容量;
步骤22,将所有边缘服务器的容量设为虚拟容量,对上述步骤21中未达到满配(也就是配置的功能数目小于虚拟容量)的边缘服务器继续进行配置:将所有任务在所有边缘服务器的运行时间从小到大排序,依次判断运行时间tjk所对应的边缘服务器sk上是否已经满配,若满配,则跳过后续步骤,若未满配,判断边缘服务器sk是否已经配置任务vi对应的功能,若已配置,跳过后续步骤,进行配置后再跳到下一个运行时间进行判断,直到所有的边缘服务器均配满。该配置也保证了不允许按需配置的情况下(也就是服务器配置的功能不再变化的情况下)每个任务都有可执行的边缘服务器(这是步骤4运行的必要条件);
步骤3,对上述步骤1中输入的有向无环图进行拓扑排序,得到任务的拓扑序列;定义参数fij表示任务vi放置服务器sj上运行最早结束的时间。初始化为fij:=∞,对于所有的1≤i≤J以及1≤j≤K;
步骤4,利用上述步骤2的服务器配置信息以及步骤3的定义,按照拓扑序列迭代,使用动态规划的方法,一步一步获得fij的值,
Figure GDA0003687924250000071
Figure GDA0003687924250000072
直到计算出最后一个任务fJa的完成时间,并得到任务的分配和调度方案;
步骤5,在服务器实际容量约束下,按照步骤4的结果对应用的任务进行分配和调度,计算出应用真正的完成时间。考虑实际容量往往小于虚拟容量,对某些在虚拟容量下满足了有向无环图依赖约束后可直接运行的任务在实际容量限制下还需要花费额外的排队等待时间和功能配置时间,因此真正的任务完成时间不是步骤4得到的fJa,而是fJa再加上某些任务因为排队等待时间以及功能配置的时间。其中,排队等待时间是当任务在满足有向无环图的时间约束下可运行时,需等候该任务所在服务器上有空闲(未处理任何任务)的实例出现的时间。功能配置时间是指进行按需配置该任务对应的功能,并替换掉空闲实例对应的功能的时间。
实施例
本发明实施例提供的边缘计算中结合功能按需配置的有依赖关系任务的调度方法,具体包括如下步骤:
步骤1,输入图2设定的边缘计算网络以及图3的三种应用的有向无环图
Figure GDA0003687924250000082
给出应用初始化的边缘服务器sa
步骤2,利用上述步骤1的信息对网络中的边缘服务器进行贪心初始配置,忽略边缘服务器的本身容量,贪心的确保每个任务在其运行时间最少的服务器上配置后,将虚拟容量值设为所有服务器花费容量的最大值并设定边缘服务器的容量均为该虚拟容量值。在此虚拟容量设定下,对还有剩余容量可以进行配置的边缘服务器贪心非重复的选择配置最小运行时间的任务,直到所有的服务器均配满。该配置也保证了不允许按需配置的情况下每个任务都有可执行的服务器;
步骤3,对上述步骤1中有向无环图进行拓扑排序,得到任务的拓扑序列。定义参数fij表示任务vi放置服务器sj上运行最早结束的时间。初始化为fij:=∞,对于所有的1≤i≤J以及1≤j≤K;
步骤4,利用2的服务器配置信息以及3的定义,按照拓扑序列迭代,使用动态规划的方法,一步一步获得fij的值,
Figure GDA0003687924250000081
直到计算出最后一个任务fJa的完成时间,并得到任务的分配和调度方案;
步骤5,利用上述步骤4中获得的任务分配和调度顺序方案,重新在上述步骤1给出的实际边缘计算网络中计算出应用完成时间,任务运行时缺少某个功能则进行按需配置,加上配置以及排队等待时间后可计算出真实的完成时间。
上述图2示意的边缘计算网络中,描述了3个边缘服务器与一个远程云组成的边缘云***,其中边缘服务器分配配置了一些功能,一个应用在边缘服务器s1初始化,经过本发明决策将DAG图中任务1和3放置在s1上运行,而任务2放置在s2,任务4放置在s3。由于s2上未配置任务2对应的功能,在任务2运行时,服务器s2需要从云端下载该功能并替换掉任务1对应的功能。
图4示意了本发明方法的实施性能对比图;该图4中横坐标“chain query”对应查询链应用,“Video Processing”对应视频处理应用,“CDA”对应复杂数据分析应用。本发明提出的算法ALG-ODM在这三种应用下减少了至少2.8,2.28,1.54倍完成时间。
本实施例所应用的边缘计算网络配置如下表:
Figure GDA0003687924250000091
本领域普通技术人员可以理解:实现上述实施例方法中的全部或部分流程是可以通过程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

Claims (5)

1.一种边缘计算中结合功能按需配置的有依赖关系任务的调度方法,其特征在于,包括:
步骤1,获取边缘计算网络和包含具有依赖关系任务的应用的相关参数,从边缘计算网络中选取一个边缘服务器作为处理所述应用输入和输出的初始化服务器;
步骤2,利用所述步骤1获取的应用的相关参数以及选取的初始化服务器对所述边缘计算网络中的各边缘服务器进行贪心初始配置得出服务器配置信息;
所述步骤2的利用所述步骤1获取的应用的相关参数对所述边缘计算网络中的边缘服务器进行贪心初始配置得出服务器配置信息中,在各边缘服务器上设置一个对应的数组记录配置功能的编号,配置过程包括以下步骤:
步骤21,在忽略边缘服务器的实际容量的前提下,贪心的确保每个任务在其运行时间最少的边缘服务器上配置好对应的功能,将功能的编号记录在该边缘服务器的数组中,并计算出当前配置下,边缘服务器中最大容量花费值作为虚拟容量;
步骤22,将所有边缘服务器的容量设为虚拟容量,对所述步骤21中未满配的边缘服务器继续进行如下配置:将所有任务在所有边缘服务器的运行时间从小到大排序,依次判断运行时间所对应的边缘服务器上是否已经满配,若满配,则跳过后续步骤,若未满配,判断未满配的边缘服务器是否已经配置任务对应的功能,若已配置,跳过后续步骤,否则,进行配置并保存到数组后再跳到下一个运行时间进行判断,直到所有的边缘服务器均配满;
步骤3,用有向无环图表示所述步骤1中的应用的具有依赖关系的任务,并对所述有向无环图中的任务进行拓扑排序,得到任务的拓扑序列;
步骤4,利用所述步骤2得出的服务器配置信息对所述步骤3得出的任务的拓扑序列迭代计算,计算出拓扑序列中每个任务放置在边缘计算网络的各边缘服务器上运行最早结束的完成时间并存储对应分配过程,根据最后一个任务完成时间反向搜索所存储的各分配过程来反向重建所有任务的分配和调度方案;
步骤5,在边缘服务器实际容量约束下,按照所述步骤4最终确定的任务的分配和调度方案对各任务进行分配和调度。
2.根据权利要求1所述的边缘计算中结合功能按需配置的有依赖关系任务的调度方法,其特征在于,所述方法的步骤1中,边缘计算网络包括:
一个远程云和多个异构的边缘服务器,每个边缘服务器具有有限容量,其中,任意两个边缘服务器之间的双向数据传输率相等。
3.根据权利要求1或2所述的边缘计算中结合功能按需配置的有依赖关系任务的调度方法,其特征在于,所述方法的步骤1中,获取边缘计算网络和包含具有依赖关系任务的应用的相关参数包括:
各任务在边缘计算网络的各边缘服务器上的运行时间以及各边缘服务器配置不同功能需花费的时间。
4.根据权利要求1所述的边缘计算中结合功能按需配置的有依赖关系任务的调度方法,其特征在于,所述步骤22中,未满配是指配置的功能数小于边缘服务器的虚拟容量;
满配是指配置的功能数等于边缘服务器的虚拟容量。
5.根据权利要求1或2所述的边缘计算中结合功能按需配置的有依赖关系任务的调度方法,其特征在于,所述方法的步骤3中,用有向无环图表示所述步骤1中的应用的具有依赖关系的任务包括:
具有依赖关系的任务中,每个任务表示应用中的一个计算模块,将具有依赖关系的任务设定为一个任务集合v={v1,v2,…,vJ},其中,任务vj在边缘服务器sk的运行时间为tjk
用一个有向无环图
Figure FDA0003687924240000021
表示一个应用,设定有向边e:=(vi,vj)∈ε表示任务vj的执行需要任务vi的结果作为输入,其中传输的数据量为wij
CN201910286347.XA 2019-04-10 2019-04-10 边缘计算中结合功能按需配置的有依赖关系任务的调度方法 Active CN110069341B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910286347.XA CN110069341B (zh) 2019-04-10 2019-04-10 边缘计算中结合功能按需配置的有依赖关系任务的调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910286347.XA CN110069341B (zh) 2019-04-10 2019-04-10 边缘计算中结合功能按需配置的有依赖关系任务的调度方法

Publications (2)

Publication Number Publication Date
CN110069341A CN110069341A (zh) 2019-07-30
CN110069341B true CN110069341B (zh) 2022-09-06

Family

ID=67367446

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910286347.XA Active CN110069341B (zh) 2019-04-10 2019-04-10 边缘计算中结合功能按需配置的有依赖关系任务的调度方法

Country Status (1)

Country Link
CN (1) CN110069341B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110650194A (zh) * 2019-09-23 2020-01-03 中国科学技术大学 计算机网络中基于边缘计算的任务执行方法
CN110740194B (zh) * 2019-11-18 2020-11-20 南京航空航天大学 基于云边融合的微服务组合方法及应用
CN113031522B (zh) * 2019-12-25 2022-05-31 沈阳高精数控智能技术股份有限公司 适用于开放式数控***周期性依赖任务的低功耗调度方法
CN111756812B (zh) * 2020-05-29 2021-09-21 华南理工大学 一种能耗感知的边云协同动态卸载调度方法
CN111930487B (zh) * 2020-08-28 2024-05-24 北京百度网讯科技有限公司 作业流调度方法、装置、电子设备及存储介质
WO2022236834A1 (en) * 2021-05-14 2022-11-17 Alipay (Hangzhou) Information Technology Co., Ltd. Method and system for scheduling tasks
CN115037956B (zh) * 2022-06-06 2023-03-21 天津大学 一种面向边缘服务器成本优化的流量调度方法
CN116880994B (zh) * 2023-09-07 2023-12-12 之江实验室 基于动态dag的多处理器任务调度方法、装置及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018095537A1 (en) * 2016-11-25 2018-05-31 Nokia Technologies Oy Application provisioning to mobile edge
CN109561148A (zh) * 2018-11-30 2019-04-02 湘潭大学 边缘计算网络中基于有向无环图的分布式任务调度方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018095537A1 (en) * 2016-11-25 2018-05-31 Nokia Technologies Oy Application provisioning to mobile edge
CN109561148A (zh) * 2018-11-30 2019-04-02 湘潭大学 边缘计算网络中基于有向无环图的分布式任务调度方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Online job dispatching and scheduling in edge-clouds;Haisheng Tan;《IEEE INFOCOM 2017 - IEEE Conference on Computer Communications》;20171005;全文 *
Performance-effective and low-complexity task scheduling for heterogeneous computing;H. Topcuoglu;《 IEEE Transactions on Parallel and Distributed Systems》;20020807;第13卷(第3期);全文 *
边缘计算环境下服务质量感知的资源调度机制;邹云峰等;《电子技术与软件工程》;20180927(第18期);全文 *
面向移动边缘计算的边缘服务器部署及资源分配研究;赵磊;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20190215;第2019年卷(第2期);I139-206 *

Also Published As

Publication number Publication date
CN110069341A (zh) 2019-07-30

Similar Documents

Publication Publication Date Title
CN110069341B (zh) 边缘计算中结合功能按需配置的有依赖关系任务的调度方法
CN110413392B (zh) 一种移动边缘计算场景下制定单任务迁移策略的方法
CN113950066B (zh) 移动边缘环境下单服务器部分计算卸载方法、***、设备
CN110941667B (zh) 一种移动边缘计算网络中的计算卸载方法及***
CN107911478B (zh) 基于化学反应优化算法的多用户计算卸载方法及装置
CN108804227B (zh) 基于移动云计算的计算密集型任务卸载和最佳资源配置的方法
Téllez et al. A tabu search method for load balancing in fog computing
CN109788046B (zh) 一种基于改进蜂群算法的多策略边缘计算资源调度方法
Zhang et al. A new task offloading algorithm in edge computing
CN110519370B (zh) 一种基于设施选址问题的边缘计算资源分配方法
CN113064671A (zh) 基于多智能体的边缘云可扩展任务卸载方法
Mostafavi et al. A stochastic approximation approach for foresighted task scheduling in cloud computing
Chen et al. Latency minimization for mobile edge computing networks
CN112860337A (zh) 在多接入边缘计算中卸载依赖任务的方法及***
Chen et al. When learning joins edge: Real-time proportional computation offloading via deep reinforcement learning
Chen et al. Joint optimization of task offloading and resource allocation via deep reinforcement learning for augmented reality in mobile edge network
Hmimz et al. Bi-objective optimization for multi-task offloading in latency and radio resources constrained mobile edge computing networks
Kim et al. Partition placement and resource allocation for multiple DNN-based applications in heterogeneous IoT environments
Xu et al. Online learning algorithms for offloading augmented reality requests with uncertain demands in MECs
Chen et al. An intelligent approach of task offloading for dependent services in Mobile Edge Computing
Gao et al. Markov decision process‐based computation offloading algorithm and resource allocation in time constraint for mobile cloud computing
CN116737370A (zh) 一种多资源调度方法、***、存储介质及终端
Gao et al. JCSP: Joint caching and service placement for edge computing systems
Bensalem et al. Towards optimal serverless function scaling in edge computing network
Yin et al. An optimal image storage strategy for container-based edge computing in smart factory

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