【技术实现步骤摘要】
本申请涉及计算机
,尤其涉及CPU使用率的控制方法和装置。
技术介绍
目前,在很多高可靠性的软件测试中,很重要的一个测试场景是软件在高压力下的性能测试。而这种高压力往往表现为CPU使用率很高。又如,在很多高可靠性系统中,需要强大的灾难处理预案和容灾保护机制来支撑,而大多数的容灾保护机制都依赖一种监控装置,这种装置能够实时监控系统状态,如CPU使用率、内存使用率等。由于当某种系统状态达到某个精确的设定值时,将会触发容灾保护机制来自动实施某一种处理预案,因此,在这种容灾机制的测试过程当中,精确模拟实时控制CPU使用率就变得十分必要。相关技术中,CPU使用率的控制方法一般通过以下步骤实现:1)启动一定数量工作线程;2)每个线程按照一定比例做一定时间的计算,拉高CPU使用率;3)如果达到期望值,就停止启动线程;4)如果没有达到期望值,则继续启动更多线程;5)重复步骤3)、步骤4)直到达到期望值。但是存在的问题是:1)对于多核心的CPU,由于上述方法启动大量线程的做法会使CPU在线程间频繁切换,程序本身会造成过多的CPU占用,导致CPU使用率不稳定;2)需要通过线程的启动和销毁来控制CPU使用率,由于较多的线程启动和销毁都需要一定时间,会导致CPU的调节实时性很差,滞后严重;3)无法消除系统中的静态误差,会导致CPU使用率距离期望值有一定误差,且这一误差与具体环境密切相关,无法预测。
技术实现思路
本申请的目的旨在至少在一定程度上解决上述的技术问题之一。为此,本申请的第一个目的在于提出一种CPU使用率的控制方法,该方法能够使得在CPU使用率控制时达到效果稳定、实 ...
【技术保护点】
一种CPU使用率的控制方法,其特征在于,包括以下步骤:启动工作进程,其中,所述工作进程与目标CPU具有绑定关系;获取所述目标CPU的当前使用率和目标使用率,并获取所述当前使用率和目标使用率之间的误差值;根据所述误差值生成所述工作进程的工作时间;以及根据所述工作进程的工作时间对所述工作进程进行控制。
【技术特征摘要】
1.一种CPU使用率的控制方法,其特征在于,包括以下步骤:启动工作进程,其中,所述工作进程与目标CPU具有绑定关系;获取所述目标CPU的当前使用率和目标使用率,并获取所述当前使用率和目标使用率之间的误差值;根据所述误差值生成所述工作进程的工作时间;以及根据所述工作进程的工作时间对所述工作进程进行控制。2.如权利要求1所述的CPU使用率的控制方法,其特征在于,通过以下公式生成所述工作进程的工作时间: u ( t ) = k p e ( k ) + β k i Σ j = 0 k e ( j ) T ]]>其中,u(t)为工作进程的工作时间,kp为比例项系数,e(x)为误差值,β为积分项的开关系数,ki为积分项系数,j为当前是第j次采样,k为采样的总次数,T为采样点。3.如权利要求2所述的CPU使用率的控制方法,其特征在于,还包括:根据所述误差值计算累计误差值;当所述累计误差值小于或等于预设阈值时,β为1;当所述累计误差值大于所述预设阈值时,β为0。4.如权利要求1所述的CPU使用率的控制方法,其特征在于,还包括:将所述工作进程的工作时间设置为零。5.如权利要求2所述的CPU使用率的控制方法,其特征在于,所述比例项系数kp根据采样周期确定。6.如权利要求1所述的CPU使用率的控制方法,其特征在于,获取所述目标CPU的当前使用率具体包括:分别在第一采样点和第二采样点读取/PROC/STAT文件;根据所述/PROC/STAT文件确定所述第一采样点和第二采样点之间的总使用时间和空闲使用时间;以及根据所述第一采样点和第二采样点之间的总使用时间和空闲使用时间获取所述目标CPU的当前使用率。7.一种CPU使用率的控制装置,其特征在...
【专利技术属性】
技术研发人员:王桐,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛;KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。