CN103019822A - 一种云环境下收益驱动的大规模处理任务调度方法 - Google Patents

一种云环境下收益驱动的大规模处理任务调度方法 Download PDF

Info

Publication number
CN103019822A
CN103019822A CN2012105258595A CN201210525859A CN103019822A CN 103019822 A CN103019822 A CN 103019822A CN 2012105258595 A CN2012105258595 A CN 2012105258595A CN 201210525859 A CN201210525859 A CN 201210525859A CN 103019822 A CN103019822 A CN 103019822A
Authority
CN
China
Prior art keywords
particle
task
value
data processing
speed
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
CN2012105258595A
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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing 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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN2012105258595A priority Critical patent/CN103019822A/zh
Publication of CN103019822A publication Critical patent/CN103019822A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

本发明提供了一种云计算环境下资源成本驱动的大规模图状数据处理任务调度方法,属于分布式计算领域。所述方法包括:步骤1:读入大规模图状数据处理任务图,按照图状结构任务的层次关系对所述大规模图状数据处理任务图进行遍历,按照层次进行任务序号标记,并计算任务的总数n;步骤2:读入当前云计算环境的虚拟机的性能和计价模式;步骤3:初始化m个粒子的编码以及各个粒子的位置Xi和飞行速度Vi,设最大迭代次数设为T;步骤4:根据粒子的当前的编码利用下面的适应度函数计算所有粒子的适应度函数值f(Xi):步骤5:根据粒子的适应度函数值进行速度更新和位置更新。

Description

