首页> 中国专利> 基于双阈值功耗自适应的DVFS调节算法

基于双阈值功耗自适应的DVFS调节算法

摘要

本发明提供一种基于双阈值功耗自适应的DVFS调节算法,包括实时获取处理器的利用率与处理器功耗值;判断处理器的利用率是否在第一级阈值之内;若是,则维持工作频率不变;以及若否,则执行以下步骤:判断处理器的利用率是否超出第二级阈值;若否,则采用分频的方式调节频率,以及若是,执行以下步骤:判断处理器利用率是否低于第二级阈值的下限或者超出第二级阈值的上限与功耗阈值;若否,则采用分频的方式调节频率;若是,则采用锁相环的方式调节频率,同时变更电压值。本发明的有益效果是合理利用处理器性能、降低处理器功耗。

著录项

  • 公开/公告号CN105511591A

    专利类型发明专利

  • 公开/公告日2016-04-20

    原文格式PDF

  • 申请/专利权人 天津飞腾信息技术有限公司;

    申请/专利号CN201511034909.X

  • 发明设计人 王济铭;徐实;王晓凤;

    申请日2015-12-31

  • 分类号G06F1/32(20060101);

  • 代理机构11315 北京国昊天诚知识产权代理有限公司;

  • 代理人刘昕

  • 地址 300450 天津市滨海新区海洋高新技术开发区信安创业广场5号楼

  • 入库时间 2023-12-18 15:46:18

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-10-12

    授权

    授权

  • 2016-05-18

    实质审查的生效 IPC(主分类):G06F1/32 申请日:20151231

    实质审查的生效

  • 2016-04-20

    公开

    公开

说明书

技术领域

本发明属于计算机算法技术领域,尤其是涉及一种基于双阈值功耗自适应的DVFS调 节算法。

背景技术

DVFS技术是一种针对处理器功耗优化的技术,其主要是通过调节处理器的频率与电 压让处理器在处理不同负载的任务时处于不同的性能水平下。这种技术既需要处理器硬 件的支持也需要软件的配合使用。

在支持DVFS的处理器中,硬件支持的电压调节有两种方式:片外调节与片内调节。 采用片外调节器的处理器在调节电压时,需要的稳定时间比较长,一般需要几十微妙到 几十毫秒,但是,其优点也比较明显,就是电源转换效率相对比较高,最大可以达到90%。 但是,这个相对较高的电源转换效率与负载有很大关系,当输出功率较大时,电源转换 效率相对来说比较高。正是因为片外的电压调节方式稳定时间比较长,所以在采用片外 调机器的处理器上调节电压时不宜过频。另一种片内调节的方式可以将电压切换的时间 缩短到纳秒级,为处理器内较短的电压切换时间对实现快速调节提供了非常有利的条件。 虽然片内调节器所需要的切换时间相对于片外调节器来说大大降低了,但是,其电源转 换率相对来说要低一些,通常在70%到80%之间。而且,片内调节方式在处理器内部占用 的硅片面积开销比较大,约每瓦特2mm2

在支持DVFS的处理器中,硬件支持的频率调节有两种方式:分频器调节与锁相环调 节。锁相环与分频器调节这两种方式也分别有各自的优缺点。对于锁相环来说,从开始 调整到最终稳定下来,需要一个锁定的时间,并且,在这个时间内,时钟信号输出可能 会造成执行错误。因此,在采用锁相环调节频率的处理器中,调节频率时会关闭时钟一 段时间去等待时钟稳定。而且这个时间一般在几十微秒以上。因此,在采用锁相环调节 频率时,不适合频繁调节,这也导致在设计DVFS算法时不适合细粒度调节。相对于锁相 环调节频率,以分频器调节的方式则快很多。并且,没有锁定时间,它从接收到信号至 产生稳定输出只需要几个时钟周期就可以完成。因此,可以实现比较快速的频率调节, 但是,这种调节方式所获取的频率有可能并非50%占空比。

