CN105159762A - 基于贪心策略的启发式云计算任务调度方法 - Google Patents

基于贪心策略的启发式云计算任务调度方法 Download PDF

Info

Publication number
CN105159762A
CN105159762A CN201510464159.3A CN201510464159A CN105159762A CN 105159762 A CN105159762 A CN 105159762A CN 201510464159 A CN201510464159 A CN 201510464159A CN 105159762 A CN105159762 A CN 105159762A
Authority
CN
China
Prior art keywords
task
virtual machine
individual
load
cloud computing
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
CN201510464159.3A
Other languages
English (en)
Other versions
CN105159762B (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.)
Leng Ziyang
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN201510464159.3A priority Critical patent/CN105159762B/zh
Publication of CN105159762A publication Critical patent/CN105159762A/zh
Application granted granted Critical
Publication of CN105159762B publication Critical patent/CN105159762B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种基于贪心策略的启发式云计算任务调度方法,运用贪心策略<b>求解</b>和<b>优化</b>任务调度的初始解,既采用贪心策略难易交错地分配任务求得任务调度的初始解,又采用贪心策略选择收益值大的任务对交换优化任务调度初始解的执行时间。采用本发明的基于贪心策略的启发式云计算任务调度方法,不仅仅有效地提高了任务调度的效率,实现了云计算平台的负载均衡,还显著地减少资源空闲时间,提高资源的利用效益,具有较好的实用性。

Description

