CN102736955B - 基于可靠性和非合作博弈的计算网格任务调度方法 - Google Patents

基于可靠性和非合作博弈的计算网格任务调度方法 Download PDF

Info

Publication number
CN102736955B
CN102736955B CN201210158071.5A CN201210158071A CN102736955B CN 102736955 B CN102736955 B CN 102736955B CN 201210158071 A CN201210158071 A CN 201210158071A CN 102736955 B CN102736955 B CN 102736955B
Authority
CN
China
Prior art keywords
task
scheduler
computing node
grid computing
grid
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.)
Expired - Fee Related
Application number
CN201210158071.5A
Other languages
English (en)
Other versions
CN102736955A (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.)
Beijing University of Technology
Original Assignee
Beijing University 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 Beijing University of Technology filed Critical Beijing University of Technology
Priority to CN201210158071.5A priority Critical patent/CN102736955B/zh
Publication of CN102736955A publication Critical patent/CN102736955A/zh
Application granted granted Critical
Publication of CN102736955B publication Critical patent/CN102736955B/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

基于可靠性和非合作博弈的计算网格任务调度方法涉及到网格计算领域,尤其是网格任务调度领域,其特征在于以可靠性,即系统中各网格计算节点稳定状态下的提供能力目标,以各用户的任务在网格计算节点上的分片策略为博弈策略,确定网格系统中各调度器的任务分片方案,达到优化网格系统任务调度的目的。

Description

基于可靠性和非合作博弈的计算网格任务调度方法
技术领域
本发明涉及网格计算领域,特别是网格任务调度领域的一种调度方法。
背景技术
任务调度是网格计算的核心研究内容。计算网格作为一种特殊的网格形式,它的资源主要是具有高性能计算能力的网格计算节点和网络资源,其任务调度研究的是如何把用户的计算密集型的任务通过网络资源合理分配到具有高性能计算能力的网格计算节点上执行,以使得任务得到均衡的分配或使得每个任务的执行代价降到最低或使得系统总体的性能得到最优。
近年来,服务质量感知的计算网格任务调度问题成为计算网格任务调度的一个新的研究方向,网格用户不仅要求网格系统满足任务的功能性需求,而且关注任务的服务质量,如He等首先把服务质量信息嵌入到Min-min调度算法中,对服务质量感知的网格任务调度问题做了开创性工作;Subrata等以任务处理时间作为目标,给出了一种基于非合作博弈的计算网格任务均衡调度模型,并把基于任务处理时间的计算网格作业分配问题建模为一个合作博弈,给出了纳什讨价还价解的结构。以上网格任务调度研究工作,采用了不同的思路,利用了不同的数学工具,取得了较好的研究成果,但存在一个共同点:任务调度以处理时间为依据,把任务分片在网格计算节点上的处理时间或任务的总处理时间作为优化调度的目标,都没有考虑可靠性这一要素在网格任务调度中所起的作用。
发明内容
不同于以往任务调度以时间为依据,把任务分片在网格计算节点上的处理时间或任务的总处理时间作为优化目标的调度方法,本发明的目的是将可靠性,即计算能力提供的稳定性作为网格任务调度考虑的主要因素,以各用户的任务在网格计算节点上稳定状态的提供能力为目标,以各用户的任务在网格计算节点上的分片策略为博弈策略,确定网格系统中各个调度器的任务分片方案。
本发明的特征在于含有以下步骤:
步骤(1),构造一个基于可靠性和非合作博弈的计算网格系统:
所述基于可靠性和非合作博弈的计算网格系统由用户、面向各用户的各调度器i以及面向各调度器i的网格计算节点j以及调度方案计算器组成,其中i=1,2,..,n,n为所述系统中所有调度器的数目,j=1,2,...,m,m为所述系统中所有网格计算节点的数目;
在忽略调度器内部处理代价、任务传输时间下,所述调度器在进行任务分片时的可靠性条件如下:
各个调度器从各用户接受任务,各个调度器发出任务的平均速率λi的加和应该小于所述系统所有网格计算节点对任务的平均执行速率uj的加和,速率的单位是单位时间内的任务数,下同:
&Sigma; i = 1 n &lambda; i < &Sigma; j = 1 m u j - - - ( 1 )
各个所述调度器发到第j个所述网格计算节点上任务分片的速率的加和应该小于第j个所述网格计算节点对所述任务分片的平均执行速率uj,称为计算能力:
&Sigma; i = 1 n &lambda; i a ij < u j - - - ( 2 )
步骤(2),网格计算节点j的稳定状态的提供能力Aj,0<Aj<1:
Aj=1-δjβ1j(1+u′jγj)     (3)
其中Aj针对的是网格计算节点j的提供能力,其中j=1,2,...,m,δj为网格计算节点j的平均任务到达速率,到达网格计算节点j的任务满足以δj为均值的泊松分布,β1j为网格计算节点j任务服务时间的均值,u′j为网格计算节点j忙时失败的平均速率,γj为网格计算节点j的重试时间的均值;
根据网格计算节点的数量,调度器i将用户的请求分解为所述m个任务分片,aij为第i个调度器的任务分配到第j个网格计算节点的比例,满足以下的约束:
aij≥0且 &Sigma; j = 1 m a ij = 1 - - - ( 4 )
步骤(3),调度方案计算器按下式计算所述所有调度器将任务分片到所述网格计算节点j上后,第j个网格计算节点的提供能力:
A j = 1 - &Sigma; i = 1 n ( &lambda; i a ij ) &beta; 1 j ( 1 + u j &prime; &gamma; j ) - - - ( 5 )
其中,j=1,2,..,n;
步骤(4),调度方案计算器以该系统中所述网格计算节点提供的计算能力倒数之和作为目标函数确定任务分片方案:
D = &Sigma; j = 1 m 1 1 - &Sigma; i = 1 n ( &lambda; i a ij ) &beta; 1 j ( 1 + u j &prime; &gamma; j ) - - - ( 6 )
步骤(5),调度方案计算器按照以下步骤计算所述调度器的任务分片方案:
为了便于算法步骤的说明,定义uji为网格计算节点j为调度器i提供的计算能力,代入(6)式可得式(7):
D = &Sigma; j = 1 m 1 1 - ( &lambda; i a ij + u j - u ji ) &beta; 1 j ( 1 + u j &prime; &gamma; j ) - - - ( 7 )
步骤(5.1),系统参数初始化:
设网格系统中调度器的个数为n,网格计算节点个数为m,调度器i发出任务的平均速率为λi(0),网格计算节点j的任务平均执行速率uj(0),其中i=1,2,...,n,j=1,2,...,m;系统中各个调度器和网格计算节点将上述初始值发送给调度方案计算器,以下步骤均由调度方案计算器完成;将调度器i的任务分片方案初始化为: a i ( 0 ) = { a i 1 ( 0 ) , a i 2 ( 0 ) , &CenterDot; &CenterDot; &CenterDot; , a im ( 0 ) } = { 1 m , 1 m , &CenterDot; &CenterDot; &CenterDot; , 1 m } , u j &prime; ( 0 ) = u j ( 0 ) 10 , 目标函数值误差精度ε(0)=1;
步骤(5.2),利用步骤(4)中的公式计算初始条件下的目标函数值latterD;
步骤(5.3),判断ε是否满足指定的误差要求ε≤10-6,不满足,循环执行以下步骤(5.4)~(5.15),否则得到调度方案a,结束循环;
步骤(5.4),令formerD=latterD,formerD用于暂存前一次调度方案下的目标函数值;
步骤(5.5),根据程序中的初值,利用公式求取uji
步骤(5.6),利用式 &theta; ij = ( 1 + u j &prime; &gamma; j ) &beta; 1 j &lambda; i ( 1 - ( 1 + u j &prime; &gamma; j ) &beta; 1 j ( u j - u ji ) ) 2 求取θij,并将θij从小到大排序,排序的结果保存到变量index中;
步骤(5.7),对i从1到n,依次执行步骤(5.8)~(5.14):
步骤(5.8),令di从m到1,依次执行步骤(5.9)~(5.11):
步骤(5.9),利用下述式(8)求取α;
步骤(5.10),利用下述式(9)求取j从1到di的ai,index(i,j),j从(di+1)到m的剩余网格节点的ai,index(i,j)赋值为0,其中di≤m;
步骤(5.11),若存在aij不满足0≤aij≤1则di减1,返回到步骤(5.9),否则往下执行;
步骤(5.12),利用求得的aij修改uji
步骤(5.13),利用 &theta; ij = ( 1 + u j &prime; &gamma; j ) &beta; 1 j &lambda; i ( 1 - ( 1 + u j &prime; &gamma; j ) &beta; 1 j ( u j - u ji ) ) 2 求取θij,并对θij从小到大排序,排序的结果保存到变量index中;
步骤(5.14),令i=i+1,返回到步骤(5.8),其中i≤n;
步骤(5.15),利用公式求得a修改后的目标函数值latterD,ε=|formerD-latterD|,返回到步骤(5.3);
上述算法中的式(8)为:
&alpha; = ( &Sigma; j = 1 di 1 W index ( i , j ) &Sigma; j = 1 di 1 - W index ( i , j ) ( &mu; index ( i , j ) - &mu; index ( i , j ) , i ) W index ( i , j ) &lambda; i - 1 ) 2 1 &lambda; i - - - ( 8 )
其中,Windex(i,j)=(1+μ′index(i,j)γindex(i,j)1,inedex(i,j));
式中α为分配临界因子,是调度器i判断是否向某个网格计算节点分配任务的界限值,index(i,j)代表第i个调度器向系统中网格计算节点分配任务时,以θij对网格计算节点从小到大排序后排在第j个位置的节点;
上述算法中的式(9)为:
a ij = 1 - ( 1 + u j &prime; &gamma; j ) &beta; 1 j ( u j - u ji ) - ( 1 + u j &prime; &gamma; j ) &beta; 1 j &lambda; i &alpha; ( 1 + u j &prime; &gamma; j ) &beta; 1 j &lambda; i - - - ( 9 )
其中式(9)中的j=index(i,j),为在该调度算法中用于调度器i确定任务分向第index(i,j)个网格计算节点的比例;
上述公式θij为任务可分配调节因子,是第i个调度器判断是否向网格计算节点j分配任务的依据,若θij>α,调度器i不会向网格计算节点j分配任务,即aij=0。
本发明是一种计算网格系统中网格任务调度方法,与现有的技术相比具有以下优势:
不同于以往将任务执行时间作为确定任务调度方法的主要因素,本发明从可靠性角度出发,建立以网格计算节点提供能力为目标函数的非合作博弈模型,得到新的网格任务调度方法。从实验结果来看,具有较优的效果。
附图说明
图1本发明中计算网格任务调度的系统模型简略图。
图2系统用户任务请求和调度器任务分发详细图。
图3获取调度方法的算法流程图。
图4系统中网格计算节点有较强节点时算法一、二目标函数值比较图
图5系统中网格计算节点计算能力均衡时算法一、二目标函数值比较图
图6系统负载的影响实验图
图7调度器数目变化对系统提供能力影响的比较图
图8网格计算节点数目变化对系统提供能力影响的比较图
具体实施方式
以下结合具体实例对本发明作进一步说明。
本发明中计算机为奔腾2以上CPU,10G以上硬盘,具有一般计算能力的普通台式微机。
本发明首先是在计算网格系统模型和网格计算节点的可靠性分析模型的基础上,建立网格计算节点上稳定状态的提供能力的数学模型;其次以网格任务在网格计算节点上的稳定状态的提供能力为目标,建立网格任务调度的非合作博弈模型,求出纳什均衡解,以此为基础得到各调度器的任务分片方案,调度器得到一个新的任务后就可以依据此调度方案将任务分配到网格计算节点上执行。
本发明的计算网格任务调度系统模型简略图如附图1所示。图1中调度方案计算器通过调度器和网格计算节点传递的信息依据该发明中的调度算法计算出调度器的任务分片方案,并将其传送给相应的调度器,调度器依据该任务分片方案将任务分发给相应的网格计算节点执行,由此构成整个网格系统。图2是图1中多个用户向某个调度器发送任务请求及调度器依据该发明中的任务分片方案分发任务详细图。假定计算网格任务调度的系统模型中有l个用户、n个调度器、m个执行任务分片的网格计算节点,第i个调度器将用户的请求分解为m个任务分片。在该图中,各个调度器作为博弈的参与者,共享网格中的网格计算节点,彼此独立。每个调度器i总是期望其任务对应于网格计算节点上的稳定状态的提供能力最大,即期望各个任务分片在对应网格计算节点上稳定状态的提供能力的倒数之和最小,彼此竞争,构成非合作博弈。
本发明基于以下两点假设,根据网格系统的特点,该两点假设是合理的:
1)目前,e-Science是网格的主要应用领域之一,任务一次运行的代价通常较大(如执行时间较长),此外网格覆盖的地理范围可能较大,任务分片在网络上的传输时间较长,所以可忽略调度器的内部处理代价,假设任务分片在网格计算节点上的执行代价是任务执行代价的关键所在。
2)调度器对任务进行分解以后得到任务分片,假定网格中的节点都具备任务分片的执行能力,因为在一个网格的范围内,节点的配置是可控的。
本发明中的各用户:各自产生对调度器的请求,各个用户之间彼此独立的产生任务,用户k产生任务的平均速率为βk,且服从泊松分布;所有用户产生的任务被调度器分解为任务分片后发送到网格计算节点上执行。
本发明中的调度器:从各用户接受任务,依据任务分片方案把任务分解为任务分片,然后把任务交给网格中的节点——网格计算节点执行,基于前面的假设1),对任务进行分解的时间忽略不计。
本发明中的任务分片:根据网格计算节点的数量,调度器i将用户的请求分发到所述系统m个网格计算节点上执行,aij为第i个调度器的任务分配到第j个网格计算节点的比例,满足以下的约束:
aij≥0且 &Sigma; j = 1 m a ij = 1
本发明中的网格计算节点:任务分片的执行者,基于前面的假设2),网格计算节点具备对一般性任务分片的执行能力;任务分片在网格计算节点j上的平均执行速率为uj,执行时间可以服从任意分布,每一个网格计算节点可以被看作一个具有一般重试时间和服务器崩溃的M/G/1排队系统。
本发明中设λi为调度器i发出任务的平均速率,满足式(1)和式(2)两个限制条件。式(1)的含义是各个调度器发出任务的平均速率的加和应该小于所述系统所有网格计算节点对任务的平均执行速率的加和。式(2)的含义是各个调度器到达网格计算节点j的任务分片的速率的加和应该小于网格计算节点j的计算能力,即其平均任务执行速率。式(1)和式(2)是显然的。
本发明中调度器i(i=1,2,...,n)的实际任务到达速率λi通过各个调度器的相对任务到达速率φi(i=1,2,...,n)求得,具体按照式(10)计算,其中ρ为负载系数。
&lambda; i = &phi; i &CenterDot; &rho; &CenterDot; &Sigma; j = 1 m u j - - - ( 10 )
本发明的特征在于得到各调度器任务分片方案的方法和过程,其具体步骤如下:
1.选择问题的模型建立
各个调度器共享网格中的计算节点,彼此独立,总是期望任务在网格计算节点上的稳定状态的提供能力最大,彼此竞争,可以构成非合作博弈,在非合作博弈中各个调度器作为博弈的参与者。设调度器i对系统中所有网格计算节点的任务分片方案表示为ai={ai1,ai2,...,aim},其中i=1,2,...,n,aij表示第i个调度器的任务分配到第j个网格计算节点的比例。对于具有一般重试时间和服务器崩溃的M/G/1排队系统,其稳定状态的提供能力计算公式为:
Aj=1-δjβ1j(1+u′jγj)
其中Aj针对的是网格计算节点j(其中j=1,2,...,m)的提供能力,δj为网格计算节点j的平均任务到达速率,到达网格计算节点j的任务满足以δj为均值的泊松分布,β1j为网格计算节点j任务服务时间的均值,u′j为网格计算节点j忙时失败的平均速率,γj为网格计算节点j的重试时间的均值。Aj满足约束0<Aj<1。
各个调度器i(i=1,2,..,n)的任务按分配比例aij分到相应的网格计算节点j后,网格计算节点j上的稳定状态的提供能力如下:
A j = 1 - &Sigma; i = 1 n ( &lambda; i a ij ) &beta; 1 j ( 1 + u j &prime; &gamma; j )
将所有网格计算节点上的稳定状态的提供能力的倒数之和作为博弈的目标函数,即:
D = &Sigma; j = 1 m 1 1 - &Sigma; i = 1 n ( &lambda; i a ij ) &beta; 1 j ( 1 + u j &prime; &gamma; j )
2.调度方法求解
基于可靠性和非合作博弈的计算网格任务调度方法具体求解算法如下:
⑴统参数初始化。设网格系统中调度器的数目为n,网格计算节点数目为m,调度器i发出任务的平均速率为λi(0),网格计算节点j的任务平均执行速率uj(0),其中i=1,2,...,n,j=1,2,...,m;系统中各个调度器和网格计算节点将上述初始值发送给调度方案计算器,以下步骤均由调度方案计算器完成;将调度器i的任务分片策略初始化为: a i ( 0 ) = { a i 1 ( 0 ) , a i 2 ( 0 ) , &CenterDot; &CenterDot; &CenterDot; , a im ( 0 ) } = { 1 m , 1 m , &CenterDot; &CenterDot; &CenterDot; , 1 m } , u j &prime; ( 0 ) = u j ( 0 ) 10 , 目标函数值误差精度ε(0)=1;
⑵根据程序中的初值,利用式求取初始化条件下的目标函数值latterD;
⑶判断ε是否满足指定的误差要求ε≤10-6,不满足,循环执行以下步骤,否则得到调度方案a,结束循环:
(3.1)令formerD=latterD,formerD用于暂存前一次调度方案下的目标函数值;
(3.2)根据程序中的初值,利用式求取uji
(3.3)利用公式 &theta; ij = ( 1 + u j &prime; &gamma; j ) &beta; 1 j &lambda; i ( 1 - ( 1 + u j &prime; &gamma; j ) &beta; 1 j ( u j - u ji ) ) 2 求取θij,并将θij从小到大排序,排序的结果保存到变量index中;
(3.4)对i从1到n,依次执行以下操作
(3.4.1)令di从m到1,依次执行以下操作
(3.4.1.1)利用式(8)求取α;
(3.4.1.2)利用式(9)求取j从1到di的ai,index(i,j),j从(di+1)到m的剩余网格节点的ai,index(i,j)赋值为0,其中di≤m;
(3.4.1.3)若存在aij不满足0≤aij≤1则di减1,返回到(3.4.1.1)继续执行,否则往下执行;
(3.4.2)利用求得的aij修改uji
(3.4.3)利用 &theta; ij = ( 1 + u j &prime; &gamma; j ) &beta; 1 j &lambda; i ( 1 - ( 1 + u j &prime; &gamma; j ) &beta; 1 j ( u j - u ji ) ) 2 求取θij,并对θij从小到大排序,排序的结果保存到变量index中;
(3.4.4)令i=i+1;返回到步骤(3.4.1)继续执行;
(3.5)利用式 D = &Sigma; j = 1 m 1 1 - &Sigma; i = 1 n ( &lambda; i a ij ) &beta; 1 j ( 1 + u j &prime; &gamma; j ) 求得修改a后的目标函数值latterD,ε=|formerD-latterD|,返回到步骤⑶。
本发明中的调度方法,即算法一具有较优的效果,可以通过与均衡调度算法,即算法二进行比较说明,具体如实验一、二,三所示,均衡调度策略按照式(11)对任务进行分解。
a ij = u ji &Sigma; j = 1 m u ji - - - ( 11 )
设网格中每个网格计算节点的平均处理能力和调度器的相对任务到达速率为已知的,调度器的实际任务到达速率按照式(10)计算。
实验一:均衡状态下目标函数值的实验
网格计算节点的计算能力可能均衡,也可能出现部分节点计算能力较强的情况,针对这两种情况,进行两组实验。
在实验一中,令网格系统的负载系数ρ为0.5,调度器数目为10,网格计算节点的数目为15,10个调度器的相对任务到达速率依次为:
φ={0.0035,0.01,0.01,0.01,0.01,0.006,0.005,0.002,0.001,0.001}
第一组是网格计算节点中有部分节点的计算能力较强的实验,设系统中网格计算节点的计算能力依次如下:
u={0.02,0.02,0.02,0.02,0.02,0.02,0.02,0.033,0.033,0.033,0.0231,0.02511,0.0153,0.023,0.025}
在以上初始条件下,分别用算法一和算法二求得系统中各调度器的任务分片方案,然后得到反映系统提供能力的目标函数值,实验结果如下:
应用算法一求得各个网格计算节点提供能力的倒数依次为:
D1={1.0000,1.0000,1.0000,1.0000,1.0000,1.0000,1.00001.1703,1.1703,1.1703,1.0000,1.0209,1.0000,1.0000,1.0186}
应用算法二求得各个网格计算节点提供能力的倒数依次为:
D2={1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459}
附图4为该次实验过程中应用算法一和算法二求得的各网格计算节点提供能力倒数的比较图。
对算法一、二所有网格计算节点提供能力倒数求和,可以得出算法一比算法二小0.1379,说明对比算法二,算法一能够使系统提供更高的计算能力,从而说明算法一更优。
第二组是系统中网格计算节点的计算能力均衡的实验,假定系统中网格计算节点的计算能力依次如下:
u={0.031,0.03,0.029,0.029,0.031,0.03,0.03,0.033,0.033,0.033,0.028,0.029,0.03,0.030,0.031}
在以上初始条件下,分别用算法一和算法二求得系统中各调度器的任务分片方案,然后得到反映系统提供能力的目标函数值,实验结果如下:
应用算法一求得各个网格计算节点提供能力的倒数依次为:
D1={1.0547,1.0375,1.0201,1.0201,1.0547,1.0375,1.03751.0882,1.0882,1.0882,1.0024,1.0201,1.0375,1.0375,1.0547}
应用算法二求得各个网格计算节点提供能力的倒数依次为:
D2={1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459,1.0459}
附图5为该次实验过程中应用算法一和算法二确定的任务分片方案求得的各网格计算节点提供能力倒数的比较图。
对算法一、二所有网格计算节点提供能力倒数求和,可以得出算法一比算法二小0.0094,说明对比算法二,算法一能够使系统提供更高的计算能力,从而说明算法一更优。
结合以上两组实验,可以得出一个结论:网格系统中网格计算节点的提供能力均衡或者不均衡时,本发明中的算法都优于均衡调度策略。
实验二:系统负载的影响实验
本次实验是当系统调度器的实际任务增多时,算法一和算法二的比较。在该实验中,使负载系数ρ从0.1依次增加到0.9,每次增加0.1,其余参数与实验一中第一组实验的参数相同。
在以上初始条件下,分别用算法一和算法二确定负载变化时系统中各调度器的任务分片方案,然后得到反映系统提供能力的目标函数值,实验结果如下:
利用算法一确定的任务分片方案求得负载增加时系统目标函数值D依次为:
D1={15.0962,15.1988,15.3084,15.4257,15.5505,15.6811,15.8172,15.9581,16.1042}
利用算法二确定的任务分片方案求得负载增加时系统目标函数值D依次为:
D2={15.1328,15.2680,15.4056,15.5457,15.6883,15.8336,15.9817,16.1325,16.2862}
附图6为该次实验中系统负载增加时应用算法一和算法二确定的各调器的任务分片方案求得的系统目标函数值比较图。
从以上结果可以看出,随着系统负载的增加,算法一比算法二的优势逐渐加大。
实验三、系统规模的影响实验
系统规模的变化包括调度器数目的变化和网格计算节点数目的变化。因此实验分为两组。
第一组实验,调度器数目的变化对系统目标函数值的影响:
在这组实验中,调度器数目变化的范围为n=5~20,依次增加一个调度器;系统负载为ρ=0.6,网格计算节点的数目为15,各节点的计算能力如下:
u={[0.01,0.01,0.01,0.02,0.02,0.02,0.02,0.033,0.033,0.033,0.06,0.05,0.03,0.025,0.03}
所有调度的相对任务到达速率如下:
totalφ={0.0035,0.01,0.01,0.01,0.01,0.006,0.005,0.002,0.001,0.001,0.002,0.005,0.003,0.0045,0.0037,0.0046,0.0038,0.0063,0.0029,0.0048}
在以上初始条件下,分别用算法一和算法二求得调度器数目变化时系统中各调度器的任务分片方案,然后得到反映系统提供能力的目标函数值,实验结果如下:
利用算法一确定的任务分片方案,求得调度器数目增加时系统目标函数值依次如下:
D1={15.3310,15.3863,15.4344,15.4542,15.4642,15.4743,15.494815.5474,15.5800,15.6301,15.6719,15.7248,15.7692,15.8444,15.8796,15.9386}
利用算法二确定的任务分片方案,求得调度器数目增加时系统目标函数值依次如下:
D2={15.6112,15.6994,15.7737,15.8036,15.8186,15.8336,15.8638,15.939615.9855,16.0548,16.1122,16.1842,16.2441,16.3445,16.3911,16.4689,}
附图7为该次实验调度器数目增加时,利用算法一和算法二确定的各调度器的任务分片方案求得的系统目标函数值的变化比较图。从图中可以看出,当调度器数目增加时导致系统的任务随之增加时,系统能够提供的计算能力就会减少,对应的系统的目标函数值自然会增加。从结果的分析可以看出,随着调度器数目的增加,算法一较算法二的优势也逐渐加大。
第二组实验,网格计算节点数目的变化对系统提供能力的影响:
在这组实验中,调度器的数目n=10,系统负载系数ρ=0.6,网格计算节点数目变化的范围是m=10~20,调度器的相对任务到达速率如下:
φ={0.0035,0.01,0.01,0.01,0.01,0.006,0.005,0.002,0.001,0.001}
所述系统所有网格计算节点对应的提供能力如下:
u={0.01,0.01,0.01,0.02,0.02,0.02,0.02,0.033,0.033,0.033,0.06,0.05,0.03,0.025,0.03,0.025,0.033,0.028,0.025,0.019}
在以上初始条件下,分别用算法一和算法二求得所述系统网格计算节点数目变化时系统中各调度器的任务分片方案,然后得到反映系统提供能力的目标函数值,实验结果如下:
网格计算节点数目依次增加时,利用算法一确定的任务分片方案求得的系统目标函数值的对应如下:
D1={10.3751,11.3090,12.3555,13.3961,14.4310,15.4743,16.5116,17.562518.6072,19.6477,20.6787}
网格计算节点数目依次增加时,利用算法二确定的任务分片方案求得的系统目标函数值的对应如下:
D2={10.5558,11.6113,12.6669,13.7225,14.7781,15.8336,16.8892,17.944819.0004,20.0559,21.1115}
附图8是网格计算节点数目增加时,算法一和算法二下系统目标函数值的影响比较图。
从实验结果可以看出,在网格计算节点数目增加时,算法一对算法二的优势也是逐渐加大。
综合这两组实验可以看出,当系统规模增加时,本发明较算法二的优势越来越明显,进一步说明本发明能够让系统提供更高的计算能力,从而加快网格任务的执行,提高系统工作的效率。

Claims (1)

1.基于可靠性和非合作博弈的计算网格任务调度方法,其特征在于含有以下步骤: 
步骤(1),构造一个基于可靠性和非合作博弈的计算网格系统: 
所述基于可靠性和非合作博弈的计算网格系统由用户、面向各用户的各调度器i以及面向各调度器i的网格计算节点j以及调度方案计算器组成,其中i=1,2,..,n,n为所述系统中所有调度器的数目,j=1,2,...,m,m为所述系统中所有网格计算节点的数目; 
在忽略调度器内部处理代价、任务传输时间下,所述调度器在进行任务分片时的可靠性条件如下: 
各个调度器从各用户接受任务,各个调度器发出任务的平均速率λi的加和应该小于所述系统所有网格计算节点对任务的平均执行速率uj的加和,速率的单位是单位时间内的任务数,下同: 
; 
各个所述调度器发到第j个所述网格计算节点上任务分片的速率的加和应该小于第j个所述网格计算节点对所述任务分片的平均执行速率uj,称为计算能力: 
; 
步骤(2),网格计算节点j的稳定状态的提供能力Aj,0<Aj<1: 
Aj=1-δjβ1j(1+u′jγj)     (3) 
其中Aj针对的是网格计算节点j的提供能力,其中j=1,2,...,m,δj为网格计算节点j的平均任务到达速率,到达网格计算节点j的任务满足以δj为均值的泊松分布,β1j为网格计算节点j任务服务时间的均值,u′j为网格计算节点j忙时失败的平均速率,γj为网格计算节点j的重试时间的均值; 
根据网格计算节点的数量,调度器i将用户的请求分解为所述m个任务分片,aij为第i个调度器的任务分配到第j个网格计算节点的比例,满足以下的约束: 
aij≥0且
; 
步骤(3),调度方案计算器按下式计算所述所有调度器将任务分片到所述网格计算节点j上后,第j个网格计算节点的提供能力: 
其中,j=1,2,..,n; 
步骤(4),调度方案计算器以该系统中所述网格计算节点提供的计算能力倒数之和作为目标函数确定任务分片方案: 
; 
步骤(5),调度方案计算器按照以下步骤计算所述调度器的任务分片方案: 
为了便于算法步骤的说明,定义uji为网格计算节点j为调度器i提供的计算能力,代入(6)式可得式(7): 
; 
步骤(5.1),系统参数初始化: 
设网格系统中调度器的个数为n,网格计算节点个数为m,调度器i发出任务的平均速率为λi(0),网格计算节点j的任务平均执行速率uj(0),其中i=1,2,...,n,j=1,2,...,m;系统中各个调度器和网格计算节点将上述初始值发送给调度方案计算器,以下步骤均由调度方案计算器完成;将调度器i的任务分片方案初始化为:  目标函数值误差精度ε(0)=1; 
步骤(5.2),利用步骤(4)中的公式计算初始条件下的目标函数值latterD; 
步骤(5.3),判断ε是否满足指定的误差要求ε≤10-6,不满足,循环执行以下步骤(5.4)~(5.15),否则得到调度方案a,结束循环; 
步骤(5.4),令formerD=latterD,formerD用于暂存前一次调度方案下的目标函数值; 
步骤(5.5),根据程序中的初值,利用公式求取uji; 
步骤(5.6),利用式求取θij,并将θij从小到大排序,排序的结果保存到变量index中; 
步骤(5.7),对i从1到n,依次执行步骤(5.8)~(5.14): 
步骤(5.8),令di从m到1,依次执行步骤(5.9)~(5.11): 
步骤(5.9),利用下述式(8)求取α; 
步骤(5.10),利用下述式(9)求取j从1到di的ai,index(i,j),j从(di+1)到m的剩余网格节点的ai,index(i,j)赋值为0,其中di≤m; 
步骤(5.11),若存在aij不满足0≤aij≤1则di减1,返回到步骤(5.9),否则往下执行; 
步骤(5.12),利用求得的aij修改uji; 
步骤(5.13),利用求取θij,并对θij
从小到大排序,排序的结果保存到变量index中; 
步骤(5.14),令i=i+1,返回到步骤(5.8),其中i≤n; 
步骤(5.15),利用公式求得a修改 
后的目标函数值latterD,ε=|formerD-latterD|,返回到步骤(5.3);上述算法中的式(8)为: 
其中,Windex(i,j)=(1+μ′index(i,j)γindex(i,j)1,index(i,j)); 
式中α为分配临界因子,是调度器i判断是否向某个网格计算节点分配任务的界限值,index(i,j)代表第i个调度器向系统中网格计算节点分配任务时,以θij对网格计算节点从小到大排序后排在第j个位置的节点; 
上述算法中的式(9)为: 
其中式(9)中的j=index(i,j),为在该调度算法中用于调度器i确定任务分向第index(i,j)个网格计算节点的比例; 
上述公式θij为任务可分配调节因子,是第i个调度器判断是否向网格计算节点j分配任务的依据,若θij>α,调度器i不会向网格计算节点j分配任务,即aij=0。 
CN201210158071.5A 2012-05-21 2012-05-21 基于可靠性和非合作博弈的计算网格任务调度方法 Expired - Fee Related CN102736955B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210158071.5A CN102736955B (zh) 2012-05-21 2012-05-21 基于可靠性和非合作博弈的计算网格任务调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210158071.5A CN102736955B (zh) 2012-05-21 2012-05-21 基于可靠性和非合作博弈的计算网格任务调度方法

Publications (2)

Publication Number Publication Date
CN102736955A CN102736955A (zh) 2012-10-17
CN102736955B true CN102736955B (zh) 2014-12-31

Family

ID=46992501

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210158071.5A Expired - Fee Related CN102736955B (zh) 2012-05-21 2012-05-21 基于可靠性和非合作博弈的计算网格任务调度方法

Country Status (1)

Country Link
CN (1) CN102736955B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678000B (zh) * 2013-09-11 2016-08-17 北京工业大学 基于可靠性和合作博弈的计算网格均衡任务调度方法
CN103841208B (zh) * 2014-03-18 2017-09-01 北京工业大学 基于响应时间最优化的云计算任务调度方法
CN104915255B (zh) * 2015-05-19 2018-07-06 西安电子科技大学 一种可分任务多趟调度模型的求解方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158906A (zh) * 2011-05-19 2011-08-17 北京工业大学 一种服务质量敏感系统及其任务调度方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080077667A1 (en) * 2006-09-26 2008-03-27 Chong-Sun Hwang Method for adaptive group scheduling using mobile agents in peer-to-peer grid computing environment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158906A (zh) * 2011-05-19 2011-08-17 北京工业大学 一种服务质量敏感系统及其任务调度方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于信任机制的资源调度模型;王磊 解福;《计算机技术与发展》;20110430;第21卷(第4期);141-144 *

Also Published As

Publication number Publication date
CN102736955A (zh) 2012-10-17

Similar Documents

Publication Publication Date Title
Huang et al. Task-container matching game for computation offloading in vehicular edge computing and networks
US20130104140A1 (en) Resource aware scheduling in a distributed computing environment
CN111431961B (zh) 一种云数据中心的节能任务分配方法
Feldman et al. The proportional-share allocation market for computational resources
CN103841208B (zh) 基于响应时间最优化的云计算任务调度方法
Chauhan et al. QoS guided heuristic algorithms for grid task scheduling
Visheratin et al. Workflow scheduling algorithms for hard-deadline constrained cloud environments
CN104333569A (zh) 基于用户满意度的云任务调度算法
CN112181620B (zh) 云环境下虚拟机服务能力感知的大数据工作流调度方法
CN103401939A (zh) 一种采用混合调度策略的负载均衡方法
CN102799957A (zh) 一种云计算环境下安全感知的科学工作流调度方法
Hu et al. Multi-objective container deployment on heterogeneous clusters
CN105373426A (zh) 一种基于Hadoop的车联网内存感知实时作业调度方法
Nagarajan et al. Flowflex: Malleable scheduling for flows of mapreduce jobs
Penmatsa et al. Cost minimization in utility computing systems
CN102736955B (zh) 基于可靠性和非合作博弈的计算网格任务调度方法
Ge et al. Cloud computing task scheduling strategy based on improved differential evolution algorithm
CN103678000A (zh) 基于可靠性和合作博弈的计算网格均衡任务调度方法
Siar et al. A combination of game theory and genetic algorithm for load balancing in distributed computer systems
Chen et al. Deadline-constrained MapReduce scheduling based on graph modelling
Li et al. Multi-resource fair allocation with bounded number of tasks in cloud computing systems
Tan et al. Multi-resource fair sharing for multiclass workflows
Dai et al. Research on dynamic resource allocation with cooperation strategy in cloud computing
Zheng et al. A randomized heuristic for stochastic workflow scheduling on heterogeneous systems
CN115408122A (zh) 一种去中心化的分布式并行计算框架及计算方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20141231

Termination date: 20170521