在处理器有了硬件上支持DVFS技术之后,还需要软件的相关算法配合调节。目前在 软件调节上主要是检测到处理器的idle时刻,并在这个时刻降低处理器的频率与电压来 降低处理器的功耗,并且不会对性能造成较大损失。在软件调节中DVFS主要分为两大类: 一种是闭环的DVFS,另一种是开环的DVFS。在使用开环的DVFS调节时,一般会考虑具 体的工作情况。需要事先设定好一些工作的电压和频率的匹配状态集合点。当处理器在 运行某些应用程序时,实时采集一些必要的信息,并结合相关的控制调节算法,最后根 据算法的结果选取一个预先设定的合适工作状态。然而,在闭环的DVFS调节中,主要是 一种自适应电压频率调节,在处理器内部有一个延时采样的性能监控器,这个监控器与 供电控制电压模块和处理器频率控制模块形成一个闭环的系统。在运行程序时,性能监 控器采集一些必要的信息来综合决定最终的处理器合适的工作电压与频率。处理器中开 环与闭环DVFS调节最大的区别在于,有没有预先设定好的电压与频率的值。在开环系统 中,会预先设定好一系列的电压频率值,在运行程序时,通过获取的处理器信息,合理 的选择预先设定好的频率和电压。然而,闭环系统中,并没有预先设定好的频率与电压 值,都是在处理器工作时,通过性能监控器收集信息,来预测和判断目前处理器最合适 的运行频率以及工作电压,然后再根据相应的算法进行调节。这是一个软硬件协同设计 的过程,而且设计相当复杂。目前并没有一个非常完善的能够通用的采用闭环调节的DVFS 方法。所以,大多数DVFS还是以开环为主。

发明内容

本发明的目的是为了克服现有技术不足,提供一种基于双阈值功耗自适应的DVFS调 节算法,合理利用处理器性能、降低处理器功耗。

本发明的技术方案是:一种基于双阈值功耗自适应的DVFS调节算法,包括:

实时获取处理器的利用率与处理器功耗值;

判断处理器的利用率是否在第一级阈值之内;

若是,则维持工作频率不变;以及若否,则执行以下步骤:

判断处理器的利用率是否超出第二级阈值;

若否,则采用分频的方式调节频率,以及若是,执行以下步骤:

判断处理器利用率是否低于第二级阈值的下限或者超出第二级阈值的上限与功耗阈 值;

若否,则采用分频的方式调节频率;若是,则采用锁相环的方式调节频率,同时变 更电压值。

进一步,所述处理器的利用率和工作频率呈正相关。

进一步,所述第一级阈值、第二级阈值和功耗阈值将所述处理器的调节区间划分为 了六个,当处理器的利用率在第一级阈值内时,则维持工作频率不变,如果处理器利用 率介于第一级阈值下限与第二级阈值下限之间时,就采用分频的方式迅速降低频率;如 果处理器利用率介于第一级阈值上限与第二级阈值上限之间时,就采取分频调节的方式 迅速升高频率。

进一步,当处理器利用率超出第二级阈值的上限但是功耗要低于功耗阈值,采取分 频调节频率的方式升高频率,如果此时已经是该电压下的最高频率,那么就继续维持此 频率。

进一步,如果处理器利用率超出第二级阈值,并且此时处理器的功耗超出了功耗阈 值,则采取锁相环的方式升高处理器基准频率,并且在调节频率之前需要先升高电压, 保证此时的电压能够正常支持所需要的新频率。

进一步,如果处理器利用率低于第二级阈值的下限时,则采用锁相环的方式降低处 理器基准频率,并且在降低频率之后再降低处理器电压。

进一步,所述第一级阈值包含在所述第二级阈值内,所述功耗阈值大于第二级阈值 上限。

进一步,当所述处理器为多核时,可以将所述处理器划分为多个簇,每个簇中包含 单个或者多个核,如果所述处理器的多个核同时需要调频,在多核形成的一个簇中,一 旦有一个核的处理器利用率超过第一级阈值、第二级阈值或者功耗阈值的上限值,那么 将该核所在的整个簇频率提升到基准频率。

本发明具有的优点和积极效果是:由于采用上述技术方案,采用处理器利用率的双 极阈值控制,能够在双重限制下让处理器性能得到更合理的利用。相对于传统的单阈值 算法来说,这种双阈值能够在处理器利用率超过第一级阈值时启动调频机制,可以尽早 地把处理器的性能控制在合理的范围。一旦超过第二级阈值时,还可以启动第二套调频 方案再次控制处理器性能。因此,这种双阈值的调节方式具有提前控制,后续协调的双 重压制的特点,能够达到更好地利用处理器性能的目的。

附图说明

图1是本发明的基于双阈值功耗自适应的DVFS调节算法的流程图;

图2是本发明的处理器调节区间结构示意图。

具体实施方式

下面结合附图对本发明做详细说明。

如图1本发明的基于双阈值功耗自适应的DVFS调节算法的流程图所示,本发明提供 一种基于双阈值功耗自适应的DVFS调节算法,包括:

步骤101,实时获取处理器的利用率与处理器功耗值。

步骤102,判断处理器的利用率是否在第一级阈值之内;若是,则维持工作频率不变; 以及若否,则执行以下步骤:

步骤103,判断处理器的利用率是否超出第二级阈值;若否,则采用分频的方式调节 频率,以及若是,执行以下步骤:

步骤104,判断处理器利用率是否低于第二级阈值的下限或者超出第二级阈值的上限 与功耗阈值;若否,则采用分频的方式调节频率。

步骤105,若是,则采用锁相环的方式调节频率,同时变更电压值。

所述处理器的利用率和工作频率呈正相关。

工作频率会随着使用率的升高而升高,以及随着使用率的下降而降低。一般而言, 当处理器执行字处理、网络浏览或其它2D绘图等低使用率的应用程序时,只需要以较低 的工作频率来运行即能满足使用需求。相反地,当处理器执行3D绘图、视频转码、解压 缩或游戏软件等高使用率的应用程序时,则必需大幅提高工作频率才能满足高负载情况 下的使用需求。因此,处理器的工作频率和使用率之间具有相对应的关系,也就是说, 根据使用率范围的不同,处理器会分别以相应的工作频率来运作,从而在不同的使用率 底下提供适当的工作频率,使处理器运行时的整体能耗降低。也就是处理器在不同使用 率的使用状态下,可以采用的优选的工作频率,从而在兼具高效能与节能的模式下运作。 其中,工作频率与使用率的匹配关系可以是但并不局限于:37.5%的工作频率对应10% 以下的使用率、62.5%的工作频率对应10-40%的使用率、75%的工作频率对应41-60% 的使用率、87.5%的工作频率对应61-80%的使用率、以及100%的工作频率对应81-100 %的使用率等。

所述第一级阈值、第二级阈值和功耗阈值将所述处理器的调节区间划分为了六个, 当处理器的利用率在第一级阈值内时,则维持工作频率不变,如果处理器利用率介于第 一级阈值下限与第二级阈值下限之间时,就采用分频的方式迅速降低频率;如果处理器 利用率介于第一级阈值上限与第二级阈值上限之间时,就采取分频调节的方式迅速升高 频率。

当处理器利用率超出第二级阈值的上限但是功耗要低于功耗阈值,采取分频调节频 率的方式升高频率,如果此时已经是该电压下的最高频率,那么就继续维持此频率。

如果处理器利用率超出第二级阈值,并且此时处理器的功耗超出了功耗阈值,则采 取锁相环的方式升高处理器基准频率,并且在调节频率之前需要先升高电压,保证此时 的电压能够正常支持所需要的新频率。

如果处理器利用率低于第二级阈值的下限时,则采用锁相环的方式降低处理器基准 频率,并且在降低频率之后再降低处理器电压。

