基于遗传算法的云计算系统预算约束随机任务调度方法技术方案

技术编号:21605052 阅读:26 留言:0更新日期:2019-07-13 18:04
基于遗传算法的云计算系统预算约束随机任务调度方法,包括如下步骤:建立虚拟机资源模型;定义任务在虚拟机上的最早开始执行时间、任务在虚拟机上的最早完成时间,给出任务在虚拟机上的调度长度、执行总成本和预算法约束条件;利用遗传算法获得帕累托最优解向量,获得的帕累托最优解向量即为预算约束随机任务调度方法的最优调度方案。采用该方法在调度长度和计算成本上明显优于现有的Min‑Min和TS方法,能有效提高云任务调度性能,对提高云计算系统应用效率具有重要意义。

Budget Constrained Random Task Scheduling Method for Cloud Computing System Based on Genetic Algorithms

【技术实现步骤摘要】
基于遗传算法的云计算系统预算约束随机任务调度方法
本专利技术属于计算机软件以及云计算系统资源管理与任务调度
,涉及一种基于遗传算法的云计算系统预算约束随机任务调度方法。
技术介绍
云计算是基于互联网相关服务的增加、使用和交付模式,通过互联网来提供动态易扩展且经常是虚拟化的资源,其核心用网络将大量、闲置计算资源连接起来进行统一调度和管理,构成功能十分强大资源池向用户按需提供所需要服务。混合异构云计算是指混合了私有云和公有云的云计算服务,能够综合私有云计算和公共云计算服务的优势并实现两者之间的良好协调,为企业用户带来了融合两者的最佳应用体验,是云计算最新发展趋势。云计算系统服务器规模庞大,资源异构多样,用户群体广泛,应用任务类型各异,系统需要频繁地对各种应用任务进行调度和管理。因此,如何对混合云系统中的资源进行合理分配,对海量云任务进行高效调度管理,使得大量用户能以较低的预算成本、较少时间内完成任务执行,并保证系统资源高效利用,负载水平维持在一个相对均衡的状态成了云计算领域的研究热点和技术难点。任务调度是云计算实施过程中关键环节,尽管调度问题属于运筹学、计算机科学领域中的经典问题,已有大量研究成果,但随着混合异构云计算系统规模越来越庞大,应用程序日益复杂,导致软件行为如执行时间、成本耗费等出现不确定性。现有基于确定性的调度策略和算法已难以适应混合云计算系统发展要求。虽然国内外也有基于非确定性即任务计算量随机性的调度策略研究,但目前尚处于初步阶段,对任务计算量也仅基于某些假设模型或通过软件工程技术预测,任务调度时间与任务真正执行时间仍有区别。针对这些问题,本专利技术专利提出一种预算约束的在线反馈随机任务调度方法,尝试更精确预测任务执行时间和计算成本,以期在预算约束下高效调度混合云计算任务。CN105094970B公开了一种求解分布式系统下可分任务多趟调度模型的方法,其通过建立可分任务多趟调度新模型,并利用遗传算法求解该模型,得到任务的最短完成时间。该方法存在如下缺陷:1、该方法无法有效处理云计算系统任务计算量的随机性;2、该方法没有考虑任务计算成本,无法满足云计算系统环境下用户按需最优付费的需求。本方法重点针对以上问题,在精确预测任务执行时间和计算成本基础上实现性能与用户计算成本多目标优化。
技术实现思路
本专利技术针对云应用程序任务在异构云计算系统执行时计算量的随机性和成本预算约束,提出一种基于遗传算法的云计算系统预算约束随机任务调度方法。采用该方法在调度长度和计算成本上明显优于现有的Min-Min和Tabu-Search(TS)方法,能有效提高云任务调度性能,对提高云计算系统应用效率具有重要意义。为解决上述技术问题,本专利技术所采用的技术方案为:基于遗传算法的云计算系统预算约束随机任务调度方法,包括如下步骤:步骤1、针对异构云计算系统,建立虚拟机资源模型;将用户提交的任务描述为云计算中常见的BoT应用程序模型;虚拟机资源模型中的每台虚拟机都拥有自己资源,资源包括计算能力即虚拟机的处理能力Ps、单位计算能力价格Pc、存储空间Ss、单位存储空间价格Sc、软件服务价格虚拟机软件服务费用SSc,拥有以上资源的虚拟机共同构成虚拟机的有限集VM。表1所示了5个虚拟机的资源特性。1云计算系统虚拟机资源特性VMPs(MIPS)PcSs(GB)ScSScVM14001.88000.91.9VM23501.33001.01.6VM33000.85001.31.3VM40010001.21.1VM510000.8001.5其次,由于异构云计算环境下用户应用程序日益复杂,时间和环境不断演化,一个任务的执行时间很难被估计成一个确定的常量,而是一个随运行时间点和运行软硬件环境变化的随机变量。概率分布是随机变量最基本的特征,在实际研究中获得所观察随机变量的概率分布函数是相对困难的,但随机变量分布频率则易于获得,用户可以利用日志文件分析、配置信息和软件模块分析树等技术实现,并把此信息作为应用程序任务数据即任务信息提交给云计算系统。本专利技术中,将用户提交的任务描述为云计算中常见的BoT应用程序模型,BoT应用程序模型中的任务v1,v2,…vi,…vn∈V,1≤i≤n,i表示第i个任务,n表示任务的数量,V表示BoT应用程序任务集,且其中每个任务均为独立任务,即任务间没有通信或任何依赖关系,且允许在任意可用的虚拟机上执行。步骤2、定义任务在虚拟机上的最早开始执行时间、任务在虚拟机上的最早完成时间,给出任务在虚拟机上的调度长度、执行总成本和约束条件;任务信息由用户提交给云计算系统,系统允许任务以任何顺序在任何可用的虚拟机上执行,本专利技术提出的任务在线反馈随机调度策略满足:EST(vi,VMj)≥Avail(VMj)(1);其中EST(vi,VMj)是任务vi在虚拟机VMj上的最早开始执行时间,1≤i≤n,n表示任务的数量,1≤j≤m,m表示虚拟机的个数,Avail(VMj)为虚拟机VMj的可用时间。任务vi在虚拟机VMj上的最早完成时间EFT(vi)为:EFT(vi)=EST(vi,VMj)+si/Psj(2);其中Psj表示虚拟机VMj的处理能力,si表示任务vi的计算量。本专利技术提出的任务在线反馈随机调度策略中,任务的计算量具有随机性。依据用户提供的任务信息,利用SKOPE技术把任务划分为两部分。SKOPE技术为现有成熟技术,如“SKOPE:aframeworkformodelingandexploringworkloadbehavior”,JiayuanMeng、XingfuWu、VitaliMorozov,AcmConferenceonComputingFrontiers,2014。对于任务vi,任务vi存在至少一种可能执行行为。用户将任务vi的信息提交给云计算系统时,并不知任务vi处于何种执行行为。利用SKOPE技术将用户提供的任务vi划分为两部分,通过SKOPE技术可以获得用户提供的任务vi的第一部分的计算量first(si)和存储量first(di)、任务vi的第二部分的计算量last(si)和存储量last(di)。本专利技术以任务计算量为依据进行任务调度,任务vi在虚拟机上的最早完成时间可进一步表示为:当任务vi第一部分与第二部分调度在同一台虚拟机VMj时,k=j;当任务vi调度在不同虚拟机VMj、VMk上时,k≠j;first(si)表示任务vi的第一部分的计算量,last(si)表示任务vi的第二部分的计算量,CurT是在线调度时间,Psj表示虚拟机VMj的处理能力,Psk表示虚拟机VMk的处理能力。云计算系统在每个调度点首先调度任务vi的第一部分到虚拟机上实际执行,虚拟机实际执行任务vi的第一部分后得到任务vi的第一部分的实际计算量fdc(vi)和任务vi的第一部分的实际存储量fds(vi)。本专利技术要求云计算系统中所有任务的第一部分都能在一个调度间隔中执行完成,因而在下一个调度点时,虚拟机可以将在上一个调度点调度任务vi的第一部分进行执行时获得的任务vi的第一部分实际计算量fdc(vi)和任务vi的第一部分的实际存储量fds(vi)反馈给云计算系统。任务vi的第一部分实际计算量fdc(vi)和任务vi的第一部分的实际存储量fd本文档来自技高网
...

