1.一种面向云计算系统优先依赖任务的期限约束成本优化调度方法,其特征在于,包括如下步骤:
步骤一,针对涉及大量数据读写的云计算应用程序,通过包含任务集、带权值的约束边、计算量和I/O数据量的数据建立基于I/O数据感知的云应用程序DDAG任务模型;
步骤二,计算综合云计算系统虚拟资源计算能力、I/O读写能力和计费价格的异构因子,得到标准化的云计算系统虚拟机处理能力和I/O数据读写能力,并基于此标准化虚拟机为基础,计算应用程序DDAG模型各任务执行时间,然后利用广度优先搜索技术计算DDAG模型各任务所在层级的最大执行完成时间,并将此最大执行完成时间做为各层任务的子期限计算基础,计算各任务子期限;
步骤三,基于应用程序DDAG模型进行任务调度,将入口任务放入可调度任务集做为初始数据,对于可调度任务集中的每个任务,计算其在所有云虚拟机上的最早执行完成时间和任务执行成本,然后为每个任务选择具有最小任务执行成本的云虚拟机进行配对来做为任务的可调度虚拟机,按照所有任务和云虚拟机配对的任务执行成本进行升序排列,按照任务和云虚拟机配对来依次查找最先满足任务子期限约束的任务和云虚拟机配对,并将任务调度到相应的云虚拟机上执行,再更新云虚拟机为已调度,从可调度任务集中移出任务,并依次检查该任务的后继任务的所有前驱任务是否都已调度,如是,则此任务放入可调度任务集ω,最后,断续检查调度任务集ω是否为空,如非空则回到本步骤的计算任务在所有云虚拟机上的最早执行完成时间和任务执行成本来循环执行。
2.根据权利要求1所述的方法,其特征在于,所述的步骤一中,基于I/O数据感知的云应用程序DDAG任务模型为G=<T,E,MI,D>,其中T是任务集,E是带权值的约束边,MI是计算量,D是I/O数据量, 其中|E|用来表示共有多少条边,eij表示任务tj能够执行的前提条件是任务ti必须执行完成,任务ti的计算量MIi∈MI,任务在执行过程中从云虚拟存储系统读取的数据量为 写的数据量为
3.根据权利要求1所述的方法,其特征在于,所述的步骤二中,异构因子Ψ表示为:
其中,w(vmj)表示云计算系统虚拟机vmj的计算能力, 表示系统所有虚拟机的平均计算能力;WR(vmj)表示虚拟机vmj向存储系统的数据读写能力, 表示平均数据读写能力;c(vmj)表示虚拟机vmj计费价格, 表示平均计费价格。
4.根据权利要求3所述的方法,其特征在于,所述的步骤二中,所述的标准化的云计算系统虚拟机vmst处理能力和I/O数据读写能力通过以下公式计算:
5.根据权利要求4所述的方法,其特征在于,所述的步骤二中,所述的应用程序DDAG模型各任务执行时间ET(ti,vmst)为:其中,GWR(vmst)为云计算虚拟机vmst对读写虚拟存储系统数据的速度,对于入口任务为tentry,其任务执行完成时间为:EFT(tentry,vmst)=0,对DDAG模型其他任务,其任务执行完成时间为:
6.根据权利要求5所述的方法,其特征在于,pred(ti)表示任务ti的直接前驱任务集,succ(ti)为任务ti的直接后继任务集,如果 则任务ti便称作入口任务,表示为tentry;如果 则任务ti便称作出口任务,表示为texit。
7.根据权利要求5所述的方法,其特征在于,所述的步骤二中,采用如下公式计算各任务子期限:
其中d,di分别为应用程序期限和各任务子期限,te[ti]为任务ti所在层级的最大执行完成时间,te[texit]为应用程序最大执行完成时间。
8.根据权利要求1所述的方法,其特征在于,所述的步骤三中,计算可调度任务集中的每个任务计算其在所有云虚拟机上的任务执行成本通过以下公式计算:其中τ是计费周期,c(vmj)是云虚拟机每周期计费价格。