基于贪心策略的启发式云计算任务调度方法
技术领域
本发明涉及一种基于贪心策略的启发式云计算任务调度方法。
背景技术
云计算作为并行计算、分布式计算、网格计算等传统技术和分布式数据存储技术、网络编程模型、虚拟化技术等新型技术融合发展的产物,是引领未来信息产业创新的关键战略性技术和手段,对我国发展高新技术产业、冲出国外企业的技术壁垒具有重要的战略意义。云计算的核心思想是利用分布在各地闲散异构的大规模廉价物理资源,整合形成巨大的虚拟资源池,再通过网络将用户提交的计算和存储任务调度到不同的虚拟机上,使得人们能够以极低的成本投入提升计算能力及存储容量,获得较高的服务质量。
云计算任务调度作为云计算平台的重要组成部分,是将用户提交的任务进行合理高效地调度和分配,其实质就是将n个相互独立的任务分配到m个闲散异构的物理资源上,使得总任务完成时间最小并且可用资源得到充分利用,任务调度的效率直接影响到整个云计算平台的整体性能和服务质量。例如,顺序任务调度方法把一组任务顺序分配给一组虚拟机,尽量保证每个虚拟机运行相同数量的任务以平衡负载,但没有考虑任务的需求和虚拟机之间的差别。任务调度问题已经被证明是一个NP完全问题,在mn个可能任务调度的解空间寻找近似最优解,使得总任务的执行时间和负载均衡度最小,其中执行时间最小是为了满足用户的服务质量,负载均衡度最小是为了保证云环境的稳定性。
发明内容
目前,云计算的任务调度方法还未形成统一的标准和规范,但由于该问题的重要性,国内外研究者提出了大量的云计算任务调度方法来计算任务调度的近似最优解,既有传统网格计算中的Min-Min、Max-Min、动态规划等启发式调度方法,也有基于遗传算法、粒子群算法、蚁群算法、免疫算法、差分进化算法、禁忌搜索算法和元胞自动机算法等智能调度方法。
传统启发式调度方法的Min-Min算法采用先易后难的策略,先执行完成时间短的任务,然后执行完成时间长的任务,并采取贪心策略把每个任务优先指派给执行它最早完成的计算资源;Max-Min算法则恰恰相反,采用先难后易和贪心策略,每次选取完成时间最长的任务,优先指派给执行它最早完成的计算资源。传统启发式调度方法以最早完成时间为目标进行调度,有着较好的负载均衡性能,但总任务的实际执行时间并非最少。
智能调度方法通过对任务调度方案的编码,并依据遗传算法、粒子群算法、蚁群算法、免疫算法、差分进化算法和禁忌搜索算法等智能算法思想,在mn大小的解空间多样性搜索和集中性搜索之间建立平衡,最终有效降低任务的执行时间。然而,智能调度方法在进行海量任务调度过程中,易陷入局部最优解,在收敛速度和负载均衡方面的效果有待提高。
2014年中国专利局公告的由孙凌宇、冷明和冷子阳申报,中国专利号为:201410527189.X号《基于禁忌搜索和负载均衡的云计算任务调度方法》的发明专利,针对现有技术方案中的缺陷采用基于禁忌搜索作为指导性邻域搜索优化策略产生候选交换任务对,并采用贪心原则选择收益值大的任务对进行交换,优化任务调度的初始解,从而最大程度地缩短整个任务完成的时间跨度。2015年中国专利局公告的由冷明、孙凌宇和冷子阳申报,中国专利号为:201510441752.6号《基于元胞自动机的负载均衡云计算任务调度方法》的发明专利,针对现有技术方案中的缺陷,基于最早完成时间的启发式优先分配原则求得任务调度的初始解,然后基于元胞自动机优化任务调度初始解,从而最大程度地缩短总任务的最迟完成时间并改善虚拟机的负载均衡性能。
本发明涉及的云计算环境中任务调度仅仅指的是元任务的调度,即元任务之间相互独立,其调度不考虑任务间的数据关联与优先约束关系。此外,云计算环境中依赖任务调度,涉及的依赖任务之间存在先后依赖关系,要求一个任务必须接收到它的所有前驱任务消息后才能开始执行。例如:2014年中国专利局公告的由孙凌宇、冷明和冷子阳申报,中国专利号为:201410137810.1号《基于贪心策略和赋权有向超图的云计算任务调度方法》的发明专利针对依赖任务的调度问题,采用赋权有向超图描述依赖任务的资源需求及依赖关系,并生成相应的赋权有向超图文件;然后启动基于贪心策略的赋权有向超图划分程序,对生成的赋权有向超图进行划分;最后依据赋权有向超图的划分结果构造依赖任务子集,通过MapReduce任务调度模型对其进行映射和调度。2014年中国专利局公告的由冷明、孙凌宇和冷子阳申报,中国专利号为:201410136320.X号《基于多水平划分法和赋权有向超图的云计算任务调度方法》的发明专利针对依赖任务的调度问题,采用赋权有向超图描述任务的资源需求及依赖关系,并生成相应的赋权有向超图文件;然后启动基于多水平划分法的赋权有向超图划分程序,对生成的赋权有向超图进行划分;最后依据赋权有向超图的划分结果构造任务子集,通过MapReduce任务调度模型对其进行映射和调度。此外,2014年中国专利局公告的由孙凌宇、冷明和冷子阳申报,中国专利号为:201410136337.5号《云计算环境中的基于结点属性函数的任务核值计算方法》的发明专利针对中国专利号201410136320.X中多水平划分法的赋权有向超图划分过程中的结点匹配问题,采用赋权有向超图对云计算环境中的任务进行数学建模,描述任务的资源需求及依赖关系,并生成相应的赋权有向超图文件,然后启动赋权有向超图的核值计算程序,采用改进压缩的内存存储格式对赋权有向超图进行存储,并基于结点属性函数计算结点的核值,将所有结点的核值结果存储在赋权有向超图核值文件中。
本发明的目的在于针对已有技术存在的不足,提供一种基于贪心策略的启发式云计算任务调度方法,解决云计算环境下任务调度中执行时间和负载均衡的优化问题,有效地缩短了任务完成的时间跨度,实现了云计算资源的合理利用,为云计算提供高效的任务调度机制。为达到上述目的,本发明的构思如下。
一、运用贪心策略求解和优化任务调度的初始解,既采用贪心策略难易交错地分配任务求得任务调度的初始解,又采用贪心策略选择收益值大的任务对交换优化任务调度初始解的执行时间。
二、在云计算环境下的负载均衡任务调度问题的形式化描述基础上,通过动态规划方法的形式化推导得到最早完成时间的启发式优先分配原则。在求解任务调度的初始解过程中,基于最早完成时间的启发式优先分配原则,采用贪心策略难易交错地分配任务求得任务调度的初始解。
三、在优化任务调度的初始解过程中,引入任务对交换的收益值概念,采用贪心策略选择收益值大的任务对进行交换,从而优化任务调度初始解的执行时间。
根据上述的发明构思,本发明的技术方案是这样实现的:一种基于贪心策略的启发式云计算任务调度方法,其特征在于,具体步骤如下。
步骤1,类型类度分析,输入云计算环境下用户提交的任务,并对其进行类型和类度的分析,确定任务的并行化程度及特点。
步骤2,进程粒度分解,根据用户任务的并行化程度及特点,以及云计算的资源共享分配方式等独特性质,对用户任务按照进程粒度级别进行分解。
步骤3,资源特性分析,根据云计算的资源共享分配方式等独特性质,对分解后的任务进行资源特性分析。
步骤4,求解任务调度初始解,依据对任务资源特性的分析结果,建立描述其资源需求模型,进而基于最早完成时间的启发式优先分配原则,采用贪心策略难易交错地分配任务求得任务调度的初始解。
步骤5,优化任务调度初始解,基于贪心策略选择收益值大的任务对进行交换,优化任务调度初始解,缩短总任务的最迟完成时间并改善虚拟机的负载均衡性能,得到任务调度的优化解。
步骤6,任务映射调度,通过MapReduce任务调度模型,对任务调度的优化解进行映射和调度,实现在云计算环境中的任务提交与执行,有效地均衡云计算平台的负载和缩短整个任务完成的时间跨度。
上述的步骤4中,所述的基于最早完成时间的启发式优先分配原则,采用贪心策略难易交错地分配任务求解任务调度初始解的步骤如下。
步骤4.1,基于资源需求模型给出的任务指令长度和虚拟机每秒执行指令条数,计算任务集合T中n个任务在虚拟机集合VM的m个虚拟机上的预期执行时间,得到n×m的预期执行时间矩阵C,其中预期执行时间Cij表示第i个任务在第j个虚拟机上执行的时间,等于第i个任务的指令长度除以第j个虚拟机的每秒执行指令条数。
步骤4.2,初始化m个虚拟机的当前负载数组vt[1..m]为零,即在开始分配任务之前任何虚拟机的当前负载为零。
步骤4.3,按照最大任务和最小任务交叉访问的顺序,难易交错地访问任务集合T中的每个任务,基于最早完成时间的启发式优先分配原则,依次将第k个任务将分配给具有最早完成时间的虚拟机上,直至所有的任务分配结束后得到任务调度的初始解。
上述的步骤5中,所述的优化任务调度初始解的步骤如下。
步骤5.1,初始化循环计数器COUNT为0。
步骤5.2,基于贪心策略选择收益值大的任务对交换,直至循环计数器COUNT达到设定阈值。
上述的步骤4.3中,所述的基于最早完成时间的启发式优先分配原则将第k个任务分配给具有最早完成时间的虚拟机上步骤如下。
步骤4.3.1,依据m个虚拟机的当前负载数组vt[1..m]和预期执行时间矩阵C,计算出第k个任务tk分配至各个虚拟机相应的时间跨度makespan,其中第j个虚拟机的时间跨度为第j个虚拟机的当前负载数组vt[j]与第k个任务tk在第j个虚拟机的执行时间之和。
步骤4.3.2,基于最早完成时间的启发式优先分配原则,找出时间跨度最小的虚拟机vmx
步骤4.3.3,分配任务tk至虚拟机vmx,更新vmx虚拟机负载vt[x]为第x个虚拟机的当前负载数组vt[x]与第k个任务tk在第x个虚拟机的执行时间ckx之和。
上述的步骤5.2中,所述的基于贪心策略选择收益值大的任务对交换步骤如下。
步骤5.2.1,初始化n个任务的禁忌数组tabu[1..n]为零,即允许所有的任务被交换。
步骤5.2.2,遍历每个任务,读取当前任务tl的禁忌状态;如果当前任务tl的禁忌标志为1,则表明其不允许被交换,跳过步骤5.2.3、5.2.4、5.2.5、5.2.6和5.2.7,继续循环执行步骤5.2.2遍历下一个任务;否则表明任务tl允许被交换,修改任务tl的禁忌标志tabu[l]=1,执行步骤5.2.3。
步骤5.2.3,读取当前任务tl的状态,判断所分配虚拟机的负载vmm是否大于平均负载;如果大于平均负载,则在m个虚拟机的负载数组vt中,查找出负载最小的虚拟机vmy指派给虚拟机vmn;如果小于等于平均负载,查找出负载最大的虚拟机vmx指派给虚拟机vmn;计算出虚拟机vmn中所有允许被交换的任务与当前任务交换之后的收益值。
步骤5.2.4,采用贪心原则选择交换收益值最大的任务候选对(tl,tk),交换任务对(tl,tk)。
步骤5.2.5,交换任务对(tl,tk),即任务tk被交换至虚拟机vmm上执行且任务tl被交换至虚拟机vmn上执行;修改任务tk的禁忌标志tabu[k]=1。
步骤5.2.6,更新vmm虚拟机负载vt[m]=vt[m]+ckm-clm
步骤5.2.7,更新vmn虚拟机负载vt[n]=vt[n]+cln-ckn
本发明与现有技术相比较,具有如下显而易见的突出实质性特点和显著优点。
1、提高了任务调度的效率。
本发明的基于贪心策略的启发式云计算任务调度方法,一定程度解决了云计算环境下任务调度中执行时间和负载均衡的优化问题。针对云计算负载均衡任务调度问题运用贪心策略求解和优化任务调度的初始解,既采用贪心策略难易交错地分配任务求得任务调度的初始解,又采用贪心策略选择收益值大的任务对交换优化任务调度初始解的执行时间,从而有效地提高了任务调度的效率,缩短了任务完成的时间跨度,实现了云计算资源的合理利用,为云计算提供高效的任务调度机制。云计算负载均衡任务调度初始解的计算和优化作为云计算任务调度机制的关键环节,其结果对整个云计算环境的运行效率有着重要的影响,可有效地减少资源空闲时间,提高资源的利用效益。
附图说明。
通过以下对本发明基于贪心策略的启发式云计算任务调度方法的实例结合其附图的描述,可以进一步理解本发明的目的、具体结构特征和优点。
图1是基于贪心策略的启发式云计算任务调度流程图。
图2是采用贪心策略难易交错地分配任务求解任务调度初始解流程图。
图3是基于贪心策略选择收益值大的任务对交换流程图。
具体实施方式。
为了能够更清楚地理解本发明基于贪心策略的启发式云计算任务调度方法的技术内容,特举以下实例详细说明。
本实施例的基于贪心策略的启发式云计算任务调度流程图如图1所示。在云计算环境下,输入用户提交的任务101,对用户任务进行类型和类度的分析102,确定任务的并行化程度和特点;根据用户任务的并行化程度和特点,以及云计算的资源共享分配方式等独特性质,对用户任务按照进程粒度级别进行分解103;进而对分解后的任务进行资源特性分析104;依据对任务资源特性的分析结果,建立描述其资源需求,进而基于该最早完成时间的启发式优先分配原则,采用贪心策略难易交错地分配任务求得任务调度的初始解105;基于贪心策略选择收益值大的任务对进行交换,优化任务调度初始解,缩短总任务的最迟完成时间并改善虚拟机的负载均衡性能,得到任务调度的优化解106;通过MapReduce任务调度模型,对任务调度的优化解进行映射和调度107;在云计算环境中,对调度完成的任务提交与执行108,从而有效地缩短整个任务完成的时间跨度并均衡云计算平台的负载。
本发明阐述了云计算环境下的负载均衡任务调度问题的相关定义如下。
定义1:假设云计算环境下,用户提交作业分解成n个任务的集合,且任务之间相互独立,其调度不需要考虑任务间的数据关联与优先约束关系,定义任务集合T={t1,…,ti,…,tn},其中ti为分解成的第i个任务(i=1,2,…,n),n为分解后的任务数量,且第i个任务ti的总指令长度为MIi
定义2:假设云计算环境下,有m个虚拟资源的集合参加任务调度,且虚拟资源通过虚拟机方式提供,即虚拟资源为云计算集群中的虚拟机。定义虚拟机集合VM={vm1,…,vmj,…,vmm},其中vmj为第j个虚拟机资源(j=1,2,…,m),m为虚拟机数量,且第j个虚拟机vmj的指令执行速度(每秒执行指令条数)为MIPSj
定义3:假设分解后的任务数量n不小于虚拟机资源数量m(n≥m),每个任务只能分配给一个虚拟机执行,且在某一时间段一个虚拟机只能执行一个任务,不能同时执行多个任务。定义n个不同的任务调度到m个不同的虚拟机上的预期执行时间C是一个n×m的矩阵,其中Cij表示第i个任务ti在第j个虚拟机vmj上执行的时间,且cij=MIi/MIPSj,即预期执行时间Cij为任务ti的总指令长度MIi除以虚拟机vmj的每秒执行指令条数MIPSj
定义4:定义n个不同任务T={t1,…,ti,…,tn}调度到m个不同虚拟机VM={vm1,…,vmj,…,vmm}上所有可能的任务分配方案集为定义X代表任务分配方案集中的一种分配方案,即一个n×m的矩阵。其中,xij表示为任务ti与虚拟机vmj的分配关系,且xij∈{0,1},j∈{1,2,…,m}。即如果任务ti分配在虚拟机vmj上执行,则xij=1,否则xij=0。
定义5:对于某任务分配方案X,定义虚拟机的当前负载vt(k-1)j为当前状态下(前k-1个任务分配完毕的状态),分配给第j个虚拟机vmj的所有任务所需执行时间,即定义第k个任务tk分配在第j个虚拟机vmj上的时间跨度makespankj为任务tk在vmj上执行的最早完成时间,即makespankj=vt(k-1)j+ckj
定义6:对于某任务分配方案X,定义虚拟机的负载VTj为分配给第j个虚拟机vmj所有任务的预期完成时间,即
定义7:定义n个不同任务调度到m个不同虚拟机上的平均负载,等于n个任务的总指令长度除以m个虚拟机指令执行速度累加和,即总任务最优完成时间 V T &OverBar; = &Sigma; i = 1 n MI i / &Sigma; j = 1 m MIPS j .
定义8:对于某任务分配方案X,定义虚拟机的负载均衡度负载均衡度LBX数值越小,表明云计算系统中各虚拟机之间的负载越均衡。
定义9:对于n个不同任务T={t1,…,ti,…,tn}调度到m个不同虚拟机VM={vm1,…,vmj,…,vmm}的任务调度问题是寻找分配方案X,使得该分配方案中虚拟机的任务最迟完成时间最早或者说各虚拟机的最长处理时间最短 TS ( n , m ) Min X &Element; &aleph; ( Max j = 1 m ( &Sigma; i = 1 n x ij &times; cij ) ) , 且负载均衡度LBX最小。
根据定义9,对于n个不同任务分配到m个不同虚拟机的任务调度问题是寻找分配方案,使得虚拟机的最长处理时间TS(n,m)最短且负载均衡度LBX最小。当只有一个任务的调度问题时,当有k-1个任务的调度问题时, T S ( k - 1 , m ) = M i n ( M a x j = 1 m ( &Sigma; i = 1 k - 1 x i j &times; c i j ) ) = M i n ( M a x j = 1 m ( vt ( k - 1 ) j ) ) .
定理1:对于k个任务的调度问题,假设第k个任务tk分配给第z个虚拟机vmz,即第z个虚拟机vmz的时间跨度makespankz=vt(k-1)z+ckz,且 vt k j = vt ( k - 1 ) j i f j &NotEqual; z vt k j = vt ( k - 1 ) j + c k j i f j = z , 则满足递推关系 T S ( k , m ) = M i n z = 1 m ( T S ( k - 1 , m ) , makespan k z ) .
证明:由定义9给出的TS(n,m)定义可知, T S ( k , m ) = M i n ( M a x j = 1 m ( &Sigma; i = 1 k x i j &times; c i j ) ) = M i n ( M a x j = 1 m ( vt k j ) ) = M i n ( M a x { vt k 1 , ... , vt k j , ... , vt k m } ) = M i n z = 1 m ( M a x { vt ( k - 1 ) 1 , ... , vt ( k - 1 ) m , vt ( k - 1 ) z + c k z } ) = M i n z = 1 m ( M a x j = 1 m ( vt ( j - 1 ) j ) , vt ( k - 1 ) x + c k z ) = M i n z = 1 m ( M a x j = 1 m ( vt ( k - 1 ) j ) , makespan k z ) = M i n z = 1 m ( M a x j = 1 m ( &Sigma; i = 1 k - 1 x i j &times; c i j ) , makespan k z ) = M i n z = 1 m ( T S ( k - 1 , m ) , makespan k z ) .
由定理1可得,第k个任务tk将分配给具有最早完成时间的虚拟机vmz,即最早完成时间的启发式优先分配原则。
本实施例的采用贪心策略难易交错地分配任务求解任务调度初始解流程图如图2所示,步骤如下。
A01,基于资源需求模型给出的任务指令长度和虚拟机每秒执行指令条数,计算任务集合T中n个任务在虚拟机集合VM的m个虚拟机上的预期执行时间,得到n×m的预期执行时间矩阵C,其中预期执行时间Cij表示第i个任务在第j个虚拟机上执行的时间,等于第i个任务的指令长度除以第j个虚拟机的每秒执行指令条数。
A02,初始化m个虚拟机的当前负载数组vt[1..m]为零,即在开始分配任务之前任何虚拟机的当前负载为零。
A03,按照最大任务和最小任务交叉访问的顺序,难易交错地访问任务集合T中的每个任务,并执行步骤A04、A05和A06,基于最早完成时间的启发式优先分配原则,依次将第k个任务将分配给具有最早完成时间的虚拟机上,直至所有的任务分配结束后得到任务调度的初始解。
A04,依据m个虚拟机的当前负载数组vt[1..m]和预期执行时间矩阵C,计算出第k个任务tk分配至各个虚拟机相应的时间跨度makespan,其中第j个虚拟机的时间跨度为第j个虚拟机的当前负载数组vt[j]与第k个任务tk在第j个虚拟机的执行时间之和。
A05,基于最早完成时间的启发式优先分配原则,找出时间跨度最小的虚拟机vmx
A06,分配任务tk至虚拟机vmx,更新vmx虚拟机负载vt[x]为第x个虚拟机的当前负载数组vt[x]与第k个任务tk在第x个虚拟机的执行时间ckx之和。
定义10:对于某分配方案X,假设vmx为负载最大的虚拟机,vmy为负载最小的虚拟机,即假设第k个元胞ck被分配在虚拟机vmx上执行,第l个元胞cl被分配在虚拟机vmy上执行,即xkx=1且xly=1。当元胞ck和元胞cl进行交换,即元胞ck被交换至虚拟机vmy上执行且元胞cl被交换至虚拟机vmx上执行,虚拟机vmx交换前后的执行时间差称为该元胞对(cl,ck)交换的收益值gain(k,l)=ckx-clx
本实施例的基于贪心策略选择收益值大的任务对交换流程图如图3所示,步骤如下。
B01,初始化任务集合T中n个任务的禁忌数组tabu[1..n]为零,即允许所有的任务被交换。
B02,遍历每个任务,读取当前任务tl的禁忌状态;如果当前任务tl的禁忌标志为1,则表明其不允许被交换,跳过步骤B03、B04、B05、B06和B07,继续循环执行步骤B02遍历下一个任务;否则表明任务tl允许被交换,修改任务tl的禁忌标志tabu[l]=1,执行步骤B03。
B03,读取当前任务tl的状态,判断所分配虚拟机的负载vmm是否大于平均负载;如果大于平均负载,则在m个虚拟机的负载数组vt中,查找出负载最小的虚拟机vmy指派给虚拟机vmn;如果小于等于平均负载,查找出负载最大的虚拟机vmx指派给虚拟机vmn;计算出虚拟机vmn中所有允许被交换的任务与当前任务交换之后的收益值。
B04,采用贪心原则选择交换收益值最大的任务候选对(tl,tk),交换任务对(tl,tk)。
B05,交换任务对(tl,tk),即任务tk被交换至虚拟机vmm上执行且任务tl被交换至虚拟机vmn上执行;修改任务tk的禁忌标志tabu[k]=1。
B06,更新vmm虚拟机负载vt[m]=vt[m]+ckm-clm
B07,更新vmn虚拟机负载vt[n]=vt[n]+cln-ckn

Claims (1)

1.一种基于贪心策略的启发式云计算任务调度方法,其特征在于,具体步骤如下;
步骤1,类型类度分析,输入云计算环境下用户提交的任务,并对其进行类型和类度的分析,确定任务的并行化程度及特点;
步骤2,进程粒度分解,根据用户任务的并行化程度及特点,以及云计算的资源共享分配方式等独特性质,对用户任务按照进程粒度级别进行分解;
步骤3,资源特性分析,根据云计算的资源共享分配方式等独特性质,对分解后的任务进行资源特性分析;
步骤4,求解任务调度初始解,依据对任务资源特性的分析结果,建立描述其资源需求模型,进而基于最早完成时间的启发式优先分配原则,采用贪心策略难易交错地分配任务求得任务调度的初始解
步骤5,优化任务调度初始解,基于贪心策略选择收益值大的任务对进行交换,优化任务调度初始解,缩短总任务的最迟完成时间并改善虚拟机的负载均衡性能,得到任务调度的优化解;
步骤6,任务映射调度,通过MapReduce任务调度模型,对任务调度的优化解进行映射和调度,实现在云计算环境中的任务提交与执行,有效地均衡云计算平台的负载和缩短整个任务完成的时间跨度;
上述的步骤4中,所述的基于最早完成时间的启发式优先分配原则,采用贪心策略难易交错地分配任务求解任务调度初始解的步骤如下;
步骤4.1,基于资源需求模型给出的任务指令长度和虚拟机每秒执行指令条数,计算任务集合Tn个任务在虚拟机集合VMm个虚拟机上的预期执行时间,得到n×m的预期执行时间矩阵C,其中预期执行时间Cij表示第i个任务在第j个虚拟机上执行的时间,等于第i个任务的指令长度除以第j个虚拟机的每秒执行指令条数;
步骤4.2,初始化m个虚拟机的当前负载数组vt[1..m]为零,即在开始分配任务之前任何虚拟机的当前负载为零;
步骤4.3,按照最大任务和最小任务交叉访问的顺序,难易交错地访问任务集合T中的每个任务,基于最早完成时间的启发式优先分配原则,依次将第k个任务将分配给具有最早完成时间的虚拟机上,直至所有的任务分配结束后得到任务调度的初始解;
上述的步骤5中,所述的优化任务调度初始解的步骤如下;
步骤5.1,初始化循环计数器COUNT为0;
步骤5.2,基于贪心策略选择收益值大的任务对交换,直至循环计数器COUNT达到设定阈值;
上述的步骤4.3中,所述的基于最早完成时间的启发式优先分配原则将第k个任务分配给具有最早完成时间的虚拟机上步骤如下;
步骤4.3.1,依据m个虚拟机的当前负载数组vt[1..m]和预期执行时间矩阵C,计算出第k个任务t k 分配至各个虚拟机相应的时间跨度makespan,其中第j个虚拟机的时间跨度为第j个虚拟机的当前负载数组vt[j]与第k个任务t k 在第j个虚拟机的执行时间之和;
步骤4.3.2,基于最早完成时间的启发式优先分配原则,找出时间跨度最小的虚拟机vm x
步骤4.3.3,分配任务t k 至虚拟机vm x ,更新vm x 虚拟机负载vt[x]为第x个虚拟机的当前负载数组vt[x]与第k个任务t k 在第x个虚拟机的执行时间c kx 之和;
上述的步骤5.2中,所述的基于贪心策略选择收益值大的任务对交换步骤如下;
步骤5.2.1,初始化n个任务的禁忌数组tabu[1..n]为零,即允许所有的任务被交换;
步骤5.2.2,遍历每个任务,读取当前任务t l 的禁忌状态;如果当前任务t l 的禁忌标志为1,则表明其不允许被交换,跳过步骤5.2.3、5.2.4、5.2.5、5.2.6和5.2.7,继续循环执行步骤5.2.2遍历下一个任务;否则表明任务t l 允许被交换,修改任务t l 的禁忌标志tabu[l]=1,执行步骤5.2.3;
步骤5.2.3,读取当前任务t l 的状态,判断所分配虚拟机的负载vm m 是否大于平均负载;如果大于平均负载,则在m个虚拟机的负载数组vt中,查找出负载最小的虚拟机vm y 指派给虚拟机vm n ;如果小于等于平均负载,查找出负载最大的虚拟机vm x 指派给虚拟机vm n ;计算出虚拟机vm n 中所有允许被交换的任务与当前任务交换之后的收益值;
步骤5.2.4,采用贪心原则选择交换收益值最大的任务候选对(t l ,t k ),交换任务对(t l ,t k );
步骤5.2.5,交换任务对(t l ,t k ),即任务t k 被交换至虚拟机vm m 上执行且任务t l 被交换至虚拟机vm n 上执行;修改任务t k 的禁忌标志tabu[k]=1;
步骤5.2.6,更新vm m 虚拟机负载vt[m]=vt[m]+c km -c lm
步骤5.2.7,更新vm n 虚拟机负载vt[n]=vt[n]+c ln -c kn
CN201510464159.3A 2015-08-03 2015-08-03 基于贪心策略的启发式云计算任务调度方法 Expired - Fee Related CN105159762B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510464159.3A CN105159762B (zh) 2015-08-03 2015-08-03 基于贪心策略的启发式云计算任务调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510464159.3A CN105159762B (zh) 2015-08-03 2015-08-03 基于贪心策略的启发式云计算任务调度方法

