一种网格环境下的静态调度改进方法与流程

文档序号:18059105发布日期:2019-07-03 02:56阅读:210来源:国知局
一种网格环境下的静态调度改进方法与流程

本发明涉及一种网格环境下的静态调度改进方法,属于网格计算与任务调度计算领域。



背景技术:

在当今科技不断发展的的社会环境中,信息技术不断深入并影响着人们的生活。在internet和web技术发展成熟的情况下,网格技术作为一项新的革命性技术得到不断的研究和发展;而网格也作为影响下一个信息技术高潮的重要核心技术。

网格计算是伴随着互联网技术而迅速发展起来的,是一种针对科学计算的新型计算模式。网格把分布在不同地理位置上的各种资源用通用媒介连接起来,为用户提供服务。

网格任务调度需要有合适的调度算法来使网格环境中的资源得到有效的利用,而且使得用户的需求得到满足。网格调度算法的好坏直接影响到整个网格系统的运行状况。因此,简单有效的调度算法可以改进整个系统的表现,而不同于从改进各种经典算法本身出发,改变数据的预处理过程并根据任务数组情况选择合适的算法可以更简单有效。



技术实现要素:

本发明要解决的技术问题是提供一种网格环境下的静态调度改进方法,用以解决对原始经典算法的改进难度,减少任务调度的时间,提高系统的效率和减少用户等待的时间。

本发明的技术方案是:一种网格环境下的静态调度改进方法,具体步骤为:

step1:初始化网格任务环境;

step2:根据用户数量创建用户信息,根据机器数量和不同的机器处理能力创建不同的机器;

step3:建立初始任务数组;

step4:获取任务实体并建立网格任务列表;

step5:计算任务数组长度和每个任务的数量级并与规定值进行判断;

step6:根据任务数组的特征选取最合适的权重值,并用权重值对任务优先级进行调整;

step7:根据调整后的任务分配矩阵选择合适的任务调度算法;

step8:向系统提交任务并运算得到分配结果和完成时间;

step9:系统结束,等待下一次处理。

所述的任务数据是已经生成且已知的。

所述的调度算法是已经完成的可用调度算法。

所述的权重值是根据实验选取不同的权重计算方法并且用来调整任务排序的。

所述的任务集合与处理机器集合分别表述为任务集合t={t1,t2,...tm},处理机器集合r={r1,r2,...rn}m与n均为正整数,分别用来表示任务数量与处理机器数量。

所述的调度算法是网格任务调度中使用的多种算法,并且调度算法是已经实现并在系统中设计成单独的可调度的模块。

所述的不同的权重值的计算方法含有多种,包括使用每个任务预计完成时间的均值,预计完成时间的标准差,预计最小完成时间等。

所述权重值的计算因素中,预计完成时间的均值计算方法采用下列公式计算:

i∈{1,2,3,…,n}

j∈{1,2,3,…,m}

式中,i表示任务,j表示处理机器,tij表示任务i在处理机器j上的预计执行时间,是etc矩阵中的具体值。

所述权重值的计算因素中,预计完成时间的标准差计算方法采用下列公式计算:

i∈{1,2,3,…,n}

j∈{1,2,3,…,m}

式中,i表示任务,j表示处理机器,tij表示任务i在处理机器j上的预计执行时间,是etc矩阵中的具体值。

所述权重值的计算因素中,预计最小完成时间计算方法采用下列公式计算:

i∈{1,2,3,…,n}

j∈{1,2,3,…,m}

式中,i表示任务,j表示处理机器,tij表示任务i在处理机器j上的预计执行时间,是etc矩阵中的具体值。

本发明的有益效果是:

1、能够从任务数组本身出发,选取最合适的权重值计算因素,改变任务在处理顺序上的优先级,在根据情况选择合适的调度算法,从而减少总体完成时间。

2、减少对原调度算法的改进难度,使调度算法更容易改动并且便于根据具体情况作出改动。

附图说明

图1是本发明的调度流程图。

具体实施方式

下面结合附图和具体实施方式,对本发明作进一步说明。

实施例1:如图1所示,一种网格环境下的静态调度改进方法,具体步骤为:

步骤1、网格运行环境是一个大的整体系统,包括很多类和多种参数设置,在流程图中的开始阶段需完成初始化参数设置。在这个系统中含有许多可调用的接口,用来实现各种运行环境和各种基本功能。初始化参数包括时区设置,峰值与谷值,是否保存记录等。

步骤2、在流程图获取资源信息部分创建函数定义用户数量,用户名;创建机器函数用来创建不同的机器,包括机器名称,机器核心数量,机器处理能力,并获取相关信息。

步骤3、创建任务数组,任务数组的创建可以有多种形式,可以使用专用的函数,或者使用专用数据,但数组中的数据格式要相同并发送到任务链表中。

步骤4、创建好的任务数据必须先向系统中注册才能完成任务数据的创建,并为接下来的使用分配做好准备。

步骤5、在流程图任务统计及计算占比部分,根据任务数组的长度进行判断,并统计数组中每个数据的长度大小;将得到的数据大小保存在另一个数组中用来做对比判断。

步骤6、在流程图中的计算ect矩阵部分,任务数组会根据任务长度与处理机器的处理能力,生成预计执行时间的矩阵称为ect矩阵,表示如下:

它表示为有m个待处理任务分别在总数为n的处理机器上的预期完成时间。根据对数组的判断选择一种最优权重因素对ect矩阵中的每一行按公式计算得到不同的数据,以此作为优先级对任务数据重新排序。

步骤7、按照新排序好的任务数组,选取当前优先级排序后的任务数组重新生成任务的执行链表,并提交至系统中,这一部分表示在流程图的最优权重值排序部分。

步骤8、在选择调度算法部分,按照提交的数组链表顺序,选择当前最适合的算法对任务进行调度。得到分配结果和调度完成时间。

以上结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1