一种云环境下收益驱动的大规模处理任务调度方法
技术领域
本发明属于分布式计算领域,具体涉及一种云环境下收益驱动的大规模处理任务调度方法。
背景技术
近年来,随着互联网的普及和Web 2.0技术的推动,许多应用都涉及大规模图状数据处理,比如:交通路线图,科学文献引用关系图和社交网络等(请参考G.Malewicz,M.H.Austern.A.J.Bik,J.C.Dehnert,I.Horn,N.Leiser,and G.Czajkowski.″Pregel:a system for large-scale graph processing,″SIGMOD′10,pp.135-146,2010.和R.Chen,X.Weng,B.He,and M.Yang.″Large graphprocessing in the cloud.SIGMOD′10,″pp.1123-1126,2010)。由于图规模的不断增大,对计算能力的需求远远超出本地数据中心的处理能力。这时需要不断加大本地数据中心的基础设施投入来扩展现有系统。然而,扩展本地数据中心存在利用率低、配置成本高、维护困难等问题,越来越多的公司选择在云计算环境下处理大型图状数据。云计算是分布式计算、网格计算和效用计算的进一步发展,是以网络为载体,以虚拟化技术为基础,根据用户需求动态配置资源的新兴计算模式(请参考M.Armbrust,Fox,A.,Giffith,R.,Joseph,A.D.,Katz,R.H.,Konwinski,A.Lee,G.,Patterson,D.A.,Rabkin,A and Stoica,I,″Above the clouds:Aberkeley view of cloud computing,″EEC S Department,University of California,Berkeley,Technical.Report.UCB/EECS-2009-28,2009.和R.Buyya,Yeo,C.S.Venugopal,S.Broberg,J.Brandic,I.,″Cloud computing and emerging IT platforms:Vision,hype,and reality for delivering computing as the 5th utility,″FutureGeneration Computer Systems,25(6)pp.599-616.2009.)。其主要优势包括:(1)海量图数据存储能力(2)强大的计算处理能力(3)良好的可伸缩性和灵活性。如何利用云计算的优势,高效调度大规模图状数据处理任务是当前一个研究重点问题。
一般来说,大规模图状数据处理任务采用有向无环图(DirectedAcyclic Graph,DAG)来表示,图中的节点表示一个处理任务,边表示节点之间的的前驱后继关系。针对此模型最小化任务调度时间的问题在绝大多数情况下是NP完全问题(请参考J.D.Ullman,″NP-Complete Scheduling Problems,″Journal of Computerand Systems Sciences,10(3)pp.498-500.1975.)。文献(H.Topcuoglu,S.Hariri,andM.Wu,″Performance-effective and low-complexity task scheduling  forheterogeneous computing,″Parallel and Distributed Systems,IEEE Transactions on,13(3)pp.260-274.2002)利用图中节点的计算负载和传输负载计算节点的优先级,并排序构建调度列表,根据优先级大小,将调度任务到最小任务完成时间的机器上执行。文献1(D.Bozda,F.zgner,and U.V.Catalyurek,″Compaction ofschedules and a two-stage approach for duplication-based dag scheduling,″Paralleland Distributed Systems,IEEE Transactions on,20(6)pp.857-871.2008)利用任务复制技术,根据处理器当前的空闲时间,重复映射任务图中的一些前驱任务,减少节点之间的传输开销。文献2(T.Yang,A.Gerasoulis,DSC:Scheduling ParallelTasks on an Unbounded Number of Processors.Parallel and Distributed Systems,IEEE Transactions on,5(9),pp.951-967,1994)利用图中节点的计算负载和传输负载动态跟踪图的关键路径,将关键路径上的节点进行聚簇在同一处理器上执行。以上这些方法均将最小化任务的执行时间即调度长度作为算法的目标函数。然而,云计算即付即用的计费模式,使得处理这些任务所带来的资源租赁开销成为必须要考虑的因素。文献3(Jian Li,Sen Su,Xiang Cheng,Qingjia Huang,Zhongbao Zhang,″Cost-Conscious Scheduling for Large Graph Processing in theCloud,″In Processings of the 13th International Conference on High PerformanceComputing and Communications,Banff,Canada,Sep.2-4,pp808-813,2011)针对此问题,建立云计算环境下大规模图状数据处理任务的调度模型,并设计了降低成本的任务调度算法,但其仍存在以下问题:算法降低资源租赁开销的同时延长了任务的调度长度,而且得到的映射方案并不是最优解,其求解质量仍存在较大的提升空间。
发明内容
本发明的目的在于解决上述现有技术中存在的难题,提供一种云环境下收益驱动的大规模处理任务调度方法,是一种实用的基于粒子群优化的大规模图状数据处理任务调度算法,其结合云计算环境下资源按需租赁的特点,以降低图状数据处理任务的调度长度和资源租赁成本为目标,建立大规模图状数据处理的任务调度模型,并借鉴元启发式优化技术。
本发明是通过以下技术方案实现的:
一种云环境下收益驱动的大规模处理任务调度方法,包括以下步骤:
步骤1:读入大规模图状数据处理任务图,按照图状结构任务的层次关系对所述大规模图状数据处理任务图进行遍历,按照层次进行任务序号标记,并计算任务的总数n;
步骤2:读入当前云计算环境的虚拟机的性能和计价模式;
步骤3:初始化m个粒子的编码以及各个粒子的位置Xi和飞行速度Vi,设最大迭代次数设为T;
步骤4:根据粒子的当前的编码利用下面的适应度函数计算所有粒子的适应度函数值f(Xi):
min α · T ′ - T min T max - T min + ( 1 - α ) · C ′ - C min C max - C min
其中T’表示当前策略的任务调度长度,C’表示当前策略的资源租赁成本,Tmin和Tmax分别表示当前解集中最小和最大的任务调度长度,Cmin和Cmax分别表示当前解集中最小和最大的资源租赁成本,系数α用以反应调度长度和资源租赁成本之间均衡关系,α∈[0,1];α值变小将得到资源租赁成本较小但调度长度延长的调度方案;
通过迭代式搜索不同的α值构造Pareto最优解集;
在上述迭代过程中,将当前值和上一次结果进行比较获得个体极值Xpb,选取个体极值中最小的作为全局极值Xgb
步骤5:根据粒子的适应度函数值f(Xi)进行速度更新和位置更新;
步骤6:对每个粒子,将其适应度函数值f(Xi)与步骤4得到的个体极值Xpb进行比较,然后将两者中较小的值作为新的个体极值;将其适应度函数值f(Xi)与步骤4得到的全局极值Xgb进行比较,然后将两者中较小的值作为新的全局极值,则更新当前的全局极值;
步骤7:判断是否达到最大迭代次数T,如果是,则停止计算,转入步骤8;如果否,则返回步骤5;
步骤8:输出大规模图状数据处理任务调度方案。
所述步骤3中所述粒子的位置对应于待解决问题的一个潜在解,粒子的速度指导其在迭代过程中向最优解运动的方向。
所述步骤5具体如下:
利用下式进行速度更新:
V i ( t + 1 ) = P 1 V i ( t ) ⊕ P 2 ( X pb Θ X i ( t ) ) ⊕ P 3 ( X gb Θ X i ( t ) )
其中,t表示迭代次数,Xi(t)表示粒子第t次迭代时所处的位置,Vi(t)为对应第t次迭代时所处的位置的飞行速度,P1是粒子取当前速度的概率,P2是粒子取局部最优速度的概率,P3是粒子取全局最优速度的概率,且P1+P2+P3=1;
利用下式进行位置更新,位置更新中随机选取云计算中候选虚拟机列表(用在式(12)中的X(t+1)处):
X i ( t + 1 ) = X i ( t ) ⊗ V i ( t + 1 )
其中,Θ用于计算两种映射方案的差异性,如果映射方案Xi和Xj在同一维上具有相同的值,则差值的结果为1,否则为0;
Figure BDA00002545100700051
用于粒子更新过程中,通过跟踪自身最优位置和全局最优位置来更新自身的速度,即在粒子的对应维度上以Pi的概率按照Vi各维度的值更新和以Pj的概率按照Vj各维度的值更新;
用于粒子根据当前速度更新位置,即当前位置Xi按照Vj的策略对当前大规模图状数据处理任务调度策略进行调整。
与现有技术相比,本发明的有益效果是:本发明方法能够在云计算环境下调度大规模图状数据处理任务过程中达到满足性能需求的前提下降低资源租赁成本。
附图说明
图1是高斯消去法对五维矩阵的处理模型。
图2是随机200个任务调度长度比较图。
图3是随机400个任务调度长度比较图。
图4是高斯100个任务调度长度比较图。
图5是高斯200个任务调度长度比较图。
图6是随机200个任务调度长度和资源成本比较图。
图7是随机400个任务调度长度和资源成本比较图。
图8是高斯100个任务调度长度和资源成本比较图。
图9是高斯200个任务调度长度和资源成本比较图。
图10是实施例中的图状数据处理任务模型。
图11是实施例中利用本发明方法得到的数据处理任务调度结果图。
图12是本发明云环境下收益驱动的大规模处理任务调度方法的步骤框图。
具体实施方式
下面结合附图对本发明作进一步详细描述:
本发明针对云计算强大的计算能力和弹性的计价模式,建立大规模图状数据处理任务调度模型,并且根据帕勒托最优理论设计执行时间和资源租赁成本的多目标优化函数,然后提出一种云环境下收益驱动的大规模处理任务调度方法,其是新的基于粒子群优化的大规模图状数据处理任务调度方法(Large GraphProcessing Based on Particle Swarm Optimization in the Cloud,简称LGPPSO(就是本发明方法的简称)。
大规模图状数据处理任务调度问题的形式化描述如下:
(1)云计算虚拟资源计费模型:云计算底层提供商根据应用请求需求的不同,提供不同性能和计价模式的虚拟机VMi。每一台虚拟机具有的属性为计算能力Ci与计价模式Pi。任意两台虚拟机VMi和VMj之间计算能力(Ci,Cj)和计价模式(Pi,Pj)的关系可以用指数关系式
Figure BDA00002545100700061
表示。
(2)大规模图状数据处理任务:大型图状数据可以用有向无环图(DirectedAcyclic Graph,简称DAG)G(V,E)来表示相互之间通信的任务集,顶点集v为大规模图状数据处理任务集,有向边集E表示任务间数据的流动方向,ei,j表示任务i和任务j不再同一资源上执行的传输时间。如果这两个任务被调度给同一台机器,则通信时间为零。predi表示任务i的直接前驱任务集合,succi表示任务i的直接后继任务集合。图中没有任何前驱结点的任务标记为入口任务ventry,图中没有任何后继结点的任务标记为出口任务vexit。根据任务在不同性能机器执行时间的不同,Ti,k表示任务i在资源k上的执行时间。
(3)图状数据处理任务调度:大规模图状数据数据处理问题被定义为M:G(V,E)→(VMi,...,VMj)。任务调度可以分解为以下两个步骤:利用大规模图状数据处理任务的执行时间和任务之间的传输时间建立任务调度优先级;将就绪任务调度到最小化目标函数的虚拟机上执行。
(4)主要评价指标:大规模图状数据处理任务调度的主要目标在于降低任务调度长度的同时,减少云计算环境中资源租赁成本。相应的评价指标有:任务调度长度和资源租赁成本。相应的定义如下所示:
任务调度长度:
T=max{AFT{vexit}}         (1)
其中,AFT(vexit)表示出口任务的实际完成时间。
资源租赁成本:
C = Σ j ∈ select V M cos t ( j ) - - - ( 2 )
云计算环境下大规模图状数据处理任务调度模型如下
其主要目标是:最小化任务调度长度T和资源租赁成本C。对于一个大规模图状数据处理任务,不同的调度方案将导致不同调度长度和资源租赁成本,而这两个目标相互影响。例如,调度任务给速度快的虚拟机执行将减少运行时间,但却增加资源租赁成本。针对此多目标优化问题,将存在一组帕累托(Pareto)最优解集,解集中任何解都不可能提高一个目标而不降低另一个目标。
下面给出求解此多目标优化问题常用的几个基本定义:
定义1(Pareto支配)假设S1,S2为多目标最小化问题的两个可行解,若解S1是Pareto支配解S2记做S1>S2,当且仅当同时满足以下条件:
∀ i ∈ { 1 , . . . , k } , f ( S 1 ) ≤ f ( S 2 ) - - - ( 3 )
&Exists; i &Element; { 1 , . . . , k } , f ( S 1 ) < f ( S 2 ) - - - ( 4 )
定义2(Pareto最优解)若S*是多目标最小化问题的Pareto最优解,满足以下条件:
&ForAll; s &Element; &Omega; : f ( s ) &GreaterEqual; f ( S * ) - - - ( 5 )
其中s是可行域内的任意解。
定义3(Pareto最优解集)所有Pareto最优解所构成的矢量集合称为Pareto最优解集,其定义为:
&PartialD; * = { s | &Not; &Exists; s &prime; &Element; &Omega; : s &prime; > s } - - - ( 6 )
Figure BDA00002545100700085
是pareto最优解集,s是可行域内的任意解,Ω是可行域。
基于以上理论,求解此问题Pareto最优解集的有效方法是将多目标优化问题融合为一个单目标优化问题。为有效均衡云计算环境下大规模图状数据处理任务的调度长度和资源租赁成本,本发明将下式作为该模型的目标函数:
min &alpha; &CenterDot; T &prime; - T min T max - T min + ( 1 - &alpha; ) &CenterDot; C &prime; - C min C max - C min - - - ( 7 )
α∈[0,1]            (8)
其中T’表示当前策略的任务调度长度,C’表示当前策略的资源租赁成本,Tmin和Tmax分别表示当前解集中最小和最大的任务调度长度,Cmin和Cmax分别表示当前解集中最小和最大的资源租赁成本,系数α用以反应调度长度和资源租赁成本之间均衡关系。α值变小将得到资源租赁成本较小但调度长度延长的调度方案。通过迭代式搜索不同的α值构造Pareto最优解集。
本发明方法的原理具体如下:
(1)PSO算法基础:粒子群优化算法(Particle Swarm Optimization,PSO)(请参考J.KENNEDY and R.EBERHART.Particle swarmoptimization[A].International Conference on Neural Networks[C].Perth:IEEE,1995.1942-1948)是由Kennedy和Eberhart提出的一种新的全局优化进化算法,属于群智能演化计算技术,但比同类算法执行速度快、求解效率高。该算法首先随机初始化一群粒子,每个粒子的位置对应于优化问题的一个解。粒子的速度指导其在迭代过程中向最优解运动的方向。粒子同时具有记忆功能,可根据迭代过程中自身达到的最优值Xpb和整个群体所到达过的最优值Xgb来不断修正自己位置和速度,从而形成群体寻优的进化。在t+1次迭代时,粒子i根据下列规则来更新自己的速度和位置:
Vi(t+1)=wVi(t)+c1r1(Xpb-Xi(t))+c2r2(Xgb-Xi(t))        (9)
Xi(t+1)=Xi(t)+Vi(t+1)                (10)
式中Xi(t)表示粒子第t次迭代时所处的位置,相应的飞行速度表示为Vi(t)。式10中w表示粒子的惯性权重,w增加算法具有较强的全局搜索能力,减少则算法倾向于局部搜索。常用的做法是w初始值取0.9,随着迭代次数的增加线性递减至0.4,此方法可以有效进行全局和局部搜索获得更高精度的解;c1、c2为两个学习因子,分别代表粒子像局部最优位置和全局最优位置移动的趋势,r1、r2为两个均匀分布在(0,1)的随机数。
(2)粒子相关参数和操作的重定义:由于PSO算法概念简单,在解决连续域内多目标优化问题获得了成功的应用,但是在解决离散域内的问题时无法达到理想的效果,需要针对问题特性重新定义粒子群中粒子的位置、速度和相关操作。具体如下:
定义1:粒子的位置:在PSO算法中,粒子的位置对应于待解决问题的一个潜在解。设在第t次迭代粒子i的位置为Xi(t)=[xi1(t),xi2(t),...,xin(t)],其中n表示大规模图状结构中的任务总数,其中第j维表示大规模图状数据第j个任务。xij(t)表示第j个数据任务从资源列表中选择的虚拟机编号。
定义2:粒子的速度:粒子群中每个粒子都由一个速度矢量决定其飞行方向和速率大小,相应的飞行速度表示为Vi(t)=[vi1(t),vi2(t),...,vin(t)],其中vij(t)定义为一个二进制变量,如果取值为0,则表示第j个图状数据处理任务需要从云计算环境中重新选择虚拟机执行。
定义3:减法Θ:XiΘXj用于计算两种映射方案的差异性。如果映射方案Xi和Xj在同一维上具有相同的值,则差值的结果为1,否则为0。例如,(6,9,1,3,2,5,7)Θ(7,9,2,3,5,5,7)=(0,1,0,1,0,1,1)。
定义4:加法
Figure BDA00002545100700101
Figure BDA00002545100700102
表示表示粒子更新过程中,通过跟踪自身最优位置和全局最优位置来更新自身的速度。即在粒子的对应维度上以Pi的概率按照Vi各维度的值更新和以Pj的概率按照Vj各维度的值更新,且Pi+Pj的概率总和为1。 0.1 ( 0,1,1,0,1,1,0 ) &CirclePlus; 0.9 ( 1,1,1,1,0,1,1 ) = ( x , 1,1 , x , 1 , x ) 其中x表示此维度的值取0取1并不确定,本例第一维中x表示此维度以0.1的概率取0,以0.9的概率取1,依此类推。
定义5:乘法
Figure BDA00002545100700104
:表示在粒子根据当前速度更新位置。即当前位置Xi按照Vj的策略对当前大规模图状数据处理任务调度策略进行调整。此乘法操作仅针对位置和速度之间的相互操作。此乘法操作仅针对位置和速度之间的相互操作。例如, ( 7,3,2,1,6,5,4 ) &CircleTimes; ( 1,1,0,1,1,1,1 ) = ( 7,3 , x , 1,6,5,4 ) , 表示当前调度方案中第三个大规模图状数据处理任务的调度方案需要调整。
因此,针对大规模图状数据处理任务调度问题,在t+1次迭代计算时,粒子i根据以下规则更新更新自己的速度Vi和位置Xi
V i ( t + 1 ) = P 1 V i ( t ) &CirclePlus; P 2 ( X pb &Theta; X i ( t ) ) &CirclePlus; P 3 ( X gb &Theta; X i ( t ) ) - - - ( 11 )
X i ( t + 1 ) = X i ( t ) &CircleTimes; V i ( t + 1 ) - - - ( 12 )
其中,P1是粒子取当前速度的概率,P2是粒子取局部最优速度的概率,P3是粒子取全局最优的概率,通常P1,P2和P3根据经验值设置为常量,且P1+P2+P3=1,例如设置为P1=0.7,P2=0.2,P3=0.1。
(3)LGPPSO算法描述:LGPPSO算法将每个粒子的位置Xi对应于当前大规模图状数据处理任务的调度策略,将适应度函数式(7)标记为f(X)。其基本思想是根据大规模图状数据处理任务的先后次序初始化粒子群体的位置和速度,使用相关操作更新粒子的位置和速度,最优粒子为适应度函数值最小的粒子。
如图12所示,本发明方法包括以下步骤:
步骤1:读入大规模图状数据处理任务图,按照图状结构任务的层次关系对所述大规模图状数据处理任务图进行遍历,按照层次进行任务序号标记,并计算任务的总数n;
步骤2:读入当前云计算环境的虚拟机的性能和计价模式(在步骤4中计算粒子适应度函数值时用到了);
步骤3:初始化m个粒子的编码以及各个粒子的位置Xi和飞行速度Vi,设最大迭代次数设为T。粒子的个数由用户决定,T的值由用户决定,粒子的位置对应于待解决问题的一个潜在解,粒子的速度指导其在迭代过程中向最优解运动的方向。
步骤4:根据粒子的当前的编码利用下面的适应度函数计算所有粒子的适应度函数值f(Xi):
min &alpha; &CenterDot; T &prime; - T min T max - T min + ( 1 - &alpha; ) &CenterDot; C &prime; - C min C max - C min
其中T’表示当前策略的任务调度长度,C’表示当前策略的资源租赁成本,Tmin和Tmax分别表示当前解集中最小和最大的任务调度长度,Cmin和Cmax分别表示当前解集中最小和最大的资源租赁成本,系数α用以反应调度长度和资源租赁成本之间均衡关系,α∈[0,1]。α值变小将得到资源租赁成本较小但调度长度延长的调度方案;通过迭代式搜索不同的α值构造Pareto最优解集(如前所述,Pareto解集是对于两个目标相互冲突的问题所求得解集的一个定义。);
在上述迭代式搜索的过程中,将当前值和上一次结果进行比较,然后将较小的值作为个体极值Xpb,并选取个体极值中最小的值作为全局极值Xgb
步骤5:根据粒子的适应度函数值f(Xi),利用下式进行速度更新:
V i ( t + 1 ) = P 1 V i ( t ) &CirclePlus; P 2 ( X pb &Theta; X i ( t ) ) &CirclePlus; P 3 ( X gb &Theta; X i ( t ) )
其中,t表示迭代次数,Xi(t)表示粒子第t次迭代时所处的位置,Vi(t)为对应第t次迭代时所处的位置的飞行速度,P1是粒子取当前速度的概率,P2是粒子取局部最优速度的概率,P3是粒子取全局最优的概率。
利用下式进行位置更新,位置更新中随机选取云计算中候选虚拟机列表(用在式(12)中的X(t+1)处):
X i ( t + 1 ) = X i ( t ) &CircleTimes; V i ( t + 1 )
Θ用于计算两种映射方案的差异性,如果映射方案Xi和Xj在同一维上具有相同的值,则差值的结果为1,否则为0;
Figure BDA00002545100700123
用于粒子更新过程中,通过跟踪自身最优位置和全局最优位置来更新自身的速度,即在粒子的对应维度上以Pi的概率按照Vi各维度的值更新和以Pj的概率按照Vj各维度的值更新;
Figure BDA00002545100700124
用于粒子根据当前速度更新位置,即当前位置Xi按照Vj的策略对当前大规模图状数据处理任务调度策略进行调整;
步骤6:对每个粒子,将其适应度函数值f(Xi)与步骤4得到的个体极值Xpb进行比较,然后将两者中较小的值作为新的个体极值;将其适应度函数值f(Xi)与步骤4得到的全局极值Xgb进行比较,然后将两者中较小的值作为新的全局极值,则更新当前的全局极值;
步骤7:判断是否达到最大迭代次数T,如果是,则停止计算,转入步骤8;如果否,则返回步骤5(也就是说对步骤5至步骤7进行了T次迭代);
步骤8:输出大规模图状数据处理任务调度方案。所述调度方案就是根据步骤一生成的任务编号,得到的每一个任务调度到哪一台虚拟机上进行执行
与文献(H.Topcuoglu,S.Hariri,and M.Wu,″Performance-effective andlow-complexity task scheduling for heterogeneous computing,″Parallel andDistributed Systems,IEEE Transactions on,13(3)pp.260-274.2002)和文献(Jian Li,Sen Su,Xiang Cheng,Qingjia Huang,Zhongbao Zhang,″Cost-Conscious Schedulingfor Large Graph Processing in the Cloud,″In Processings of the 13th InternationalConference on High Performance Computing and Communications,Banff,Canada,Sep.2-4,pp808-813,2011)提出的启发式大规模图状数据处理任务调度算法相比,本发明方法极大地降低了云计算环境下大规模图状数据处理任务的调度长度,并且此方法同时降低处理图状数据的资源租赁成本。此外,由于本发明基于元启发式优化技术(体现在步骤5和步骤6),从而允许使用者在算法的求解质量和算法的时间复杂性进行交换。
为了更好地说明LGPPSO的上述优点,本文将LGPPSO与文献(H.Topcuoglu,S.Hariri,and M.Wu,″Performance-effective and low-complexity task scheduling forheterogeneous computing,″Parallel and Distributed Systems,IEEE Transactions on,13(3)pp.260-274.2002)中的HEFT算法和文献(Jian Li,Sen Su,Xiang Cheng,Qingjia Huang,Zhongbao Zhang,″Cost-Conscious Scheduling for Large GraphProcessing in the Cloud,″In Processings of the 13th International Conference onHigh Performance Computing and Communications,Banff,Canada,Sep.2-4,pp808-813,2011)中的CCSH算法从大规模图状数据处理任务的调度长度(式1)和资源租赁成本(式2)两方面进行了比较。
实验的设置如下:云计算仿真实验环境设置为具有100个异构虚拟机和100Mb/s两两连接的通信网络。虚拟机的计算能力服从4.0GHz-1.33GHz的均匀分布。虚拟机基线计价为0.5元/计算单元。能所选用的测试数据为:随机生成图和高斯消去法图模型。所有图中节点的计算负载随机在区间200-1000生成。传输与计算负载比(Communication to Computation ratios,CCR)取0.1,0.3,0.5,1,5进行实验测试。选用DAG Generator随机生成异构的大规模图状任务。真实应用图选用高斯消去图模型,其在图像聚类分析和网络拓扑结构分析上有广泛应用,高斯消去法对于5维矩阵的处理可以抽象为如图1所示的模型。式(11)中的P1,P2和P3分别被设置为0.7,0.2和0.1。
下面通过分析实验数据来说明LGPPSO的大规模图状数据处理任务调度性能。
图2和图3表明,与HEFT相比,针对随机生成大规模图状数据,本发明方法(LGPPSO)显著降低了大规模图状数据的调度长度。在随机200个任务情况下,调度长度平均降低了约8.3%。在随机400个任务情况下,调度长度平均降低了约9.7%。图4和图5表明,本发明方法同样适用于真实图状结构应用。在高斯100个节点的情况下,调度长度平均降低14.6%。在高斯400个节点的情况下,调度长度平均降低16.9%。主要原因在HEFT调度所求得的调度长度不一定是最优解,而本发明方法可以获得近似最优解,从而可明显地降低调度长度,提高性能。
文献(Jian Li,Sen Su,Xiang Cheng,Qingjia Huang,Zhongbao Zhang,″Cost-Conscious Scheduling for Large Graph Processing in the Cloud,″InProcessings of the 13th International Conference on High Performance Computingand Communications,Banff,Canada,Sep.2-4,pp808-813,2011)设计的CCSH算法和HEFT算法相比,能够节省大约40%左右的资源租赁成本,但是确延长10%左右的调度长度。而本发明利用帕勒托最优理论设计的适应度函数值,有效地解决了此问题。图6和图7表明,与CCSH相比,针对随机生成大规模图状数据,在CCR=1情况下,本发明方法降低了调度长度和资源租赁成本。在随机200和400个任务情况下,调度长度分别平均降低了约11.6%和7.4%,资源租赁成本平均降低了约1.4%和0.6%。图8和图9表明,本发明方法同样适用于真实图状结构应用。在高斯100个和200个节点的情况下,调度长度分别平均降低8.5%和9.3%,资源租赁成本平均降低约0.73%和0.91%。
本发明可以应用于当前支持虚拟机租用的云计算环境中,通过设计大规模图状数据处理任务的调度算法降低调度长度和资源租赁成本,利用本发明方法得到数据处理任务执行时间如表1所示、数据处理任务资源租赁成本如表2所示。数据处理任务的执行时间是输入条件,每一个虚拟机上执行的时间不同,本发明方法利用这一已知条件,得到最后的结果是某一个任务放在哪一台虚拟机上进行执行,。
Task VM1 VM2 VM3
0 9.26 11.01 13.79
1 9.2 10.5 13.9
2 10.05 12.12 13.15
3 9.54 10.41 15.4
4 10.33 11.51 14.08
5 9.36 11.1 14.03
6 9.39 10.73 13.88
表1
Figure BDA00002545100700151
表2
本发明方法以大规模图状数据结构和云计算环境下虚拟机的资源能力和计价模式作为输入,以近似最优的大规模图状数据处理任务调度方案为输出结果。图10描绘了大规模图状数据处理任务调度实例。图11描绘了采用本发明方法针对图10的任务模型,获得的一个近似最优的大规模图状数据处理任务调度方案。
其中,对于图状数据,节点的值表示计算负载,边的值表示传输负载;对于云计算环境中的虚拟机,不同的虚拟机有不同的性能和计价模式。所获得的大规模图状数据处理任务的调度方案为为{(T0,T1,T4)→(VM1),(T2,T5,T6)→(VM2),(T3)→(VM3)}。
上述技术方案只是本发明的一种实施方式,对于本领域内的技术人员而言,在本发明公开了应用方法和原理的基础上,很容易做出各种类型的改进或变形,而不仅限于本发明上述具体实施方式所描述的方法,因此前面描述的方式只是优选的,而并不具有限制性的意义。

Claims (3)

1.一种云环境下收益驱动的大规模处理任务调度方法,其特征在于:所述方法包括以下步骤:
步骤1:读入大规模图状数据处理任务图,按照图状结构任务的层次关系对所述大规模图状数据处理任务图进行遍历,按照层次进行任务序号标记,并计算任务的总数n;
步骤2:读入当前云计算环境的虚拟机的性能和计价模式;
步骤3:初始化m个粒子的编码以及各个粒子的位置Xi和飞行速度Vi,设最大迭代次数设为T;
步骤4:根据粒子的当前的编码利用下面的适应度函数计算所有粒子的适应度函数值f(Xi):
min &alpha; &CenterDot; T &prime; - T min T max - T min + ( 1 - &alpha; ) &CenterDot; C &prime; - C min C max - C min
其中T’表示当前策略的任务调度长度,C’表示当前策略的资源租赁成本,Tmin和Tmax分别表示当前解集中最小和最大的任务调度长度,Cmin和Cmax分别表示当前解集中最小和最大的资源租赁成本,系数α用以反应调度长度和资源租赁成本之间均衡关系,α∈[0,1];α值变小将得到资源租赁成本较小但调度长度延长的调度方案;
通过迭代式搜索不同的α值构造Pareto最优解集;
在上述迭代过程中,将当前值和上一次结果进行比较获得个体极值Xpb,选取个体极值中最小的作为全局极值Xgb
步骤5:根据粒子的适应度函数值f(Xi)进行速度更新和位置更新;
步骤6:对每个粒子,将其适应度函数值f(Xi)与步骤4得到的个体极值Xpb进行比较,然后将两者中较小的值作为新的个体极值;将其适应度函数值f(Xi)与步骤4得到的全局极值Xgb进行比较,然后将两者中较小的值作为新的全局极值,则更新当前的全局极值;
步骤7:判断是否达到最大迭代次数T,如果是,则停止计算,转入步骤8;如果否,则返回步骤5;
步骤8:输出大规模图状数据处理任务调度方案。
2.根据权利要求1所述的云环境下收益驱动的大规模处理任务调度方法,其特征在于:所述步骤3中所述粒子的位置对应于待解决问题的一个潜在解,粒子的速度指导其在迭代过程中向最优解运动的方向。
3.根据权利要求1所述的云环境下收益驱动的大规模处理任务调度方法,其特征在于:所述步骤5具体如下:
利用下式进行速度更新:
V i ( t + 1 ) = P 1 V i ( t ) &CirclePlus; P 2 ( X pb &Theta; X i ( t ) ) &CirclePlus; P 3 ( X gb &Theta; X i ( t ) )
其中,t表示迭代次数,Xi(t)表示粒子第t次迭代时所处的位置,Vi(t)为对应第t次迭代时所处的位置的飞行速度,P1是粒子取当前速度的概率,P2是粒子取局部最优速度的概率,P3是粒子取全局最优速度的概率,且P1+P2+P3=1;
利用下式进行位置更新,位置更新中随机选取云计算中候选虚拟机列表:
X i ( t + 1 ) = X i ( t ) &CircleTimes; V i ( t + 1 )
其中,Θ用于计算两种映射方案的差异性,如果映射方案Xi和Xj在同一维上具有相同的值,则差值的结果为1,否则为0;
Figure FDA00002545100600023
用于粒子更新过程中,通过跟踪自身最优位置和全局最优位置来更新自身的速度,即在粒子的对应维度上以Pi的概率按照Vi各维度的值更新和以Pj的概率按照Vj各维度的值更新;
Figure FDA00002545100600031
用于粒子根据当前速度更新位置,即当前位置Xi按照Vj的策略对当前大规模图状数据处理任务调度策略进行调整。
CN2012105258595A 2012-12-07 2012-12-07 一种云环境下收益驱动的大规模处理任务调度方法 Pending CN103019822A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2012105258595A CN103019822A (zh) 2012-12-07 2012-12-07 一种云环境下收益驱动的大规模处理任务调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2012105258595A CN103019822A (zh) 2012-12-07 2012-12-07 一种云环境下收益驱动的大规模处理任务调度方法

Publications (1)

Publication Number Publication Date
CN103019822A true CN103019822A (zh) 2013-04-03

Family

ID=47968453

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012105258595A Pending CN103019822A (zh) 2012-12-07 2012-12-07 一种云环境下收益驱动的大规模处理任务调度方法

Country Status (1)

Country Link
CN (1) CN103019822A (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103336713A (zh) * 2013-06-19 2013-10-02 西北工业大学 一种基于任务复制与聚簇的并行任务分配方法
CN103679564A (zh) * 2013-12-26 2014-03-26 国家电网公司 一种用于配电网拓扑分析分布式计算的任务分配方法
CN103997515A (zh) * 2014-04-25 2014-08-20 西安电子科技大学昆山创新研究院 一种分布式云中计算中心选择方法及其应用
CN104239141A (zh) * 2014-09-05 2014-12-24 北京邮电大学 数据中心中基于工作流关键路径的任务优化调度方法
CN104918264A (zh) * 2015-06-24 2015-09-16 华南理工大学 基于并行分解型进化的无线传感器网络布局方法及其系统
CN105338098A (zh) * 2015-11-18 2016-02-17 中国科学院计算机网络信息中心 一种基于改进pso算法的云计算负载均衡方法
CN105740059A (zh) * 2014-12-11 2016-07-06 中国科学院声学研究所 一种面向可分割任务的粒子群调度方法
CN106101196A (zh) * 2016-06-01 2016-11-09 上海上大海润信息系统有限公司 一种基于概率模型的云渲染平台任务调度系统及方法
CN106371902A (zh) * 2015-07-23 2017-02-01 施耐德电气It公司 基于备份运行时间约束将虚拟机放置到服务器上的系统
CN106371908A (zh) * 2016-08-31 2017-02-01 武汉鸿瑞达信息技术有限公司 基于粒子群算法的图像视频过滤任务分配的优化方法
CN106775932A (zh) * 2016-11-29 2017-05-31 中国人民解放军国防科学技术大学 一种云计算系统中随机事件触发的实时工作流调度方法
CN106845642A (zh) * 2017-01-22 2017-06-13 北京科技大学 一种带约束云工作流调度的自适应多目标进化方法
CN108053119A (zh) * 2017-12-15 2018-05-18 兰州理工大学 一种求解零等待流水车间调度问题的改进粒子群优化算法
CN108536517A (zh) * 2018-03-20 2018-09-14 深圳大学 云计算环境的部署方法、装置、设备及存储介质
CN108737462A (zh) * 2017-04-17 2018-11-02 华东师范大学 一种基于图论的云计算数据中心任务调度方法
CN109067834A (zh) * 2018-06-29 2018-12-21 南京邮电大学 基于振荡式惯性权重的离散粒子群调度算法
WO2020215659A1 (zh) * 2019-04-23 2020-10-29 南京航空航天大学 一种电液智能转向系统性能监测器及性能优化方法
CN113138848A (zh) * 2020-01-20 2021-07-20 中移(上海)信息通信科技有限公司 获取资源分配策略的方法、装置、设备及存储介质
WO2022198754A1 (zh) * 2021-03-24 2022-09-29 苏州大学 一种大规模云服务流程的优化方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
于戈登: "云计算环境下的大规模图数据处理技术", 《计算机学报》 *
公茂果等: "进化多目标优化算法研究", 《软件学报》 *
左利云等: "云计算中调度问题研究综述", 《计算机应用研究》 *
李健等: "云计算环境下基于粒子群优化的大规模图处理任务调度算法[J/OL]", 《西安交通大学学报》 *

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103336713A (zh) * 2013-06-19 2013-10-02 西北工业大学 一种基于任务复制与聚簇的并行任务分配方法
CN103679564A (zh) * 2013-12-26 2014-03-26 国家电网公司 一种用于配电网拓扑分析分布式计算的任务分配方法
CN103679564B (zh) * 2013-12-26 2017-01-25 国家电网公司 一种用于配电网拓扑分析分布式计算的任务分配方法
CN103997515A (zh) * 2014-04-25 2014-08-20 西安电子科技大学昆山创新研究院 一种分布式云中计算中心选择方法及其应用
CN103997515B (zh) * 2014-04-25 2018-02-02 西安电子科技大学昆山创新研究院 一种分布式云中计算中心选择方法及其应用
CN104239141A (zh) * 2014-09-05 2014-12-24 北京邮电大学 数据中心中基于工作流关键路径的任务优化调度方法
CN104239141B (zh) * 2014-09-05 2017-07-28 北京邮电大学 数据中心中基于工作流关键路径的任务优化调度方法
CN105740059A (zh) * 2014-12-11 2016-07-06 中国科学院声学研究所 一种面向可分割任务的粒子群调度方法
CN105740059B (zh) * 2014-12-11 2018-12-04 中国科学院声学研究所 一种面向可分割任务的粒子群调度方法
CN104918264B (zh) * 2015-06-24 2019-03-05 华南理工大学 基于并行分解型进化的无线传感器网络布局方法及其系统
CN104918264A (zh) * 2015-06-24 2015-09-16 华南理工大学 基于并行分解型进化的无线传感器网络布局方法及其系统
CN106371902A (zh) * 2015-07-23 2017-02-01 施耐德电气It公司 基于备份运行时间约束将虚拟机放置到服务器上的系统
CN105338098A (zh) * 2015-11-18 2016-02-17 中国科学院计算机网络信息中心 一种基于改进pso算法的云计算负载均衡方法
CN106101196A (zh) * 2016-06-01 2016-11-09 上海上大海润信息系统有限公司 一种基于概率模型的云渲染平台任务调度系统及方法
CN106101196B (zh) * 2016-06-01 2019-04-30 上海上大海润信息系统有限公司 一种基于概率模型的云渲染平台任务调度系统
CN106371908A (zh) * 2016-08-31 2017-02-01 武汉鸿瑞达信息技术有限公司 基于粒子群算法的图像视频过滤任务分配的优化方法
CN106775932B (zh) * 2016-11-29 2020-01-17 中国人民解放军国防科学技术大学 一种云计算系统中随机事件触发的实时工作流调度方法
CN106775932A (zh) * 2016-11-29 2017-05-31 中国人民解放军国防科学技术大学 一种云计算系统中随机事件触发的实时工作流调度方法
CN106845642B (zh) * 2017-01-22 2019-03-29 北京科技大学 一种带约束云工作流调度的自适应多目标进化方法
CN106845642A (zh) * 2017-01-22 2017-06-13 北京科技大学 一种带约束云工作流调度的自适应多目标进化方法
CN108737462A (zh) * 2017-04-17 2018-11-02 华东师范大学 一种基于图论的云计算数据中心任务调度方法
CN108053119A (zh) * 2017-12-15 2018-05-18 兰州理工大学 一种求解零等待流水车间调度问题的改进粒子群优化算法
CN108053119B (zh) * 2017-12-15 2021-07-30 兰州理工大学 一种求解零等待流水车间调度问题的改进粒子群优化方法
CN108536517A (zh) * 2018-03-20 2018-09-14 深圳大学 云计算环境的部署方法、装置、设备及存储介质
CN109067834A (zh) * 2018-06-29 2018-12-21 南京邮电大学 基于振荡式惯性权重的离散粒子群调度算法
CN109067834B (zh) * 2018-06-29 2020-12-15 南京邮电大学 基于振荡式惯性权重的离散粒子群调度算法
WO2020215659A1 (zh) * 2019-04-23 2020-10-29 南京航空航天大学 一种电液智能转向系统性能监测器及性能优化方法
CN113138848A (zh) * 2020-01-20 2021-07-20 中移(上海)信息通信科技有限公司 获取资源分配策略的方法、装置、设备及存储介质
WO2022198754A1 (zh) * 2021-03-24 2022-09-29 苏州大学 一种大规模云服务流程的优化方法

Similar Documents

Publication Publication Date Title
CN103019822A (zh) 一种云环境下收益驱动的大规模处理任务调度方法
De Toro et al. PSFGA: a parallel genetic algorithm for multiobjective optimization
CN109189094B (zh) 一种多有人机与多无人机混合编队资源调度方法
Liao et al. Long-term generation scheduling of hydropower system using multi-core parallelization of particle swarm optimization
CN103885839A (zh) 基于多水平划分法和赋权有向超图的云计算任务调度方法
Gabi et al. Cloud scalable multi-objective task scheduling algorithm for cloud computing using cat swarm optimization and simulated annealing
Wu et al. Adaptive DAG tasks scheduling with deep reinforcement learning
CN114327811A (zh) 一种任务调度方法、装置、设备及可读存储介质
Sakharov et al. Adaptive load balancing in the modified mind evolutionary computation algorithm
Guo et al. Multi-objective optimization for data placement strategy in cloud computing
Patil et al. Graph partitioning using heuristic Kernighan-Lin algorithm for parallel computing
Yadav et al. A Two-Step Technique for Effective Scheduling in Cloud–Fog Computing Paradigm
Helmy et al. Independent Job Scheduling by Fuzzy C-Mean Clustering and an Ant Optimization Algorithm in a Computation Grid.
Wu et al. Historical information-based differential evolution for dynamic optimization problem
CN110297694A (zh) 一种基于资源分类和任务优先级的启发式云计算调度方法
Gupta et al. Transfer time-aware workflow scheduling for multi-cloud environment
Sellami et al. Energy efficient workflow scheduling of cloud services using chaotic particle swarm optimization
Singh et al. Hybrid meta-heuristic approach for workflow scheduling in IaaS cloud
Liu et al. Task scheduling model of edge computing for AI flow computing in Internet of Things
Srinivasan et al. Neural approach for resource selection with PSO for grid scheduling
CN108322550A (zh) 一种基于离子运动算法的云计算资源调度方法
Melnik et al. Intellectual Execution Scheme of Iterative Computational Models based on Symbiotic Interaction with Application for Urban Mobility Modelling.
Srinivasan et al. Optimizing grid scheduling with particle swarm optimization
Sahoo et al. Advancements in quantum-PSO and its application in sustainable development
Li et al. Multifactorial brain storm optimization algorithm based on direct search transfer mechanism and concave lens imaging learning strategy

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130403