【技术保护点】
1.基于遗传算法的云计算系统预算约束随机任务调度方法,其特征在于,包括如下步骤:步骤1、针对异构云计算系统,建立虚拟机资源模型;将用户提交的任务描述为云计算中常见的BoT应用程序模型;虚拟机资源模型中的每台虚拟机都拥有自己资源,资源包括计算能力即虚拟机的处理能力Ps、单位计算能力价格Pc、存储空间Ss、单位存储空间价格Sc、软件服务价格虚拟机软件服务费用SSc,拥有以上资源的虚拟机共同构成虚拟机的有限集VM;将用户提交的任务描述为云计算中常见的BoT应用程序模型,BoT应用程序模型中的任务v1,v2,…vi,…vn∈V,1≤i≤n,i表示第i个任务,n表示任务的数量,V表示BoT应用程序任务集,且其中每个任务均为独立任务,即任务间没有通信或任何依赖关系,且允许在任意可用的虚拟机上执行;步骤2、定义任务在虚拟机上的最早开始执行时间、任务在虚拟机上的最早完成时间,给出任务在虚拟机上的调度长度、执行总成本和约束条件;任务信息由用户提交给云计算系统,系统允许任务以任何顺序在任何可用的虚拟机上执行,任务在线反馈随机调度策略满足:EST(vi,VMj)≥Avail(VMj)    (1);其中EST(vi,VMj)是任务vi在虚拟机VMj上的最早开始执行时间,1≤i≤n,n表示任务的数量,1≤j≤m,m表示虚拟机的个数,Avail(VMj)为虚拟机VMj的可用时间;任务vi在虚拟机VMj上的最早完成时间EFT(vi)为:EFT(vi)=EST(vi,VMj)+si/Psj                         (2);其中Psj表示虚拟机VMj的处理能力,si表示任务vi的计算量;本专利技术的任务在线反馈随机调度策略中,任务的计算量具有随机性;依据用户提供的任务信息,利用SKOPE技术把任务划分为两部分;对于任务vi,任务vi存在至少一种可能执行行为;用户将任务vi的信息提交给云计算系统时,并不知任务vi处于何种执行行为;利用SKOPE技术将用户提供的任务vi划分为两部分,通过SKOPE技术可以获得用户提供的任务vi的第一部分的计算量first(si)和存储量first(di)、任务vi的第二部分的计算量last(si)和存储量last(di);以任务计算量为依据进行任务调度,任务vi在虚拟机上的最早完成时间可进一步表示为:...

【技术特征摘要】
1.基于遗传算法的云计算系统预算约束随机任务调度方法,其特征在于,包括如下步骤:步骤1、针对异构云计算系统,建立虚拟机资源模型;将用户提交的任务描述为云计算中常见的BoT应用程序模型;虚拟机资源模型中的每台虚拟机都拥有自己资源,资源包括计算能力即虚拟机的处理能力Ps、单位计算能力价格Pc、存储空间Ss、单位存储空间价格Sc、软件服务价格虚拟机软件服务费用SSc,拥有以上资源的虚拟机共同构成虚拟机的有限集VM;将用户提交的任务描述为云计算中常见的BoT应用程序模型,BoT应用程序模型中的任务v1,v2,…vi,…vn∈V,1≤i≤n,i表示第i个任务,n表示任务的数量,V表示BoT应用程序任务集,且其中每个任务均为独立任务,即任务间没有通信或任何依赖关系,且允许在任意可用的虚拟机上执行;步骤2、定义任务在虚拟机上的最早开始执行时间、任务在虚拟机上的最早完成时间,给出任务在虚拟机上的调度长度、执行总成本和约束条件;任务信息由用户提交给云计算系统,系统允许任务以任何顺序在任何可用的虚拟机上执行,任务在线反馈随机调度策略满足:EST(vi,VMj)≥Avail(VMj)(1);其中EST(vi,VMj)是任务vi在虚拟机VMj上的最早开始执行时间,1≤i≤n,n表示任务的数量,1≤j≤m,m表示虚拟机的个数,Avail(VMj)为虚拟机VMj的可用时间;任务vi在虚拟机VMj上的最早完成时间EFT(vi)为:EFT(vi)=EST(vi,VMj)+si/Psj(2);其中Psj表示虚拟机VMj的处理能力,si表示任务vi的计算量;本发明的任务在线反馈随机调度策略中,任务的计算量具有随机性;依据用户提供的任务信息,利用SKOPE技术把任务划分为两部分;对于任务vi,任务vi存在至少一种可能执行行为;用户将任务vi的信息提交给云计算系统时,并不知任务vi处于何种执行行为;利用SKOPE技术将用户提供的任务vi划分为两部分,通过SKOPE技术可以获得用户提供的任务vi的第一部分的计算量first(si)和存储量first(di)、任务vi的第二部分的计算量last(si)和存储量last(di);以任务计算量为依据进行任务调度,任务vi在虚拟机上的最早完成时间可进一步表示为:当任务vi第一部分与第二部分调度在同一台虚拟机VMj时,k=j;当任务vi调度在不同虚拟机VMj、VMk上时,k≠j;first(si)表示任务vi的第一部分的计算量,last(si)表示任务vi的第二部分的计算量,CurT是在线调度时间,Psj表示虚拟机VMj的处理能力,Psk表示虚拟机VMk的处理能力;云计算系统在每个调度点首先调度任务vi的第一部分到虚拟机上实际执行,虚拟机实际执行任务vi的第一部分后得到任务vi的第一部分的实际计算量fdc(vi)和任务vi的第一部分的实际存储量fds(vi);任务vi的第一部分实际计算量fdc(vi)和任务vi的第一部分的实际存储量fds(vi)共同构成任务在线反馈执行结果;对于任务vi的每一种可能执行行为,利用SKOPE技术可以获得任务vi在每一种可能执行行为时的第一部分的计算量和存储量、任务vi在每一种可能执行行为时的第二部分的计算量和存储量;根据任务在线反馈执行结果即任务vi的第一部分在线反馈计算量fdc(vi)和任务vi的第一部分在线反馈存储量fds(vi),计算任务vi的第u种可能执行行为Probi,u的执行概率Pru;其中,Pru是任务vi的第u种可能执行行为Probi,u的执行概率,1≤u≤w,w表示任务vi所有可能执行行为的数量,Probi,u表示任务vi的第u种可能执行行为。1≤i≤n,n表示任务的总数;1≤y≤w,firPsize(Probi,y)和firPstorage(Probi,y)分别为任务vi在第y种可能执行行为时的第一部分的计算量和存储量;对任务vi的所有种可能执行行为的概率依公式(4)进行计算后,然后查找最小的可能执行行为概率Prx(1≤x≤w),并找到与最小可能执行行为概率Prx相对应的任务vi的最大可能执行行为Probi,x,最小的的可能执行行为概率Prx对应的行为为最大的可能执行行为Probi,x,再根据任务vi的可能执行行为Probi,x,得到任务vi在此可能执行行为Probi,x时的第二部分的计算量和存储量;BoT应用程序任务集V中的任务vi在虚拟机上的调度长度表示为:其中,1≤i≤n,n表示任务的数量,1≤j≤m,m表示虚拟机的个数,假若任务vi调度在虚拟机VMj上,则Xi,j=1,反之Xi,j=0;在云计算系统中,假定每个虚拟机都有自己的属性,任务vi的执行成本cοst(vi)表示为:其中,fdc(vi)、fds(vi)分别是任务vi的第一部分在线反馈计算量和任务vi的第一部分在线反馈存储量,1≤i≤n,n表示任务的数量;Psj表示虚拟机VMj...

【专利技术属性】
技术研发人员:唐小勇黄玲龙陈锋
申请(专利权)人:湖南农业大学
类型:发明
国别省市:湖南,43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1