Publications (2)

Publication Number Publication Date
CN105159762A true CN105159762A (zh) 2015-12-16
CN105159762B CN105159762B (zh) 2018-09-07

Family

ID=54800625

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510464159.3A Expired - Fee Related CN105159762B (zh) 2015-08-03 2015-08-03 基于贪心策略的启发式云计算任务调度方法

Country Status (1)

Country Link
CN (1) CN105159762B (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105550825A (zh) * 2016-01-15 2016-05-04 中南民族大学 云计算环境下的基于MapReduce并行化的柔性工厂作业调度方法
CN106126315A (zh) * 2016-06-17 2016-11-16 广东工业大学 一种极小化通讯延迟的数据中心内的虚拟机分配方法
CN106408126A (zh) * 2016-09-23 2017-02-15 广东技术师范学院 一种面向能耗数据并发采集的三阶段优化方法
CN106535242A (zh) * 2016-09-30 2017-03-22 东南大学 一种无线云计算系统性能预测方法
CN106550036A (zh) * 2016-10-28 2017-03-29 华东师范大学 一种面向节能的启发式云计算资源分配与调度方法
CN107220780A (zh) * 2017-06-16 2017-09-29 佛山科学技术学院 众包系统中的异构任务执行序列优化方法
CN107329815A (zh) * 2017-06-26 2017-11-07 浙江工业大学 一种基于BP‑Tabu搜索的云任务负载均衡调度方法
CN107391252A (zh) * 2016-05-16 2017-11-24 阿里巴巴集团控股有限公司 一种资源处理方法及装置
WO2018072687A1 (zh) * 2016-10-19 2018-04-26 华为技术有限公司 一种资源调度的方法、装置和过滤式调度器
CN108170861A (zh) * 2018-01-25 2018-06-15 曲逸文 一种基于动态规划的分布式数据库系统协同优化方法
CN109426553A (zh) * 2017-08-21 2019-03-05 上海寒武纪信息科技有限公司 任务切分装置及方法、任务处理装置及方法、多核处理器
CN109496321A (zh) * 2017-07-10 2019-03-19 欧洲阿菲尼帝科技有限责任公司 用于估计任务分配系统中的预期绩效的技术
CN109783186A (zh) * 2017-11-15 2019-05-21 中国电力科学研究院有限公司 一种检测云平台的任务调度方法及系统
CN110688204A (zh) * 2019-08-08 2020-01-14 平安科技(深圳)有限公司 分布式计算系统任务分配方法及相关设备
CN112187891A (zh) * 2020-09-16 2021-01-05 国网浙江省电力有限公司信息通信分公司 基于多业务的边缘计算节点集合的负载优化方法及装置
US11537843B2 (en) 2017-06-29 2022-12-27 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
US11687467B2 (en) 2018-04-28 2023-06-27 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
US11726844B2 (en) 2017-06-26 2023-08-15 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102682176B (zh) * 2012-05-18 2013-12-25 冷明 基于元胞自动机和赋权超图的大规模集成电路划分方法
CN103870342B (zh) * 2014-04-06 2016-12-07 冷明 云计算环境中的基于结点属性函数的任务核值计算方法
CN103885839B (zh) * 2014-04-06 2017-02-22 孙凌宇 基于多水平划分法和赋权有向超图的云计算任务调度方法
CN103902374B (zh) * 2014-04-08 2017-01-18 冷明 基于元胞自动机和赋权有向超图的云计算任务调度方法
CN104331321B (zh) * 2014-10-09 2017-04-19 冷明 基于禁忌搜索和负载均衡的云计算任务调度方法
CN104679966B (zh) * 2015-03-26 2017-06-16 孙凌宇 基于多层次方法和离散粒子群的赋权超图优化划分方法

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105550825A (zh) * 2016-01-15 2016-05-04 中南民族大学 云计算环境下的基于MapReduce并行化的柔性工厂作业调度方法
CN105550825B (zh) * 2016-01-15 2021-07-02 中南民族大学 云计算环境下的基于MapReduce并行化的柔性工厂作业调度方法
CN107391252A (zh) * 2016-05-16 2017-11-24 阿里巴巴集团控股有限公司 一种资源处理方法及装置
CN106126315A (zh) * 2016-06-17 2016-11-16 广东工业大学 一种极小化通讯延迟的数据中心内的虚拟机分配方法
CN106408126A (zh) * 2016-09-23 2017-02-15 广东技术师范学院 一种面向能耗数据并发采集的三阶段优化方法
CN106535242A (zh) * 2016-09-30 2017-03-22 东南大学 一种无线云计算系统性能预测方法
CN111258737A (zh) * 2016-10-19 2020-06-09 华为技术有限公司 一种资源调度的方法、装置和过滤式调度器
WO2018072687A1 (zh) * 2016-10-19 2018-04-26 华为技术有限公司 一种资源调度的方法、装置和过滤式调度器
CN107968802A (zh) * 2016-10-19 2018-04-27 华为技术有限公司 一种资源调度的方法、装置和过滤式调度器
CN111258737B (zh) * 2016-10-19 2023-12-08 华为技术有限公司 一种资源调度的方法、装置和过滤式调度器
CN107968802B (zh) * 2016-10-19 2020-02-14 华为技术有限公司 一种资源调度的方法、装置和过滤式调度器
CN106550036B (zh) * 2016-10-28 2019-05-17 华东师范大学 一种面向节能的启发式云计算资源分配与调度方法
CN106550036A (zh) * 2016-10-28 2017-03-29 华东师范大学 一种面向节能的启发式云计算资源分配与调度方法
CN107220780A (zh) * 2017-06-16 2017-09-29 佛山科学技术学院 众包系统中的异构任务执行序列优化方法
CN107220780B (zh) * 2017-06-16 2020-07-28 佛山科学技术学院 众包系统中的异构任务执行序列优化方法
US11726844B2 (en) 2017-06-26 2023-08-15 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
CN107329815A (zh) * 2017-06-26 2017-11-07 浙江工业大学 一种基于BP‑Tabu搜索的云任务负载均衡调度方法
CN107329815B (zh) * 2017-06-26 2020-08-04 浙江工业大学 一种基于BP-Tabu搜索的云任务负载均衡调度方法
US11537843B2 (en) 2017-06-29 2022-12-27 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
CN109496321A (zh) * 2017-07-10 2019-03-19 欧洲阿菲尼帝科技有限责任公司 用于估计任务分配系统中的预期绩效的技术
CN109426553A (zh) * 2017-08-21 2019-03-05 上海寒武纪信息科技有限公司 任务切分装置及方法、任务处理装置及方法、多核处理器
US11656910B2 (en) 2017-08-21 2023-05-23 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
CN109783186A (zh) * 2017-11-15 2019-05-21 中国电力科学研究院有限公司 一种检测云平台的任务调度方法及系统
CN108170861B (zh) * 2018-01-25 2020-07-03 中润普达(十堰)大数据中心有限公司 一种基于动态规划的分布式数据库系统协同优化方法
CN108170861A (zh) * 2018-01-25 2018-06-15 曲逸文 一种基于动态规划的分布式数据库系统协同优化方法
US11687467B2 (en) 2018-04-28 2023-06-27 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
CN110688204B (zh) * 2019-08-08 2022-08-26 平安科技(深圳)有限公司 分布式计算系统任务分配方法及相关设备
CN110688204A (zh) * 2019-08-08 2020-01-14 平安科技(深圳)有限公司 分布式计算系统任务分配方法及相关设备
CN112187891B (zh) * 2020-09-16 2022-06-10 国网浙江省电力有限公司信息通信分公司 基于多业务的边缘计算节点集合的负载优化方法及装置
CN112187891A (zh) * 2020-09-16 2021-01-05 国网浙江省电力有限公司信息通信分公司 基于多业务的边缘计算节点集合的负载优化方法及装置

Also Published As

Publication number Publication date
CN105159762B (zh) 2018-09-07

Similar Documents

Publication Publication Date Title
CN105159762A (zh) 基于贪心策略的启发式云计算任务调度方法
CN104331321B (zh) 基于禁忌搜索和负载均衡的云计算任务调度方法
Kaur et al. Container-as-a-service at the edge: Trade-off between energy efficiency and service availability at fog nano data centers
Rekha et al. Efficient task allocation approach using genetic algorithm for cloud environment
CN102932422B (zh) 基于改进蚁群算法的云环境任务调度方法
CN103617472B (zh) 多项目多任务管理中的资源平衡自适应调度方法
CN105005503A (zh) 基于元胞自动机的云计算负载均衡任务调度方法
CN105049536A (zh) IaaS云环境中的负载均衡系统和负载均衡方法
US8527988B1 (en) Proximity mapping of virtual-machine threads to processors
CN107329815A (zh) 一种基于BP‑Tabu搜索的云任务负载均衡调度方法
CN108182109A (zh) 一种云环境下的工作流调度与数据分配方法
CN106371924B (zh) 一种最小化MapReduce集群能耗的任务调度方法
CN105975342A (zh) 基于改进布谷鸟搜索算法的云计算任务调度方法及系统
CN109491761A (zh) 基于eda-ga混合算法的云计算多目标任务调度方法
CN104216782A (zh) 高性能计算和云计算混合环境中的动态资源管理方法
CN102968344A (zh) 一种多虚拟机迁移调度的方法
CN105446816A (zh) 一种面向异构平台的能耗优化调度方法
CN102937918A (zh) 一种hdfs运行时数据块平衡方法
CN105843679A (zh) 自适应众核资源调度方法
CN104572297A (zh) 一种基于遗传算法的Hadoop作业调度方法
CN105373426A (zh) 一种基于Hadoop的车联网内存感知实时作业调度方法
CN107329822A (zh) 面向多源多核系统的基于超任务网的多核调度方法
Zhao et al. A parallel-batch multi-objective job scheduling algorithm in edge computing
CN115086249B (zh) 一种基于深度强化学习的云数据中心资源分配方法
Shahid et al. Level-based batch scheduling strategies for computational grid

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Leng Ziyang

Inventor before: Sun Lingyu

Inventor before: Leng Ming

Inventor before: Leng Ziyang

CB03 Change of inventor or designer information
TA01 Transfer of patent application right

Effective date of registration: 20180622

Address after: 343000 room 6, No. 15 Anning Road, Jizhou District, Ji'an, Jiangxi 101

Applicant after: Leng Ziyang

Address before: 343000 room 6, No. 15 Anning Road, Jizhou District, Ji'an, Jiangxi 101

Applicant before: Leng Ming

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180907

Termination date: 20190803

CF01 Termination of patent right due to non-payment of annual fee