CN115963914A - 基于混合策略的智能移动设备电源管理方法及装置 - Google Patents
基于混合策略的智能移动设备电源管理方法及装置 Download PDFInfo
- Publication number
- CN115963914A CN115963914A CN202310007883.8A CN202310007883A CN115963914A CN 115963914 A CN115963914 A CN 115963914A CN 202310007883 A CN202310007883 A CN 202310007883A CN 115963914 A CN115963914 A CN 115963914A
- Authority
- CN
- China
- Prior art keywords
- time
- equipment
- idle
- system request
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Power Sources (AREA)
Abstract
本发明涉及基于混合策略的智能移动设备电源管理方法及装置。其中方法包括:通过智能移动设备的操作系统获取设备的历史空闲状态的时间数据和对应的系统请求的时间数据;根据所述时间数据,预测后续的设备空闲状态的出现时刻和持续时长,以动态调节所述智能移动设备的亮屏时限阈值或休眠超时时限阈值;使运行过程中的设备在超过新的亮屏时限阈值的情况下进行息屏操作,并且使设备在超过新的休眠超时时限阈值的情况下进入休眠操作。其中装置包括预测模块、提前唤醒模块、分别与预测模块和提前唤醒模块的输出端连接的设备状态调度模块。本发明采用混合策略的电源管理方案,在系统空闲的时候有选择地切换到低功耗状态而又不明显降低设备的整体性能。
Description
技术领域
本发明涉及基于混合策略的智能移动设备电源管理方法及装置。
背景技术
当今移动终端设备迅速发展,电源管理问题亟待解决。主要有两种途径解决在有限的电池能量下延长产品的使用时间问题。首先可以从低功耗的电路设计方面考虑。其次,就是从电源管理角度控制系统的运行模式,使其在空闲的状态下进入省电状态。设备状态的转换不但需要时间也需要消耗电能,过于频繁的关闭只会造成性能和电能的双重损失。所以,电源管理算法的好坏直接影响到系统的性能和耗电量。
以往的电源管理算法大多需要建立模型,依靠模型参数,计算量大,所需存储空间大。而算法本身的运算还会产生功耗。因此,有需要一种电源管理方案,既要求运算量不高,还要在不同性能要求的条件下,使能耗达到最低值的最优超时时间。
发明内容
本发明提供一种用于智能移动设备的电源管理方法,所述方法包括以下步骤:
A、通过智能移动设备的操作系统获取设备的历史空闲状态的第一组时间数据和对应的系统请求所发生和结束的第二组时间数据;
B、根据所述第一组时间数据和所述第二组时间数据,预测后续的设备空闲状态的出现时刻和持续时长,以动态调节所述智能移动设备的亮屏时限阈值或休眠超时时限阈值,使得在所预测的设备空闲状态的持续时长的涨幅超过预设值时,减少所述亮屏时限阈值或所述休眠超时时限阈值;
C、使运行过程中的设备在超过新的亮屏时限阈值仍没有收到系统请求的情况下进行息屏操作,并且使设备在超过新的休眠超时时限阈值仍没有出现系统请求的情况下进入休眠操作。
其中,对于所述步骤A,所述系统请求由设备用户触控操作或后台程序切换至前台的响应动作而触发产生。
其中,在所述步骤B中,通过下式预测和计算设备空闲状态的出现时刻
tidle[i]=a×Tidle[i-1]+(1-a)tidle[i-1],
且通过下式预测和计算设备空闲状态的持续时长
Tidle[i]=C1+C2Tidle[i-1]-C3Tidle[i-1]2+C4Tactive[i]+C5Tidle[i-1]Tactive[i]-C6Tactive[i]2,
其中,i是计数标识,a是衰减因子常量,范围为0至1,tidle[i]是新空闲状态的出现时刻的预测值,tidle[i-1]是历史空闲状态的出现时刻,Tidle[i-1]是已发生的历史空闲状态时间长度,Tidle[i]是新空闲状态时间长度,Tactive[i]是当前运行状态的持续时间,C1至C6是常量,分别的取值范围为0至2。
进一步,所述步骤B包括:
使设备当前的休眠超时时限阈值存为第一超时时限阈值,且配置设备的亮屏时限阈值小于所述第一超时时限阈值;
在所预测的设备空闲状态的持续时长的涨幅超过预设值时减少所述休眠超时时限阈值并存为第二超时时限阈值,或者在所预测的设备空闲状态的持续时长的跌幅超过另一预设值时增加所述休眠超时时限阈值并存为第二超时时限阈值;
将第二超时时限阈值更新到当前的休眠超时时限阈值;
调整亮屏时限阈值仍然小于第一超时时限阈值和第二超时时限阈值中的较小者。
进一步,所述步骤A还包括:以每次改变休眠超时时限阈值为分段节点,分段地记录设备的功耗POW[i]和系统请求时间Tq[i];
所述步骤B还包括:确定前一段的设备的功耗与系统请求时间的比值与再前一段的设备的功耗与系统请求时间的比值的差为
Diff=POW[i-1]/Tq[i-1]-POW[i-2]/Tq[i-2],
如果Diff为负数且小于预设值,则增加亮屏时限阈值;
如果Diff为正数且大于预设值,则减少亮屏时限阈值。
进一步,所述步骤A还包括:以每次改变休眠超时时限阈值为分段节点,分段地记录设备的电池电压变化和电池剩余续航时长;
所述步骤B包括:
通过以下方式确定电池特性值
其中,i是计数标识,λ是大于零的指数常数,ΔTi是电池剩余续航时长,Δti是休眠超时时限阈值的待减少量,ΔVi是电池电压变化;
判断电池特性值是否超出预设的数值范围,是则取消调整休眠超时时限阈值。
进一步,所述步骤C包括:在到达设备空闲状态的所预测的出现时刻时,询问和确定没有系统请求,则使设备进入休眠操作,并且配置提前唤醒调整参数Tadujst、目标状态的切换延时值ts和下一个系统请求的预判时刻Tp,使得设备的唤醒时刻为Tp–ts+Tadujst,
其中,所述的下一个系统请求的预判时刻等于最后一次出现系统请求的结束时间加上预测的系统请求间隔时间tg,所预测的系统请求间隔时间是根据历史的系统请求时间间隔数据来计算。
进一步,所预测的系统请求时间间隔的计算步骤包括:配置三个数据窗口,分别对应存储较长、中等和较短的时间间隔的数据;判断当前系统请求与上一次系统请求的实际时间间隔,属于较长、中等或较短的时间间隔中的哪一类,并将所述实际时间间隔的数据存入对应的数据窗口,将历史记录中属于该类的数据窗口的数据数量加一;当三个窗口的数据达到最大数量,则剔除最旧的数据,并且判断所剔除的数据属于哪类数据窗口,将历史记录中属于该类的数据窗口的数据数量减一;判断出数据数量最多的数据窗口的类别,并且计算该类别的数据窗口中的所有数据的平均值作为预测的系统请求间隔时间tg。
进一步,所述方法还包括以下步骤:
D1、当对设备被唤醒后,发现持续一段预设时间后,仍然没有出现系统请求,则增加所述提前唤醒调整参数Tadujst;
D2、当对设备被唤醒后,发现已经出现了系统请求,则减少所述提前唤醒调整参数Tadujst。
本发明的技术方案还涉及一种计算机可读存储介质,其上储存有计算机程序指令,所述计算机程序指令被处理器执行时实施上述的方法。
本发明的技术方案还涉及一种用于智能移动设备的电源管理装置,包括:预测模块,用于接收到系统上次的实际空闲时间数据,并根据自身的一些历史数据,从而分析计算出下次空闲状态的出现时刻和持续时长;提前唤醒模块,用于监测设备的状态数据,以及记录系统请求历史信息,从而给出提前唤醒参数;分别与预测模块和提前唤醒模块的输出端连接的设备状态调度模块,用于根据其他各个模块输出的参数并结合设备自身的参数,将设备切换到运行状态、休眠状态、息屏状态或唤醒状态,使得系统响应延时最小,功耗最小;所述的计算机可读存储介质,该计算机可读存储介质被所述预测模块、提前唤醒模块和设备状态调度模块调用。
本发明对比现有技术,有如下的有益效果:采用混合策略的电源管理方法,在系统空闲的时候有选择地将系统切换到低功耗状态而又不影响设备的整体性能;在满足设备电池性能特性要求的条件下,控制超时阈值的动态调节,减少不必要的超时阈值修改,从而使设备性能和电池性能之间达到平衡;根据设备的历史空闲状态时间、历史系统请求时间等,综合预测和动态调整设备下一次的唤醒时机,让设备的唤醒时机更加贴近用户操作习惯。
附图说明
图1是根据本发明的方法的总体流程图。
图2是根据本发明的装置的示意性框图。
图3是根据本发明实施例中的减少超时时限阈值过程的示意图。
图4是根据本发明实施例中的增加超时时限阈值过程的示意图。
图5是根据本发明实施例中预判空闲时间以切换休眠状态的过程的示意图。
图6是根据本发明实施例中的电池特性曲线的示意图。
具体实施方式
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。
需要说明的是,如无特殊说明,当某一特征被称为“固定”、“连接”在另一个特征,它可以直接固定、连接在另一个特征上,也可以间接地固定、连接在另一个特征上。本文所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本文所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本文说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本发明。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种元件,但这些元件不应限于这些术语。这些术语仅用来将同一类型的元件彼此区分开。例如,在不脱离本公开范围的情况下,第一元件也可以被称为第二元件,类似地,第二元件也可以被称为第一元件。本文所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本发明的实施例,并且除非另外要求,否则不会对本发明的范围施加限制。
参照图1,智能移动设备的电源管理技术可以分为多个层次,由下而上可以从硬件层、固件层、系统软件层以及应用软件层分别进行电源管理。硬件层会将电源管理的策略直接实施到芯片电路中,其特点是效率高,但策略一般都比较简单;固件层则将电源管理策略写入固件驱动中(例如,BIOS);应用软件层则会针对特殊的应用场景来合理有效的使用系统中的服务设备,从而进行电源管理。根据本发明的电源管理方法属于系统软件层,一般会将算法策略实施在操作系统内核中,针对外来的一些服务请求,对系统中的一些服务设备进行行为操作,从而进行有效的电源管理。
在一些实施例中,根据本发明的电源管理方法包括以下步骤:
A、通过智能移动设备的操作系统获取设备的历史空闲状态的第一组时间数据和对应的系统请求所发生和结束的第二组时间数据;
B、根据所述第一组时间数据和所述第二组时间数据,预测后续的设备空闲状态的出现时刻和持续时长,以动态调节所述智能移动设备的亮屏时限阈值或休眠超时时限阈值,使得在所预测的设备空闲状态的持续时长的涨幅超过预设值时,减少所述亮屏时限阈值或所述休眠超时时限阈值;
C、使运行过程中的设备在超过新的亮屏时限阈值仍没有收到系统请求的情况下进行息屏操作,并且使设备在超过新的休眠超时时限阈值仍没有出现系统请求的情况下进入休眠操作。
以及可选的步骤D、根据设备唤醒时机,调整唤醒参数。
步骤A的实施细节
首先,系统请求是由设备用户触控操作或后台程序切换至前台的响应动作而触发产生。比如,用户以触控或者点击按键的方式操作智能移动设备会产生操作性的系统请求,而用户在智能移动设备上播放视频,虽然不会产生操控动作,但是播放程序需要让设备保持运行,会在播放过程中保持系统请求。每个系统请求具有起始时刻和持续时间。
步骤A还包括:以每次改变休眠超时时限阈值为分段节点,分段地记录设备的功耗POW[i]和系统请求时间Tq[i],用于后续步骤中作为阈值调整计算基础;同样,还以每次改变休眠超时时限阈值为分段节点,分段地记录设备的电池电压变化和电池剩余续航时长,用于后续步骤中来判断是否要进行超时时限阈值的依据。
步骤B的实施细节
在一些实施例中,可以采用指数平均法预测下一个空闲状态的时刻,同时通过非线性衰减方程预测设备在下一个空闲状态的持续时间。比如,可以通过下式预测和计算设备空闲状态的出现时刻
tidle[i]=a×Tidle[i-1]+(1-a)tidle[i-1],
且通过下式预测和计算设备空闲状态的持续时长
Tidle[i]=C1+C2Tidle[i-1]-C3Tidle[i-1]2+C4Tactive[i]+C5Tidle[i-1]Tactive[i]-C6Tactive[i]2,
其中,i是计数标识,a是衰减因子常量,范围为0至1,tidle[i]是新空闲状态的出现时刻的预测值,tidle[i-1]是历史空闲状态的出现时刻,Tidle[i-1]是已发生的历史空闲状态时间长度,Tidle[i]是新空闲状态时间长度,Tactive[i]是当前运行状态的持续时间,C1至C6是常量,分别的取值范围为0至2。优选地,在智能移动设备的一个优化实例中计算得到,C1=0.0740018,C2=0.553733,C3=0.00947348,C4=1.42233,C5=1.13883,C6=1.4913。
由此,可以根据所预测的设备空闲状态的持续时长,动态调整亮屏时限阈值。比如,根据系统请求负载的变化以及前次阀值所带来的效应动态地调整下一次阀值的大小。具体来说,例如上次空闲时间很大(系统两次请求的间隔很长),设备处于空闲态时仍然长时间处于运行状态(阀值期间),造成功耗浪费。在这种情况下,该策略会按照一定系数比例将下次的阀值减小,如图3所示;反之,如果上次空闲时间很短,在设备还未进入低功耗状态或者刚进入低功耗状态时,下一个服务请求就来了,使得设备不得不立即再次切换回运行状态,造成不必要的状态切换带来的系统延时和额外的能源浪费,在这种情况下,该策略会按照一定比例将下次的阀值增加,如图4所示。
参照图3和图4,在一个实施例中,所述步骤B可以包括以下步骤:
B11、使设备当前的休眠超时时限阈值存为第一超时时限阈值,且配置设备的亮屏时限阈值小于所述第一超时时限阈值;
B12、在所预测的设备空闲状态的持续时长的涨幅超过预设值时减少所述休眠超时时限阈值并存为第二超时时限阈值,或者在所预测的设备空闲状态的持续时长的跌幅超过另一预设值时增加所述休眠超时时限阈值并存为第二超时时限阈值;
B13、将第二超时时限阈值更新到当前的休眠超时时限阈值;
B14、调整亮屏时限阈值仍然小于第一超时时限阈值和第二超时时限阈值中的较小者。此步骤是考虑到设备进入休眠状态之前,应该优先关闭屏幕或者调暗屏幕亮度以达到节能效果,同时还需要持续一段时间再进入休眠状态,可以适应息屏后突然又来了系统请求,而避免频繁从休眠状态恢复反而会增加功耗。
在另一个实施例中,步骤B还包括:
B21、确定前一段的设备的功耗与系统请求时间的比值与再前一段的设备的功耗与系统请求时间的比值的差为Diff=POW[i-1]/Tq[i-1]-POW[i-2]/Tq[i-2];
B22、如果Diff为负数且小于预设值,则增加亮屏时限阈值;如果Diff为正数且大于预设值,则减少亮屏时限阈值。
本实施例适用于移动设备播放视频的应用场景。假如再前一段的设备工作在浏览网页模式,而上一段的时候工作在视频播放模式,通常视频播放模式的系统请求时间持续最长,功耗与请求时间的比值比浏览网页模式下要更低,此时适合增加亮屏时限阈值,就算用户点击暂停播放,也会让设备延迟息屏,以提高用户体验和设备性能。
在另一电源管理策略的实施例中,考虑到电池在放电过程中的输出电压不恒定,而随着电池单元的放电,电池电压逐渐降低,一旦电荷耗尽,电池电压将快速下降。因此,有必要在电源管理方法中考虑电池特性的策略,以避免电池工作到完全放电的电压值附近,同时尽量让电池工作在电压平缓变化的区间。
将原有超时时限阈值t0的基础上进一步降低(t0的变化值记为Δt),从而尽量延长电池处于平缓区域的时间。毫无疑问,在相同的应用环境中,一旦降低t0值,虽然会进一步降低系统的能量浪费,但同时也导致系统会更频繁地进入低功耗模式,这将在一定程度上带来系统性能的降低。
具体参照图6,其显示了电池在电压变化ΔV保持恒定的情况下通过改变Δt值所得到的电压变化曲线。很明显,t0值下降后电池的使用寿命将会增大;但是在降低Δt的同时,系统将会更频繁地进入低功耗模式,从而导致系统性能随之下降。而且t0下降得越快,一方面电池的寿命将越长,另一方面系统的性能也将越差。从图6中可以看出,当电池电压降到(V0-ΔV)后,t0值下降得越快(即t1>t2,Δt1<Δt2,Δt1=t0–t1,Δt2=t0–t2),其对应的电池使用寿命(剩余的续航分钟数)也将越长(ΔT1<ΔT2)。根据电池的该特性,在此引用Q来表示电池的变化效应,并令Q=(ΔTi)λ/Δti(i=1,2,…),其中λ>0且为常数。
此外,如果电池的Δt值保持恒定,ΔV的值越小,电池的使用寿命将会越长。因为ΔV值在越小的情况下,系统能够尽快地将超时阈值从t0下降变成t1,使得系统的平均功耗提早下降,从而电池的剩余容量也将会越大。但是,ΔV值在变小的同时也导致了系统性能更大程度的降低。因此,需要考虑系统性能和电池使用寿命之间的平衡,
可以通过ΔV、ΔT和Δt的历史数据或将要调整出的数据,计算电池的特性值Q,再通过Q的数值是否位于预设范围来限制超时时限阈值的变化,从而减少不必要的超时阈值修改,以使设备性能和电池性能之间达到平衡。
因此,步骤B包括以下步骤:
B31、通过以下方式确定电池特性值
其中,i是计数标识,i=1,2,…;
λ是大于零的指数常数,可以根据设备的系统节能模式设置为1(节能模式)至1.5(超级节能模式);
ΔTi是电池当前剩余续航时长,是已知值;
Δti是待调整的休眠超时时限阈值的减少量,是预测值;
ΔVi是当前时间节点距离上一次改变超时时限阈值的时间节点的电池电压变化,是已知值。
B32、再判断电池特性值超出预设的数值范围,则取消调整所述的休眠超时时限阈值。
上述步骤B31和B32,可以在将要调整超时时限阈值的时候触发,也可以在监测到电池电压有一定累积量变化(比如0.05v)的时候触发。
表1的数据是为了获得Q的优化值而实验得到的计算数据。Q的预设数值范围一般优选是0.2至0.3,使得设备性能和电池性能之间达到较优的平衡。
<![CDATA[ΔV<sub>i</sub>(V)]]> | <![CDATA[Δt<sub>i</sub>(s)]]> | <![CDATA[ΔT<sub>i</sub>(min)]]> | Q | <![CDATA[ΔV<sub>i</sub>(V)]]> | <![CDATA[Δt<sub>i</sub>(s)]]> | <![CDATA[ΔT<sub>i</sub>(min)]]> | Q |
0.1 | 30 | 40 | 0.149 | 0.4 | 30 | 20 | 0.290 |
0.1 | 50 | 52 | 0.075 | 0.4 | 50 | 23 | 0.190 |
0.2 | 30 | 33 | 0.235 | 0.5 | 30 | 16 | 0.250 |
0.2 | 50 | 41 | 0.166 | 0.5 | 50 | 19 | 0.185 |
0.3 | 30 | 25 | 0.286 | 0.6 | 30 | 13 | 0.287 |
0.3 | 50 | 29 | 0.198 | 0.6 | 50 | 20 | 0.210 |
表1
步骤C的实施细节
参照图5,在一个实施例中,步骤C可以具体包括以下步骤:
在到达设备空闲状态的所预测的出现时刻时,询问和确定没有系统请求,则使设备进入休眠操作,并且配置提前唤醒调整参数Tadujst、目标状态的切换延时值ts和下一个系统请求的预判时刻Tp,使得设备的唤醒时刻为Tp–ts+Tadujst。其中,下一个的系统请求的预判时刻等于最后一次出现系统请求的结束时间加上预测的系统请求间隔时间tg。
所预测的系统请求间隔时间tg是根据历史的系统请求时间间隔数据来计算,具体计算方法如下步骤。
C1、配置三个数据窗口,分别对应存储较长、中等和较短的时间间隔的数据;
C2、判断当前系统请求与上一次系统请求的实际时间间隔,属于较长、中等或较短的时间间隔中的哪一类,并将所述实际时间间隔的数据存入对应的数据窗口,将历史记录中属于该类的数据窗口的数据数量加一;
C3、当三个窗口的数据达到最大数量,则剔除最旧的数据,并且判断所剔除的数据属于哪类数据窗口,将历史记录中属于该类的数据窗口的数据数量减一;
C4、判断出数据数量最多的数据窗口的类别,并且计算该类别的数据窗口中的所有数据的平均值作为预测的系统请求间隔时间tg。
在一个具体的实例中,设三个窗口的总大小为N;当前实际系统请求的间隔时间为t;当前窗口中的总共数据个数为n;当前窗口中较长系统请求间隔时间的平均值以及个数分别为Tl、Cl;当前窗口中中等系统请求间隔的平均值以及个数分别为Tm、Cm;当前窗口中较短系统请求间隔时间的平均值以及个数分别为Ts、Cs。而算法伪代码实施如下:
得到当前实际系统请求间隔时间t;
判断t属于哪个类别:
If:t属于较长系统请求间隔时间
Then:
Tl=(Tl*Cl+t)/(Cl+1);
Cl=Cl+1;
Else if t属于中等系统请求间隔时间
Then:
Tm=(Tm*Cm+t)/(Cm+1);
Cm=Cm+1;
Else if t属于较短系统请求间隔时间
Then:
Ts=(Ts*Cs+t)/(Cs+1);
Cs=Cs+1;
更新当前窗口元素n=n+1;
If n>=N(窗口元素已满,需要踢出最旧的系统请求间隔时间)
Then:
取出队列第一个元素(窗口中最旧的一个系统请求间隔时间)记为t_del
判断t_del属于哪个类别
If:t_del属于较长系统请求间隔时间
Then:
Tl=(Tl*Cl-t_del)/(Cl-1);
Cl=Cl-1;
Else if t_del属于中等系统请求间隔时间
Then:
Tm=(Tm*Cm-t_del)/(Cm-1);
Cm=Cm-1;
Else if t_del属于较短系统请求间隔时间
Then:
Ts=(Ts*Cs-t_del)/(Cs-1);
Cs=Cs-1;
比较Cl、Cm、Cs的大小,将Ci(i对应于l、m、s)值最大的相应的Tj(j对应于l、m、s)作为下一个预判系统请求间隔时间输出。
步骤D的实施细节
步骤D还包括以下步骤:
D1、当对设备被唤醒后,发现持续一段预设时间后,仍然没有出现系统请求,则增加所述提前唤醒调整参数Tadujst;
D2、当对设备被唤醒后,发现已经出现了系统请求,则减少所述的提前唤醒调整参数Tadujst。
返回参照图2,根据本发明的用于智能移动设备的电源管理装置可以包括:预测模块、提前唤醒模块、分别与预测模块和提前唤醒模块的输出端连接的设备状态调度模块、特殊情况处理模块。
预测模块用于接收到系统上次的实际空闲时间数据并根据自身的一些历史数据,从而分析计算出下次空闲状态的出现时刻和持续时长。预测模块一般实施上述的步骤B。
设备状态调度模块用于根据其他各个模块输出的参数并结合设备自身的参数,将设备切换到运行状态、休眠状态、息屏状态或唤醒状态,使得系统响应延时最小,功耗最小。如果状态调度模块决定将设备维持在运行态(一般是因为预判空闲时间较短),那么它会每隔一小段时间询问一下系统状态,即系统请求是否到来,如果询问了一定次数后,系统请求仍未到来,即设备仍然处于空闲状态,那么状态调度模块会通知分段滑动窗口进行一次新的预判,并把前面的请求间隔时间作为参数提供给分段滑动窗口。设备状态调度模块一般实施上述的步骤C。
提前唤醒模块,用于监测设备的状态数据,以及记录系统请求历史信息,从而给出提前唤醒参数。提前唤醒模块一般实施上述的步骤C和D。
特殊情况处理模块,用于对一些特殊情况做出判断并给其他模块一定的信息反馈。所谓特殊情况主要是空闲时间特别长(比如超过10分钟)或者特别短(10秒)。特殊情况处理模块主要接受的参数就是来自于预判空闲时间,根据该空闲时间判断出是否属于特殊情况以及哪种特殊情况,然后将判断出的结果传递给设备状态调度模块。对于超长超短时间特殊处理模块,具体分为以下两种情况:
1)如果超长超短时间特殊处理模块确定下一个空闲时间属于超长时间,那么状态调度模块将把设备切换到最低功耗态,并不采用提前唤醒,直到下一个系统请求到来时,才将设备切换回运行状态。这么做是因为,如果空闲时间比较长,把设备留在一个功耗比较大的状态会造成比较大的能源浪费。
2)如果超长超短时间特殊处理模块确定下一个空闲时间属于超短时间,那么状态调度模块将让设备维持在运行状态,而不切换到任何子状态,当下个系统请求到来时,直接进行服务。这么做是因为,如果空闲时间很短,即下一个系统请求可能很快就会到来,那么就应该避免频繁的状态切换而造成的额外的功耗浪费和系统延时。
应当认识到,本发明实施例中的方法步骤可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
此外,可按任何合适的顺序来执行本文描述的过程的操作,除非本文另外指示或以其他方式明显地与上下文矛盾。本文描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、RAM、ROM等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还可以包括计算机本身。
计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。
Claims (10)
1.一种用于智能移动设备的电源管理方法,其特征在于,所述方法包括以下步骤:
A、通过智能移动设备的操作系统获取设备的历史空闲状态的第一组时间数据和对应的系统请求所发生和结束的第二组时间数据;
B、根据所述第一组时间数据和所述第二组时间数据,预测后续的设备空闲状态的出现时刻和持续时长,以动态调节所述智能移动设备的亮屏时限阈值或休眠超时时限阈值,使得在所预测的设备空闲状态的持续时长的涨幅超过预设值时,减少所述亮屏时限阈值或所述休眠超时时限阈值;
C、使运行过程中的设备在超过新的亮屏时限阈值仍没有收到系统请求的情况下进行息屏操作,并且使设备在超过新的休眠超时时限阈值仍没有出现系统请求的情况下进入休眠操作;
其中,在所述步骤B中,通过下式预测和计算设备空闲状态的出现时刻
tidle[i]=a×Tidle[i-1]+(1-a)tidle[i-1],
且通过下式预测和计算设备空闲状态的持续时长
Tidle[i]=C1+C2Tidle[i-1]-C3Tidle[i-1]2+C4Tactive[i]+C5Tidle[i-1]Tactive[i]-C6Tactive[i]2,
其中,i是计数标识,a是衰减因子常量,范围为0至1,tidle[i]是新空闲状态的出现时刻的预测值,tidle[i-1]是历史空闲状态的出现时刻,Tidle[i-1]是已发生的历史空闲状态时间长度,Tidle[i]是新空闲状态时间长度,Tactive[i]是当前运行状态的持续时间,C1至C6是常量,分别的取值范围为0至2。
2.根据权利要求1所述的方法,其中,对于所述步骤A,
所述系统请求由设备用户触控操作或后台程序切换至前台的响应动作而触发产生。
3.根据权利要求1所述的方法,其中,所述步骤B包括:
使设备当前的休眠超时时限阈值存为第一超时时限阈值,且配置设备的亮屏时限阈值小于所述第一超时时限阈值;
在所预测的设备空闲状态的持续时长的涨幅超过预设值时减少所述休眠超时时限阈值并存为第二超时时限阈值,或者在所预测的设备空闲状态的持续时长的跌幅超过另一预设值时增加所述休眠超时时限阈值并存为第二超时时限阈值;
将第二超时时限阈值更新到当前的休眠超时时限阈值;
调整亮屏时限阈值仍然小于第一超时时限阈值和第二超时时限阈值中的较小者。
4.根据权利要求1所述的方法,其中,
所述步骤A还包括:以每次改变休眠超时时限阈值为分段节点,分段地记录设备的功耗POW[i]和系统请求时间Tq[i];
所述步骤B还包括:确定前一段的设备的功耗与系统请求时间的比值与再前一段的设备的功耗与系统请求时间的比值的差为
Diff=POW[i-1]/Tq[i-1]-POW[i-2]/Tq[i-2],
如果Diff为负数且小于预设值,则增加亮屏时限阈值;
如果Diff为正数且大于预设值,则减少亮屏时限阈值。
6.根据权利要求1所述的方法,其中,所述步骤C包括:
在到达设备空闲状态的所预测的出现时刻时,询问和确定没有系统请求,则使设备进入休眠操作,并且配置提前唤醒调整参数Tadujst、目标状态的切换延时值ts和下一个系统请求的预判时刻Tp,使得设备的唤醒时刻为Tp–ts+Tadujst,
其中,所述的下一个系统请求的预判时刻等于最后一次出现系统请求的结束时间加上预测的系统请求间隔时间tg,所预测的系统请求间隔时间是根据历史的系统请求时间间隔数据来计算。
7.根据权利要求6所述的方法,其中,所预测的系统请求时间间隔的计算步骤包括:
配置三个数据窗口,分别对应存储较长、中等和较短的时间间隔的数据;
判断当前系统请求与上一次系统请求的实际时间间隔,属于较长、中等或较短的时间间隔中的哪一类,并将所述实际时间间隔的数据存入对应的数据窗口,将历史记录中属于该类的数据窗口的数据数量加一;
当三个窗口的数据达到最大数量,则剔除最旧的数据,并且判断所剔除的数据属于哪类数据窗口,将历史记录中属于该类的数据窗口的数据数量减一;
判断出数据数量最多的数据窗口的类别,并且计算该类别的数据窗口中的所有数据的平均值作为预测的系统请求间隔时间tg。
8.根据权利要求6所述的方法,其中,所述方法还包括以下步骤:
D1、当对设备被唤醒后,发现持续一段预设时间后,仍然没有出现系统请求,则增加所述提前唤醒调整参数Tadujst;
D2、当对设备被唤醒后,发现已经出现了系统请求,则减少所述的提前唤醒调整参数Tadujst。
9.一种计算机可读存储介质,其上储存有程序指令,所述程序指令被处理器执行时实施如权利要求1至7中任一项所述的方法。
10.一种用于智能移动设备的电源管理装置,其特征在于,包括:
预测模块,用于接收到系统上次的实际空闲时间数据,并根据自身的一些历史数据,从而分析计算出下次空闲状态的出现时刻和持续时长;
提前唤醒模块,用于监测设备的状态数据,以及记录系统请求历史信息,从而给出提前唤醒参数;
分别与预测模块和提前唤醒模块的输出端连接的设备状态调度模块,用于根据其他各个模块输出的参数并结合设备自身的参数,将设备切换到运行状态、休眠状态、息屏状态或唤醒状态,使得系统响应延时最小,功耗最小;
根据权利要求9所述的计算机可读存储介质,所述计算机可读存储介质被所述预测模块、提前唤醒模块和设备状态调度模块调用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310007883.8A CN115963914A (zh) | 2023-01-04 | 2023-01-04 | 基于混合策略的智能移动设备电源管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310007883.8A CN115963914A (zh) | 2023-01-04 | 2023-01-04 | 基于混合策略的智能移动设备电源管理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115963914A true CN115963914A (zh) | 2023-04-14 |
Family
ID=87359926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310007883.8A Pending CN115963914A (zh) | 2023-01-04 | 2023-01-04 | 基于混合策略的智能移动设备电源管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115963914A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116610204A (zh) * | 2023-07-19 | 2023-08-18 | 碳丝路文化传播(成都)有限公司 | 一种用电设备电源管理方法、系统、电子设备及介质 |
CN117119783A (zh) * | 2023-10-25 | 2023-11-24 | 广东迅扬科技股份有限公司 | 一种模块待机功耗的控制方法 |
-
2023
- 2023-01-04 CN CN202310007883.8A patent/CN115963914A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116610204A (zh) * | 2023-07-19 | 2023-08-18 | 碳丝路文化传播(成都)有限公司 | 一种用电设备电源管理方法、系统、电子设备及介质 |
CN116610204B (zh) * | 2023-07-19 | 2023-11-14 | 碳丝路文化传播(成都)有限公司 | 一种用电设备电源管理方法、系统、电子设备及介质 |
CN117119783A (zh) * | 2023-10-25 | 2023-11-24 | 广东迅扬科技股份有限公司 | 一种模块待机功耗的控制方法 |
CN117119783B (zh) * | 2023-10-25 | 2024-01-30 | 广东迅扬科技股份有限公司 | 一种模块待机功耗的控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115963914A (zh) | 基于混合策略的智能移动设备电源管理方法及装置 | |
KR102210355B1 (ko) | 적응적 전력 제어 루프 | |
US8225121B2 (en) | Forced idle of a data processing system | |
US7596705B2 (en) | Automatically controlling processor mode of multi-core processor | |
US7702938B2 (en) | Method and apparatus for implementing a hybrid power management mode for a computer with a multi-core processor | |
US7017061B2 (en) | Method and system for dynamically adjusting power consumption of an information handling system | |
EP3256927B1 (en) | Suppressing power spikes | |
US7949888B2 (en) | Forced idle of a data processing system | |
US20130013911A1 (en) | Technique for Selecting a Frequency of Operation in a Processor System | |
CN104424031B (zh) | 一种处理器工作频率的控制方法及装置 | |
US20150160714A1 (en) | Method of dynamically contolling power in multicore environment | |
US20130097437A9 (en) | Method, apparatus, and system for energy efficiency and energy conservation including optimizing c-state selection under variable wakeup rates | |
JP5678233B2 (ja) | マルチプロセッサワイヤレスデバイスにおける熱負荷のセンサレス検出および管理 | |
US8769322B2 (en) | Method for adjusting clock frequency of a processing unit of a computer system and related device | |
JP2008165798A (ja) | データ処理装置におけるプロセッサの性能管理 | |
EP3242184A1 (en) | Adaptive optimization of low power strategies | |
US11960738B2 (en) | Volatile memory to non-volatile memory interface for power management | |
EP1376314A1 (en) | Clock frequency control method and electronic apparatus | |
CN110320813B (zh) | 物联网设备的电源管理方法及装置 | |
CN113238648B (zh) | 一种功耗调整方法及其装置 | |
CN114721488A (zh) | 一种风扇转速控制方法及系统 | |
CN110737322A (zh) | 信息处理方法及电子设备 | |
Triki et al. | Reinforcement learning-based dynamic power management of a battery-powered system supplying multiple active modes | |
US20190204902A1 (en) | Method and apparatus for controlling power consumption of an integrated circuit | |
EP3067779B1 (en) | Power managing method and power supplying system applying the power managing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |