首页> 中国专利> 一种基于空闲时间预测的云计算服务器调度方法

一种基于空闲时间预测的云计算服务器调度方法

摘要

本发明公开了一种基于空闲时间预测的云计算服务器调度方法,属于云计算和节能技术领域。本发明方法针对现有基于滑动窗口的指数平均预测方法所存在的不足,对其进行改进,根据前次空闲时间预测值与实际空闲时间的偏差对滑动窗口大小进行动态调整,从而有效提高了预测的准确性,并根据预测结果对云计算服务器的工作状态进行动态调整,从而在保证系统性能的前提下,降低了系统能耗。

著录项

  • 公开/公告号CN103853918A

    专利类型发明专利

  • 公开/公告日2014-06-11

    原文格式PDF

  • 申请/专利权人 南京邮电大学;

    申请/专利号CN201410058579.7

  • 申请日2014-02-21

  • 分类号G06F19/00(20110101);H04L29/08(20060101);

  • 代理机构32200 南京经纬专利商标代理有限公司;

  • 代理人杨楠

  • 地址 210046 江苏省南京市新模范马路66号

  • 入库时间 2024-02-20 00:07:10

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-01-04

    授权

    授权

  • 2014-07-09

    实质审查的生效 IPC(主分类):G06F19/00 申请日:20140221

    实质审查的生效

  • 2014-06-11

    公开

    公开

说明书

技术领域

本发明涉及一种云计算服务器调度方法,尤其涉及一种基于空闲时间预测的云计算 服务器调度方法,属于云计算和节能技术领域。

背景技术

随着互联网信息的大爆炸,以及计算机性能的提高和多核处理器的发展,云计算应 运而生。云计算以最新兴的计算模式,为用户提供了即付即用的灵活架构,提供了一种 方便使用资源的方式。用户无需知道所需的资源如何存储、存储在哪,只要通过Internet 就可以访问计算资源共享池。

目前,云计算的研究主要集中在海量的数据存储、资源管理、虚拟化、任务调度、 数据中心节能算法以及云安全等方面。而能耗问题也已成为近年来关注的焦点。据统计, 数据中心服务器的电能消耗已占到全球电力消耗的50%,如Google在2010年全年排放 了146吨的CO2。由于系统运行过程中产生大量的热量,需要较多的冷却设备来进行降 温调节,因此,制冷设备的运用又导致了更多能量的消耗。可以看出,云计算数据中心 的高能耗问题已经成为了急待解决的问题。

数据中心的节能算法有很多,按降低能耗的阶段不同,可以分为:关闭/开启技术、 动态电压/频率调整技术以及虚拟化技术。服务器状态管理策略有三种:1)超时策略; 2)随机策略;3)预测策略。超时策略的思想是预先设定一个阀值,若空闲时间超过这 一阀值,就将主机转入低功耗状态。预测策略就不需要等待阀值大小的时间,在一开始 就对本次空闲时间进行预测,若预测的值足够大,则直接将主机转入低功耗状态。随机 策略就是离散变量的一个随机优化过程,基于随机分析模型,从系统整体角度进行功耗 和性能的均衡。

预测策略的思想是根据历史记录来学习预测未来的空闲时间大小。目前预测策略中 对历史记录进行学习的方法有3种:一是L型预测;二是学习树;三是指数平均。指 数平均预测算法是使用控制因子a,通过控制因子a来平衡前一次的预测空闲时间和前 一次的真实空闲时间对本次预测值的影响。它的优点是使用较少的历史记录,不需要保 存过多的历史记录。

但是,目前提出的指数平均预测算法中,控制因子a是固定不变的,这就导致当空 闲时间发生严重波动的时候,比如突然的变长、变短,则预测的空闲时间值就存在较大 的误差,因此有必要动态的调节控制因子a。

发明内容

本发明所要解决的技术问题在于克服现有采用指数平均预测策略的云计算服务器 调度方法的不足,提供一种基于空闲时间预测的云计算服务器调度方法,利用窗口大小 可自适应调整的基于滑动窗口的指数平均预测方法对云计算服务器的空闲时间进行预 测,并根据预测结果对云计算服务器的状态进行动态调整,从而提高预测的准确性,降 低系统能耗。

本发明具体采用以下技术方案:

一种基于空闲时间预测的云计算服务器调度方法,利用基于滑动窗口的指数平均预 测方法对云计算服务器的空闲时间进行预测,并根据预测结果对云计算服务器的状态进 行动态调整,在所述基于滑动窗口的指数平均预测方法中,滑动窗口的大小按照以下方 法进行动态调整:判断上一次预测的空闲时间与实际空闲时间的偏差是否小于预设的偏 差阈值,如是,则保持滑动窗口的大小不变;如否,则比较上一次预测的空闲时间与实 际空闲时间的大小,上一次预测的空闲时间大于实际空闲时间时,将滑动窗口大小调整 为反之,则将滑动窗口大小调整为其中,N表示当前 滑动窗口大小,分别表示上一次预测的空闲时间和实际空闲时间,表示 向下取整运算。

优选地,在所述基于滑动窗口的指数平均预测方法中,滑动窗口的初始大小按照以 下方法确定:计算待预测时段的前k个空闲时间历史数据所构成的时间序列的方差,

k=1,2,3......n-1;选取使得时间序列的方差最小的k值作为滑动窗口的初始大小。

优选地,在所述基于滑动窗口的指数平均预测方法中,计算指数平均预测权值因子 所需的滑动窗口中的空闲时间序列{T1,T2,…TN}的平均值为加权平均值,第i个空闲时 间序列数据Ti的权值pi按照下式计算,i=1,2,…,N:

pi=iΣk=1Nk,

其中,N为当前滑动窗口的大小。

优选地,所述根据预测结果对云计算服务器的状态进行动态调整,具体为:对于当 前处于正常运行状态的云计算服务器,如其空闲时间预测值大于预设的空闲时间阈值, 则将该云计算服务器切换为低功耗运行状态并保持一段时间,然后再切换为正常运行状 态;所述低功耗运行状态的保持时间为该云计算服务器的空闲时间预测值减去该云计算 服务器完成状态切换所需的时间。

进一步地,所述空闲时间阈值根据下式确定:

Tbe=Ttr+Ttr(Pon-Poff)/(Pon-Psaving),

其中,Tbe表示空闲时间阈值,Ttr表示该云计算服务器完成状态切换所需的时间,Pon、 Poff、Psaving分别表示该云计算服务器分别处于正常运行状态、关机状态、低功耗运行状 态时的功率。

相比现有技术,本发明及其优选技术方案具有以下有益效果:

首先,本发明通过动态调整滑动窗口的大小,合理的调节指数平均预测因子的大小, 从而减小预测误差,使得预测结果更接近真实值,为节省系统的能耗提供了有力的保障。

其次,本发明考虑到时间序列中各数据对预测结果的影响不同,利用时间序列的加 权平均值计算指数平均预测权值因子,越靠近待预测时段的历史数据,其权值越大,从 而使预测值更接近实际情况。

附图说明

图1为具体实施方式中本发明的云计算服务器调度方法的流程示意图。

具体实施方式

下面结合附图对本发明的技术方案进行详细说明:

本发明针对现有基于滑动窗口的指数平均预测方法所存在的不足,对其进行改进, 根据前次空闲时间预测值与实际空闲时间的偏差对滑动窗口大小进行动态调整,从而有 效提高了预测的准确性,并根据预测结果对云计算服务器的工作状态进行动态调整,从 而在保证系统性能的前提下,降低了系统能耗。本发明方法的基本思路是:在对第n 个时间段的服务器空闲时间进行预测时,首先选择不同大小的时间序列 S1={Tn-1},S2={Tn-2,Tn-1},…,Sn-1={T1,T2,…Tn-1},分别计算每个序列中空闲时间的方差, 选择方差最小的时间序列的个数作为初始滑动窗口的大小;计算历史记录中空闲时间的 加权平均值,代入控制因子a的计算公式中获得其大小,然后根据指数平均算法预测处 于正常工作状态的服务器的未来空闲时间的大小,从而决定是否要将服务器转为低功耗 状态;计算此次预测的空闲时间与真实空闲时间的偏离度,根据偏离度的大小决定是否 要调整滑动窗口的大小;若需要,则再根据相应的策略决定滑动窗口如何变化。

图1显示了本发明一个优选实施例的流程,如图所示,该方法包括以下步骤:

步骤1.设定服务器工作状态转换的空闲时间阈值:

已知云计算服务器正常运行和关闭状态的功率分别是Pon和Poff,已知状态间的转换 时间为Ttr,低功耗状态的功率为Psaving,为了使设备处在空闲时间所节省的能耗至少能 抵消状态转化产生的能耗,则设备的空闲时间必须大于某一个值,定义这个空闲时间为 Tbe,则Tbe=Ttr+Ttr(Pon-Poff)/(Pon-Psaving),它主要由两部分组成:一是状态转换时间Ttr, 二是弥补状态转换所需要的处于空闲状态的时间。