所述第一级阈值包含在所述第二级阈值内,所述功耗阈值大于第二级阈值上限。

当所述处理器为多核时,可以将所述处理器划分为多个簇,每个簇中包含单个或者 多个核,如果所述处理器的多个核同时需要调频,在多核形成的一个簇中,一旦有一个 核的处理器利用率超过第一级阈值、第二级阈值或者功耗阈值的上限值,那么将该核所 在的整个簇频率提升到基准频率。

以一个16核处理器为例。将其16个核平均划分为4个部分,每个部分占4个核, 这4个核形成一个簇,在调节频率时,以簇为单位可以进行频率的分频调节。电压和基 准频率的调节是以整个芯片为粒度。

当所述处理器为多核时,本实施例基于双阈值功耗自适应的DVFS调节算法的实施步 骤如下:

步骤201,开启双阈值功耗自适应的DVFS调节。

步骤202,获取每个核的利用率与当前处理器的功耗值,并且计算每个簇里面的处理 器利用率平均值。查找是否有某一个核的利用率超过预设值的。如果有,就将该核所在 的簇通过分频调节的方式升至基准频率。如果没有出现单核利用率超过预设值的情况, 那么就执行下一步。

所述预设值可以处理器性能设定,在这里可以设定为95%。

步骤203,判断每个簇,是否出现某一个簇内部核的平均利用率超过第一级阈值的区 间,如果超过了第一级阈值的区间,但是没有超过第二级阈值的区间,那么,就采用分 频调节的方式对该簇进行降频或者升频处理。如果,簇内部核的平均利用率未超过第一 级阈值的区间,那么维持该簇的频率不变,但是如果已经超出第二级阈值,那么就执行 下一步。

步骤204,如果所有簇的平均利用率都低于第二级阈值的下限,首先通过锁相环的调 节方式降低处理器的基准频率,然后再降低处理器的电压,使新的电压处于一个能够维 持该基准频率运行的最低值。如果所有簇的平均利用率都超过了第二级阈值的上限并且 当前的处理器功耗超过了预先设定的功耗阈值,首先升高处理器的电压,然后通过锁相 环的调节方式升高处理器的基准频率。如果所有簇的平均利用率都超过了第二级阈值的 上限,但是当前处理器的功耗并没有超过预先设定的功耗阈值,那么此时就将簇的频率 维持在上一次调节的基准频率。

采用处理器利用率的双极阈值控制,能够在双重限制下让处理器性能得到更合理的 利用。相对于传统的单阈值算法来说,这种双阈值能够在处理器利用率超过第一级阈值 时启动调频机制,可以尽早地把处理器的性能控制在合理的范围。一旦超过第二级阈值 时,还可以启动第二套调频方案再次控制处理器性能。因此,这种双阈值的调节方式具 有提前控制,后续协调的双重压制的特点,能够达到更好地利用处理器性能的目的。

加上了功耗阈值的限制有效的限制了处理器性能过剩。在原有的仅仅依靠处理器利 用率来调节频率的基础上,加入了实时功耗检测,当需要向上调节基准频率时,不仅仅 需要处理器利用率超过第二级阈值,还需要超过处理器的功耗阈值,因此,可以将处理 器性能控制在一个比较合理的范围之内。

不需要额外的硬件支持,可以在原有的硬件基础上实现。只需要处理器支持分频器 调节频率、锁相环调节频率还有电压调节即可。目前大部分支持DVFS调节的处理器都支 持这些功能。

算法实现不复杂,可移植性强。整个算法是通过加载驱动的方式插入到内核中去的, 所以,具有较强的可移植性,可以直接将编译好的模块加载到任意一个系统内核中去, 算法本省也并不复杂,可以根据处理器的结构进行适当地调整。

以上对本发明的一个实施例进行了详细说明,但所述内容仅为本发明的较佳实施例, 不能被认为用于限定本发明的实施范围。凡依本发明申请范围所作的均等变化与改进等, 均应仍归属于本发明的专利涵盖范围之内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号