降低中央处理器能耗的方法、装置及终端制造方法及图纸

技术编号:13275973 阅读:271 留言:0更新日期:2016-05-19 01:26
本发明专利技术公开了一种降低中央处理器能耗的方法、装置及终端,方法,包括:获取中央处理器CPU的主存访问率;根据所述主存访问率,调整所述CPU的主频。本发明专利技术通过获取CPU的主存访问率,根据主存访问率动态调整CPU的主频,在保证性能的前提下,尽可能的将CPU的主频调整为一个合理的主频,进而保证CPU的能耗最低,尽可能的降低CPU的能耗。

【技术实现步骤摘要】

本专利技术涉及计算机领域,特别是涉及一种降低中央处理器能耗的方法、装置及终 端。
技术介绍
自从第三代移动通信(3G)以来,移动互联网得到了迅猛的发展。基于对未来的展 望,人们提出了普适计算,即无处不在的计算。目前,第四代移动通信技术(4G)已经开始多 个国家建设并使用。所以,可以预见随着时间的推移,移动互联网将持续高速发展。移动互 联网的终端设备繁多,但是使用的操作系统还是以谷歌(Google)公司的Android系统,苹 果公司的I0S系统以及微软的Windows Phone系统为主。其中,Android系统占据了绝大 部分市场份额。 由于移动设备的电源(即电池)能量非常有限,且耗能越大发热越严重,所以电 源管理对移动设备就显得十分关键,也成为当前工作努力的方向之一。Google的Android 系统基于Linux内核2. 6. 33,并对其电源管理和内存管理以及运行时管理进行了修改以 适应移动设备。对Linux内核电源管理进行改进的原因是:运行Android系统的移动设备 电池容量有限,且节能特征与个人电脑不同。谷歌公司专门开发了针对外围设备电源管理 的电源驱动,这个驱动可以控制屏幕显示和背光,键盘背光以及按钮背光。基本的原理是: 通过锁和定时器来切换系统的状态,使系统的功耗降至最低。外围设备的电源控制主要是 通过"唤醒锁"(WakeLocks)来实现的。应用程序通过应用框架中的一个电源管理(Power Management)API (Application Programming Interface,应用程序编程接口)来申请"唤醒 锁",并通过"唤醒锁"使屏幕正常显示,并使CPU (Central Processing Unit,中央处理器, 以下简称处理器)处于AWAKE状态以快速的处理中断事件。具体过程如图1所示。 在移动设备中,CPU是主要的耗能设备之一。Android的电源管理中对CPU的能耗 管理通过Governor来实现。目前,An droid支持的Governor主要有Performance Governor、 Powersave Governor 和 OnDemand Governor。其中,Performance Governor 始终将 CPU 保 持在最高频率;Powersave Governor -直将CPU保持在最低频率;OnDemand Governor根 据CPU的使用率来设置CPU频率,具体来说就是设定两个的阀值up_ultilization和down_ ultilization,当CPU使用率大于up_ultilization时,直接将CPU频率设置为最大值,当 CHJ使用率小于down_ultilization时,则将CPU频率减少20%。用户可以根据需要选择 合适的Governor。另外,Android提供了一个Userspace governor,它可以向用户提供可 用的频率信息,允许用户根据这些信息通过Linux sysfs接口实现用户级的governor来控 制CPU频率。 Android提供了一个比较简单的电源管理框架,该框架通过PowerManager类向应 用程序开发者提供了一组电源管理接口。Android的电源管理主要用来解决当系统中的某 些组件空闲或者没有被使用时来减少能耗。另外,对于CPU,Google的Android系统是通过 动态调整电压和CPU主频(Dynamic Voltage and Frequency Scaling,动态电压频率调整, 简写DVFS)来节省电能,以延长电池的寿命,该方法继承自Linux电源管理中对CPU的节能 管理方法。例如,当CPU和外围设备(比如显示屏)处于空闲状态时,则将CPU或者外围设 备切换到空闲模式或者省电模式。另外,如果一个应用不需要一直运行在最高性能时,可以 通过降低主频和电压以减少能耗。通常,DVFS -边试着保持系统性能,一边试图去降低能 耗。这种电源管理方法的初衷是针对台式电脑或者笔记本电脑,它以性能为导向即在保证 不影响系统性能的情况下节省电能。 然而,对于移动终端用户,在某些情况下,用户可能更注重最大限度地节省电能。 例如当用户使用智能手机以进行视频格式转换并上传到网上与朋友分享时,由于这通常需 要较长的时间而不会立即完成,所以用户可能需要以最低的能耗来完成该任务。为了达到 这个目的通常会选择PowerSave governor将CPU主频和电压设置到最低。但是,最低CPU 主频和电压并不一定是最优的降低能耗方法。因为在真实的程序执行过程中,CPU可能需 要停下来等待外围进行I/O处理。 另外,对于一个偏计算密集型的任务,由于Android系统选择了最低的CPU主频和 电压,所以计算时间就加长,能耗反而可能相对于选择适中的CPU主频和电压有所增加,采 用最低主频和电压也可能造成终端反应比较慢。Android在对于CPU频率和电压的管理实 际上是依赖于Linux内核,然而其默认的Ondemand governor的实现不适合这种情况,即用 户想要在任务正在运行时最大限度的节省能耗。因为在这种情况下OnDemand这种以性能 为导向的节能方法可能会不适合。若选择OnDemand governor,由于OnDemand governor采 用两个阀值来调节CPU频率,该方法的优点是简单,容易实现,但是设置不够精确,该任务 很可能达到设定阀值而直接把CPU频率设置成最大,而该任务可能并不需要把CPU频率设 置成最大,从而没有达到用户设想的以最低能耗完成该任务。现有技术不能针对不同的情 况对CPU频率进行优化调整,以尽可能的节省能耗。
技术实现思路
本专利技术要解决的技术问题是提供一种降低中央处理器能耗的方法、装置及终端, 用以解决现有技术中CPU需要尽可能降低能耗的问题。 为解决上述技术问题,一方面,本专利技术提供一种降低中央处理器能耗的方法,包 括: 获取中央处理器CPU的主存访问率; 根据所述主存访问率,调整所述CPU的主频。 进一步,根据所述主存访问率,调整所述CPU的主频,具体包括: 在当前获得的主存访问率高于上次获得的主存访问率时,降低所述CPU的主频; 在当前获得的主存访问率低于上次获得的主存访问率时,提高所述CPU的主频。 进一步,根据公式(1)计算所述主存访问率: 其中,Maccess Mte是主存访问率,Na_ss nuss是CPU访问缓存cache失效的次数, NinstructlDn是CPU执行的指令条数〇 进一步,根据公式(2)确定调整后的CPU主频: 其中,f。#是目标主频,即调整后的CPU主频;f_是CPU支持的最小主频;f_是 CHJ支持的最大主频,M_是主存支持的最大主存访问率。 进一步包括,当CPU没有任务执行时,则调整CPU的主频为最低主频。 另一方面,本专利技术还提供一种降低中央处理器能耗的装置,包括: 主存访问率获取单元,用于获取中央处理器CPU的主存访问率; CPU主频调整单元,用于根据所述主存访问率,调整所述CPU的主频。 进一步,所述CPU主频调整单元具体用于: 在当前获得的主存访问率高于上次获得的主存访问率时,降低所述CPU的主频本文档来自技高网
...

【技术保护点】
一种降低中央处理器能耗的方法,其特征在于,包括:获取中央处理器CPU的主存访问率;根据所述主存访问率,调整所述CPU的主频。

【技术特征摘要】

【专利技术属性】
技术研发人员:郑鹏飞
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

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

1