技术领域
[0001] 本发明涉及电子设备领域,尤其涉及负载参数的预测方法。
相关背景技术
[0002] 在电子设备,尤其是服务器中,负载参数是时刻变化的,如果服务器的处理能力过低,就会难以支持其中设备的运行,如果服务器的处理能力过高,就会造成浪费。因此,需要能够根据以前的负载参数而对于未来的负载参数进行预测,进而改变服务器的处理能力,使得服务器的处理能力与负载参数相匹配。
[0003] 在公开号为CN101682253A的中国专利申请中提供了一种用于电源转换电路的预测控制系统,该预测控制系统通过通断开关,将输入侧的电力输送至输出侧,其特征在于,该预测控制系统包括第1采样单元和控制单元,第1采样单元,在通断开关的一周期内,多次获取流动在电源转换电路内的(a)开关中的电流、(b)开关以外的元件的电流、(c)出现在开关的端电压、(d)出现在开关以外的元件的端电压中的一个或多个以作为第1采样实测值,控制单元,在采样时,判断第1采样实测值或根据第1采样实测值的值是否超过预定阈值(被设定在第1采样实测值或根据第1采样实测值的值减少的一侧的阈值或增加的一侧的阈值)的下限或上限,当值未超过预定阈值时,预测下次采样时刻的第1采样值的全部或一部分,[1]当第1采样预测值未超过阈值时,维持开关的操作状态,[2]当第1采样预测值超过阈值时,计算改变开关的操作状态的时刻并在该时刻改变开关的操作状态。
[0004] 上述一种用于电源转换电路的预测控制系统能够在电源电压或负载急剧变化时能够产生应对。
[0005] 然而,上述系统仅涉及时域中的采样,并且其预测没有参考具体周期,预测结果不准确,并且预测方式不灵活,没有解决如何通过频域以及自相关的方式进行预测的技术问题。
具体实施方式
[0022] 以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
[0023] 图1是根据本发明实施例的负载参数的预测方法的总体流程图。在图1中:
[0024] 步骤S102:将设备的时域负载参数序列转化为频域负载参数序列。
[0025] 步骤S104:根据频域负载参数序列,得到设备的负载参数的至少一个周期。
[0026] 步骤S106:根据预定时间和至少一个周期,得到各个周期所对应的自相关系数。
[0027] 步骤S108:根据自相关系数,预测出第一负载参数变化率。
[0028] 其中,负载参数包括但不限于:CPU占有率、硬盘转速、数据吞吐量等等。
[0029] 通过本实施例的一种负载参数的预测方法,将时域序列转换为频域信号,由于信号在频域比在时域更加简单并且直观,因此可以对于负载参数进行更加准确,另外,由于使用了自相关系数,因此可以针对各个周期对于负载参数进行更灵活的预测。
[0030] 图2是根据本发明一个实施例的负载参数的预测方法的流程图。本实施例是图1所示出的负载参数的预测方法的后续判断方法,该实施例运用两种方法得到同一时间点上的负载参数变化率,一种方法是通过图1中所示出的根据频域及自相关方式所示出的方法所得到负载参数变化率,另一种方法是通过负载参数的平均变化率所得到的另一负载参数变化率,取这两个负载参数变化率的最大值,进而根据所取到的最大值对服务器的处理能力进行相应调整。在图2中,步骤S202、步骤S204、步骤S206、步骤S208分别与步骤S 102、步骤S104、步骤S106、步骤S 108相同,另外:
[0031] 步骤S210:根据负载参数的平均变化率,预测出第一负载参数变化率所在的时间点上的第二负载参数变化率。
[0032] 步骤S212:取第一负载变化率和第二负载变化率中最大的一个作为最大负载变化率。
[0033] 步骤S214:根据最大负载变化率得到最大负载变化率范围。
[0034] 步骤S216:根据最大负载变化率范围得到最大负载范围,并将处于最大负载范围之外的服务器的处理能力设置成位于最大负载范围内。
[0035] 本实施例是上述实施例的后续判断方法,除了上述技术效果之外,本实施例通过引入负载参数的平均变化率作为比较,进而将比较所得的最大负载变化率调整为一个范围,从而对于服务器进行更加准确及时的控制。
[0036] 以下将通过列举一个实例的方式对于上面所述的负载参数的预测方法进行具体描述。
[0037] 图3是根据本发明的负载参数的预测方法的一个具体实例的流程图。在图3中:
[0038] 步骤S302是步骤S 102和步骤S202的具体实例:将设备的时域负载参数序列转化为频域负载参数序列通过离散傅里叶变换完成,即 其中,f(u)是频域负载参数序列,f(x)是时域负载参数序列,N是时域负载参数序列所包含的项数。
[0039] 其中,设备的时域负载参数序列可以通过以下方式得到:通过监测服务器的负载参数,得到该负载参数的曲线函数。然后,以Δt为间隔,通过抽样方法得到负载参数的曲线函数的序列f(x)为{f(t0),f(t0+Δt),...,f[t0+(N-1)Δt]},该序列为一段时间内负载参数与预定时间的关系,其中,N是抽样的个数,预定时间可以是一周、一月等等。
[0040] 接着,将序列表示成f(x)=f(t0+xΔt),该序列即可认为是负载关于时间的函数。设对应的频率函数为f(u),则对应的频率函数的周期为Ω=2π/Δt。最后,可以通过上述离散傅里叶变换将是与负载参数序列转换为频域负载参数序列。
[0041] 步骤S304是步骤S104和步骤S204的具体实例:至少一个周期为在频域负载参数序列中至少一项的频率的倒数,其中,至少一项的权重比频域负载参数序列中其它项的权重大。
[0042] 在步骤S302中由离散傅里叶变换得到了频域负载参数序列,将所得到的序列的项按照权重从大到小排列,从权重最大的项开始依次选取,将选出的至少一项中的频率的倒数作为至少一个周期。
[0043] 步 骤 S306是 步 骤S106 和 步 骤S206 的 具 体 实 例:根 据 预 定 时 间和至少一个周期,得到各个周期所对应的自相关系数通过以下方式完成:其中,ρ是自相关系数,m是周期,t是预定时间。
[0044] 根据步骤S304所得到的至少一个周期,按照上述方式得到预定时间内第一个周期和预定时间内后面所有周期的自相关系数。其中,预定时间可以是一个月,周期可以是一周,即分别计算一个月的第一周与后面三周的自相关系数。
[0045] 步骤S308是步骤S108和步骤S208的具体实例:第一负载参数变化率通过将自相关系数加权获得。
[0046] 自相关系数的绝对值在0到1之间,接近1说明相似性大,接近0说明相似性小。不同的周期会得到不同的自相关系数,其中,自相关系数越大说明以其对应的周期为时间间隔的两点的负载参数变化率越相似。因此,通过将自相关系数加权(自相关系数越大,权重越大),可以根据当前负载参数变化率预测出之后的负载参数变化率。
[0047] 步骤S310与步骤S210相同:根据负载参数的平均变化率,预测出第一负载参数变化率所在的时间点上的第二负载参数变化率。其中,负载参数的平均变化率可以通过本周期内负载参数的总变化量除以周期获得。
[0048] 步骤S312与步骤S212相同:取第一负载变化率和第二负载变化率中最大的一个作为最大负载变化率。
[0049] 步骤S314是步骤S214的具体实例:根据最大负载变化率得到最大负载变化率范围通过以下方式完成:根据最大负载变化率以及当前负载参数得到负载参数,根据负载参数相对于当前负载参数的增长斜率以及调节系数得出最大负载变化率范围的上限和下限。
[0050] 在本步骤中,由于所得到的最大负载变化率过于具体,因此需要将最大负载变化率调节为一个范围,其中,本领域普通技术人员可以通过具体需要设定调节系数。
[0051] 步骤S316是步骤S216的具体实例:将处于最大负载范围之外的服务器的处理能力设置成位于最大负载范围内包括:如果服务器的处理能力低于最大负载范围的下限,则提高服务器的处理能力;如果服务器的处理能力高于最大负载范围的下限,则降低服务器的处理能力。
[0052] 其中,提高服务器的处理能力通过增加设备或者提升功耗水平来实现;降低服务器的处理能力通过关闭服务器或者降低功耗水平来实现。
[0053] 此外,还可以通过另一个实例对于本发明进行描述。
[0054] 比如当前负载是8,根据上面论述的方法得到下一个周期负载参数增长20%并得到下一个周期的负载参数为10。可以通过具体调节系数得到一个上限和一个下限,其中,上限是10%,下限是30%。从而,所预测的下一个周期的负载参数范围就是10×(1+10%)=11和10×(1-30%)=7,也就是说负载参数范围是7到11。如果当前服务器可以提供的处理能力为9,因为在该负载参数范围之内,就不需要做出改变。如果当前服务器的处理能力为5,那就要将服务器的处理能力提升到7,也就是提升到范围的下限(可以通过增加设备或者提升功耗水平实现)。如果当前服务器的处理能力为13,那就要将处理能力降低到11,也就是降低到范围的上限(通过关闭服务器或者降低功耗水平来实现)。
[0055] 通过本实例中的一种负载参数的预测方法,将时域序列转换为的频域信号,由于信号在频域比在时域更加简单并且直观,因此可以对于负载参数进行更加准确,另外,由于使用了自相关系数,因此可以针对各个周期对于负载参数进行更灵活的预测。此外,本实例通过引入负载参数的平均变化率作为比较,进而将比较所得的最大负载变化率调整为一个范围,从而对于服务器进行更加准确及时的控制。
[0056] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。