步骤2.设定初始的滑动窗口大小:

本发明可以采用各种现有的滑动窗口大小确定方法,例如最常见的,由实验人员根 据经验设定,然而这种方法严重依赖于人员经验,不具有代表性,且存在较大的误差。 本实施例中根据不同滑动窗口大小下时间序列的方差大小来确定滑动窗口的初始值,从 而克服了现有方法凭经验确定窗口大小的不足,减小了误差。滑动窗口的初始值确定过 程具体如下:若要对第n个周期的服务器空闲时间进行预测,首先选取数 S1={Tn-1},S2={Tn-2,Tn-1},…,Sk={Tn-k,…Tn-2,Tn-1},其中Sk表示第n个周期的前k个周 期的空闲时间历史记录的数列,k=1,2,3......n-1,则时间序列Sk的平均值(k=1,2,3......n-1),时间序列Sk的方差σk=Σi=n-kn-1(Ti-uk)2/k(k=1,2,3......n-1),比 较k取不同值时的方差,选择其中最小的方差所对应的k值作为滑动窗口大小的初值, 即:N=k,则空闲时间序列为{T1,T2,…TN}。

步骤3.计算指数平均预测权值因子公式中的空闲时间平均值:

现有指数平均预测算法中的平均值的计算一般都采用算数平均,由于窗口中不同位 置的历史记录对本次空闲时间预测的影响程度不同,为了表现出这一特点,本实施例中 采用加权的空闲时间平均值,具体如下:

从历史空闲时间记录中选出序列{T1,T2,…TN},由于每个历史记录对当前空闲时间 的影响程度不同,通常最近历史记录对当前的影响程度最大,所以本实施例中根据时间 距离的远近对不同的时间序列数据赋予不同的权值,第i个空闲时间序列数据Ti的权值 pi按照下式计算,i=1,2,…,N:

pi=iΣk=1Nk,

其中,N为当前滑动窗口的大小。

则空闲时间序列的加权平均值Tidleavg=Σi=1NTi·pi.

步骤4.计算指数平均预测权值因子:

通过前一周期的预测空闲时间和历史空闲时间序列的加权平均值可以得 到前一周期的预测值的影响因子β(0<β<1),当预测空闲时间和历史空闲时间序 列的加权平均值相等时β=1,当预测值距离历史空闲时间序列的加权平均值 越大时β越趋向于0,然后根据前一周期的真实空闲时间可以得到下一周期的 预测空闲时间的指数平均预测权值因子α,α值越趋向于1,表示下一周期的预测空闲 时间和前一周期的真实空闲时间越接近。

β=e-(|Tpredn-1-Tidleavg|Tpredn-1),

a=(1-|Tidlen-1-Tidleavg|Tidlenb-1)β,

其中是第n-1个周期的真实空闲时间,是第n-1个周期的预测空闲时间。

步骤5.预测第n个周期的空闲时间:

假设第n-1个周期的预测空闲时间是则第n个周期的空闲时间预测值为:

Tpredn=aTidlen-1=(1-a)Tpredn-1=aTidlen-1+a(1-a)Tidlen-1+···+a(1-a)n-1Tidle0+(1-a)nTpred0=Σi=1na(1-a)i-1Tidlen-i+(1-a)nTpred0

步骤6.对于当前处于正常工作状态的云计算服务器,若预测的空闲时间小于等于空 闲时间阈值,则不进行服务器状态的转换;若预测的空闲时间大于空闲时 间阀值,即则服务器转换到低功耗状态。

步骤7.服务器保持处于低功耗状态一段时间后转换为正常运行状态,等待新的服务 到来;低功耗运行状态的保持时间为该云计算服务器的空闲时间预测值减去该云计算服 务器完成状态切换所需的时间Ttr

步骤8.根据预测空闲时间和真实空闲时间计算预测值与真实值的偏离度 并将Dev和预测值与真实值之间的偏离度阈值a进行比较,若 Dev<a,则保持滑动窗口大小不变,即下一次预测中滑动窗口的大小仍为N;若 Dev≥a,则由预测空闲时间和真实空闲时间计算两者的比值 若Ratio>1,则将滑动窗口的大小更新为反之, 若Ratio<1,则将滑动窗口的大小更新为即按照下式更新滑动窗口 的大小:

然后进入下一周期空闲时间的预测,此时的滑动窗口大小为新的值N。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号