CN101379453B - 使用动态工作负载特征来控制cpu频率和电压调节的方法和装置 - Google Patents

使用动态工作负载特征来控制cpu频率和电压调节的方法和装置 Download PDF

Info

Publication number
CN101379453B
CN101379453B CN2007800047129A CN200780004712A CN101379453B CN 101379453 B CN101379453 B CN 101379453B CN 2007800047129 A CN2007800047129 A CN 2007800047129A CN 200780004712 A CN200780004712 A CN 200780004712A CN 101379453 B CN101379453 B CN 101379453B
Authority
CN
China
Prior art keywords
performance
processor
operating load
chip
frequency
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.)
Expired - Fee Related
Application number
CN2007800047129A
Other languages
English (en)
Other versions
CN101379453A (zh
Inventor
E·戈尔巴托夫
S·阿比新卡尔
A·汉罗德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN101379453A publication Critical patent/CN101379453A/zh
Application granted granted Critical
Publication of CN101379453B publication Critical patent/CN101379453B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

一些实施例涉及确定与工作负载相关联的处理器性能特征,确定与工作负载相关联的工作负载特征,以及基于性能特征和工作负载特征确定工作负载的处理器性能状态。还公开和要求保护了其他实施例。

Description

使用动态工作负载特征来控制CPU频率和电压调节的方法和装置
技术领域
本发明涉及电源管理。更具体地,本发明的一些实施例涉及使用动态工作负载特征来控制CPU频率和电压调节的方法和装置。
背景技术
中央处理器(CPU)在操作期间可能消耗大量功率。一些传统系统允许CPU在一个或多个可选择的性能状态下操作。举例来说,可以选择性地控制CPU在第一频率和第一电压(即第一性能状态)下或者更高的频率和更高的电压(即第二性能状态)下操作。因此,相比在第二性能状态,CPU在第一性能状态可以消耗较少的功率。
CPU性能状态通常仅仅基于CPU的利用率百分数来确定。如果利用率百分数低于阈值电平,可以控制CPU在低性能状态下操作,如果利用率百分数高于阈值电平,可以控制CPU在更高性能状态下操作。能够提供更有效率的操作的系统是令人期望的。
附图说明
本发明的各种特性将通过附图中示出的优选实施例的描述而变得显而易见,其中附图中相似的参考号通常表示相同的部分。附图并不一定用于度量,相反其重点是在于对本发明的原理进行说明。
图1是根据本发明的一些实施例,电子设备利用电源管理的框图。
图2是根据本发明的一些实施例的电子系统的框图。
图3是根据本发明的一些实施例的图。
图4是根据本发明的一些实施例的另一电子系统的框图。
图5是根据本发明的一些实施例,功率对应于时间的比较图。
图6是根据本发明的一些实施例,执行时间的比较图。
图7是根据本发明的一些实施例,受存储器限制百分数对应于时间的图。
图8是根据本发明的一些实施例,功率对应于时间的比较图。
图9是根据本发明的一些实施例,另一电子系统的框图。
图10是根据本发明的一些实施例的流程图。
图11是根据本发明的一些实施例的另一流程图。
图12是根据本发明的一些实施例的另一流程图。
具体实施方式
在下列描述中,出于说明而非限制的目的,为了提供对本发明各个方面全面的理解而阐述了特定的细节,比如特定的结构、体系结构、接口、技术等等。然而,本发明的各个方面可以在背离这些特定细节的其他例子中实现,这对于受益于本公开的熟悉该项技术的本领域人员来说是明显的。在某些实例中,为了不使本发明的描述由于不必要的细节而变得难于理解,省略了众所周知的设备、电路以及方法的描述。
本申请涉及于2005年6月25日提交的美国专利申请号11/169,975,题为“Processor Power Management”(处理器电源管理),该申请的全部内容通过引用并入本说明。
图1是根据一些实施例的设备10的框图。设备10包括性能状态控制模块12和处理器14。在一些实施例中,性能状态控制模块12确定与处理器14所执行的工作负载相关联的处理器14的性能特征,并且基于该性能特征确定该工作负载的处理器的性能状态。
性能状态控制模块12可以包括任何硬件和/或软件的结合。根据一些实施例,性能状态控制模块12包括由处理器14执行来提供本文所述功能的操作系统级别的软件。性能状态控制模块12可以通过在处理器14执行工作负载之前、期间和/或之后查询一个或多个操作系统和处理器性能计数器,来确定上述的性能特征。
性能特征可以包括指示关于工作负载的处理器14的效率、可能从硬件或软件获取的任何信息。性能特征可以包括但不限于二级高速缓存缺失率、输入/输出队列深度、引退(retired)指令的数量、输入/输出吞吐量和延迟,以及存储器存取速率。本文所述的工作负载可以包括操作系统级别的线程、设备驱动程序、任务、应用程序、多线程应用程序的线程,和/或任何其性能特征可以被确定的其他可执行的进程。
处理器14可以包括任何数量的处理单元。在一些实施例中。处理器14包括微处理器集成电路(IC)。处理器14可以支持多个可控制的操作的电源和性能状态。根据一些实施例,处理器14支持高级配置与电源接口(ACPI)规范版本2.0b(2002年10月),其定义了若干电源和性能状态。
在一些实施例中,性能状态控制模块12可以在存储有处理器可执行的程序代码的存储器中实现。举例来说,处理器14可以与存储器通信并且可以与所存储的程序代码一起操作,来确定与工作负载相关联的处理器性能特征,确定与工作负载相关联的工作负载特征,以及基于性能特征和工作负载特征确定该工作负载的处理器性能状态。处理器可以进一步与所存储的程序代码一起操作,在处理器性能状态下执行工作负载。
在一些实施例中,为了确定工作负载特征,处理器可以进一步与所存储的程序代码一起操作,识别工作负载中的芯片外(off-die)阶段。芯片外阶段的非限制性实例包括存储器存取、监听活动、处理器间通信以及引起阻塞的输入/输出操作。
在一些实施例中,为了确定工作负载特征,处理器可以进一步与所存储的程序代码一起操作,根据该工作负载的指令级并行性的量,来确定该工作负载是受存储器限制的。举例来说,处理器可以进一步与所存储的程序代码一起操作,根据该工作负载的指令级并行性的量以及活动的输入/输出队列项的数量,来确定该工作负载是受存储器限制的。举例来说,对于较低的指令级并行性的量而具有较少的活动队列项,工作负载可能被确定为是受存储器限制的。
在一些实施例中,为了确定工作负载特征,处理器可以进一步与所存储的程序代码一起操作,读取性能计数器并基于该性能计数器确定停顿周期的数量。在一些实施例中,处理器可以进一步与所存储的程序代码一起操作,确定输入/输出队列事件的数量,确定引退指令的数量,和/或根据输入/输出队列事件的数量和引退指令的数量来确定该工作负载是受存储器限制的。
在一些实施例中,在传统处理器中可用的P-状态和C-状态可以提供有效机制来降低CPU功耗。举例来说,当处理器空闲时,C-状态可以允许逐步关闭CPU时钟和逻辑。P-状态可以向操作系统提供不同的电压/频率数量水平,并且可以用于随需要按比例调节处理器性能。通过监视处理器的利用率以及在需求变化时调整它的性能水平,操作系统可以控制频率/电压的调节。虽然这些机制可能在低利用率时降低CPU功率是有效的,而在需求高的时候,这些机制几乎不能提供任何好处。另外,基于利用率的策略不能解释硬件如何有效率地执行工作负载,这意味着对一些工作负载可能导致多余的功率消耗和低性能效率。
有利的是,本发明的一些实施例可以基于微体系结构的性能效率为管理CPU功率提供方法和/或装置。当CPU存取存储器而停顿时,在较高频率或性能状态下执行工作负载几乎不能提供任何性能的益处,而会导致高的功耗以及低的性能效率。本发明的一些实施例可以提供用于识别工作负载执行中的受存储器限制的阶段的方法,以及基于处理器性能效率执行P-状态管理的CPU电源管理策略。
参照图2,系统20可以利用扩充了性能监视器的OS电源管理策略,该性能监视器监视工作负载的执行并识别工作负载何时受存储器限制。除处理器利用率之外,该策略可以使用性能监视器所提供的工作负载特征,来确定有效的性能状态(例如最有效的性能状态),该状态在将性能维持在指定的界限之内的同时降低处理器功率或将其最小化。
本发明的一些实施例包括识别工作负载的芯片外阶段。举例来说,工作负载执行可以分成两个阶段,即芯片内(on-die)和芯片外。在芯片内阶段,工作负载是会受CPU限制的,主要使用芯片内的资源,并且它的性能可以由CPU时钟驱动。在芯片外阶段,工作负载可以具有大量的存储器存取(即受存储器限制)或其他芯片外的事务(比如监听活动),并且CPU由于工作负载中缺乏ILP(指令级并行性)而可能停顿。在芯片外阶段,工作负载性能可能通常由芯片外的时钟驱动。在任何给定的应用程序中,可以观测到一系列芯片内和芯片外阶段。举例来说,图2中性能监视器的目标可以是准确地识别每一阶段何时开始及结束,以及将该信息提供给电源管理策略例程。
本发明的一些实施例可以使用CPU性能事件来进行工作负载阶段的识别。性能计数器的支持可能随不同的处理器体系结构而不同。举例来说,一些处理器可以提供性能事件,其能够用于确定停顿周期的数量及导致瓶颈的功能单元。这些事件可以被用于确定处理器何时以及停顿了多久以等待芯片外的活动(例如存储器存取)。相比之下,其他的处理器体系结构可能不支持这些事件。在这种情形下,直接确定由存储器存取引起的停顿周期的数量可能是不可能的。然而,根据本发明的一些实施例,可以使用其他的性能事件来识别芯片外阶段。
举例来说,本发明的一些实施例可以使用引退指令(IR)和输入/输出队列(IOQ)事件来识别何时工作负载处于芯片外或受存储器限制阶段。通常,IOQ计数器可以是体系结构特定的计数器的实例,IR计数器可以是更为普遍可用的计数器。当一定数量的存储器存取未决时,IOQ事件可以在每个周期被计数。使用受存储器限制的工作负载举例来说,通过记录IOQ事件的数量,可以确定工作负载受存储器限制的程度。不同的工作负载在不同的存储器存取模式下可能变为受存储器限制。举例来说,具有有限ILP的工作负载随着一个或两个未决的存储器请求而变为受存储器限制,而具有较大量ILP的工作负载仅在三个或更多未决的存储器请求处于IOQ中时才变为受存储器限制。
参照图3,活动的IOQ项数量和ILP的量对应于时间的示例性图,其示出具有较少ILP的工作负载可能由于较低数量的活动IOQ项而被认为是受存储器限制的。举例来说,具有中等数量ILP的工作负载的阶段可能由于三个活动的IOQ项而被认为是受存储器限制的。该工作负载的另一具有相对较少ILP的阶段可能由于两个活动的IOQ项而被认为是受存储器限制的。该工作负载的另一具有相对较多ILP的阶段可能由于四个活动的IOQ项而被认为是受存储器限制的。
例如,可以使用猜测抽样算法来确定IOQ驻留的数量水平,其指示工作负载的特定阶段何时是受存储器限制的。从未决的存储器存取的数量被设为1开始,可以以可动态调整的抽样间隔来监视IOQ驻留和指令引退事件。IOQ驻留、抽样间隔的大小和引退指令计数可以被传递至策略管理器(例如以上所描述)来确定工作负载是否具有受存储器限制的工作负载特征。如果对IOQ驻留设置的选择是正确的,其可以继续用于工作负载存储器行为状况的指示符。另一方面,如果策略管理器确定IOQ驻留的设置太低或者太高,其可以在下一个抽样间隔进行调整。如图3所示,IOQ驻留指示符可以被定期地修改以适应变化的工作负载行为状况,并识别工作负载的每个阶段何时可能是受存储器限制的。
本发明的一些实施例可以利用性能驱动基于需求进行切换(PD-DBS)的电源管理策略(例如在软件中实现)。举例来说,PD-DBS策略管理器可以负责选择满足工作负载性能要求并且降低或使处理器功耗最小化的频率数量水平。工作负载性能要求可以以相对于以最大操作频率执行一定数量的指令所花时间的性能降低的形式来表示,该时间定义为T0(P0是与最大频率/电压设置相对应的性能状态)。在给定的工作负载的阶段,在较低的处理器频率fi下的性能损失可以被定义为分别在P0和Pi状态下的执行时间比:
PerfLoss = T i T 0 - 1
在工作负载的阶段执行一指令序列所花的时间可以分为处理器在引退指令时的周期以及当处理器等待存储器或其它芯片外活动而停顿时的周期。注意后一时间并非处理器频率的函数,因而其完全独立于处理器频率。上述等式可以重写为以下形式:
PerfLoss = T i on - die + T i off - die T 0 on - die + T 0 off - die - 1
由于 T 0 off - die = T i off - die 以及 T i on - die = f 0 f i T 0 on - die ,上述等式变成:
PerfLoss = T 0 on - die f 0 f i + T 0 off - die T 0 on - die + T 0 off - die - 1 = f 0 f i - 1 1 + T 0 off - die T 0 on - die
该等式表达了工作负载性能的降低与它在芯片外行为状况之间的关系。举例来说,随着工作负载越变得受存储器限制,Ti off-die开始占优势于Ti on-die,使在较低频率下执行的性能损失得以减少。另一方面,如果工作负载执行未导致存储器停顿并且Ti off-die是小的,上述等式可以简化为
Figure S2007800047129D00066
,其示出性能损失与CPU频率完全成比例变化。
给定某一数量水平的性能损失,可以对上述等式重新整理,来确定对于给定的工作负载阶段的目标频率,该目标频率使能耗最小化并且将性能的降低维持在指定的性能界限内:
f t arg et = f 0 PerfLoss ( 1 + T 0 off - die T 0 on - die ) + 1
举例来说,假设工作负载的一个阶段90%的时间是受存储器限制的,并且性能损失被设置在3%数量水平之内。那么上述等式变成:
f t arg et = f 0 0.03 ( 1 + 9 ) + 1 = f 0 1.3
如果f0是3.6GHz,ftarget将为2.77GHz,表明在这个或更高的频率执行工作负载的这个阶段将会维持其性能在指定的PerfLoss阈值之内。
PD-DBS电源管理策略使用这个等式来确定增加处理器功率效率并且维持可接受的性能水平。参照前面部分的讨论,PD-DBS使用受存储器限制指示符来确定Ti on-die和Ti off-die。其然后使用上面的等式来计算由处理器提供的将保持工作负载执行处于指定的性能界限的最低频率,并且启动P-状态转换至目标频率。
注意,现存的基于利用率的策略未提供确定电源管理策略对工作负载性能的影响的机制。在另一方面,PD-DBS不但确保功率最有效的执行,还为系统设计者或最终用户提供指定愿意接受何种最大程度性能水平的降低以获得功率更有效的操作的能力。
对于未提供直接的方法来识别由存储器存取或其他芯片外活动引起的处理器停顿的体系结构,前面描述了选择适当的芯片外或受存储器限制指示符。在这些体系结构中,芯片外阶段的识别可以被当作一个假设,且该假设的有效性可以通过定期地监视引退指令的数量来验证。引退的指令因此使得能够确定由P-状态转换引起的实际性能的降低。
举例来说,在选择以上示出的等式中的目标频率并将处理器转换至新的P-状态后,引退的指令的数量可以被监视并与最高的P-状态下的工作负载性能相比较。如果观察到的性能降低不同于由上面等式计算出的性能降低,CPU可以被转换至最高的性能状态,并且芯片外阶段指示符阈值可以被更新(例如图3中的受存储器限制指示符)。正如在前面部分所描述,这个迭代过程可以一直继续,直到找到与工作负载的芯片外行为状况(例如存储器行为状况)相对应的阈值设置为止。
进一步注意,引退的指令可以被用作工作负载阶段行为状况变化的很好的指示符。引退的指令索引在给定的工作负载阶段保持不变,但是当执行从一个阶段转换至另一个阶段时变动显著。因此,本发明一些用于监视引退的指令并对受存储器限制指示符进行校准的实施例不但处于工作负载阶段之内效果良好,而且更重要地还可以用于探测阶段的变化。鉴于工作负载执行特征的动态性质,探测及追踪阶段变化的能力允许PD-DBS策略调整它的芯片外指示符并且在工作负载执行期间无缝地跨越不同阶段来有效地监视工作负载行为状况。
本发明一些利用了性能驱动基于需求进行切换的实施例可以提供一个或多个下列好处:1)显著改善性能效率以及受芯片外限制的工作负载的功率节省;2)节省功率在高的和低的利用率时都可以实现;3)可以将工作负载的性能降低限制在指定阈值内的性能驱动的策略。
图4示出本发明的一些实施例的一般的体系结构。OS电源管理策略可以使用处理器利用率、工作负载特征和性能度量来选择更有效或最有效的性能状态(例如可以用电压/频率数量水平V/F表示的P-状态)。该策略也可以使用闭环反馈回路来测量芯片外的活动与内核性能,以便定期地改进P-状态的决定。
根据本发明的一些实施例,图5示出在具有电源管理策略(实线)和无电源管理策略(虚线)的系统上运行服务器工作负载的实例处理器功耗。从图5可见,实线显示对比基线情形的功率节省。
根据本发明的一些实施例,图6示出芯片外的活动可以如何用于节省功率的实例。图的顶部表示P-状态的驻留仅仅由CPU利用率驱动(P0)的DBS策略。图的中间部分表示DBS Off策略以及CPU处于低功率/性能状态(P2)。图的底部部分表示PD-DBS策略:芯片内阶段P0,芯片外阶段P2。虚线示出被执行的工作负载的相对执行时间。由于芯片外的操作可以不与处理器频率成比例,在芯片外阶段执行的工作负载可以在较低的性能状态下运行,而不显著影响总体系统性能。该图也示出,简单地将处理器性能设置为最低性能状态将会影响系统的性能,原因是芯片内阶段是在较低的频率下被执行。
图7示出被清晰定义的芯片外执行阶段的工作负载存储器行为状况的实例。图8示出,通过使用本发明的一些实施例,在这些芯片外阶段期间处理器功率是如何节省的,其中实线示出处于芯片外阶段期间的较低功率的时期。
图9根据一些实施例说明系统90的框图。系统90包括微处理器91,其可以包含奔腾
Figure S2007800047129D00091
基于RISC的或其他类型的处理器。微处理器91可以直接与系统存储器92通信,系统存储器92可以包括任何类型的存储器,包括但不限于单数据率随机存取存储器和双数据率随机存取存储器。程序代码可以由微处理器91从存储器92执行,以执行本文所述的方法。微处理器91可以与芯片组93以及通过芯片组93与其他芯片外的功能单元通信,例如存储器94、图形控制器95以及网络接口控制器(NIC)96。
前述的程序代码可以从计算机可读的介质读取,比如软盘、CD-ROM、DVD-ROM、ZipTM磁盘、磁带,或者对处理步骤进行了编码的、其后以压缩的、未编译的和/或加密的格式存储在存储器94中的信号。在替代的实施例中,为实现本文所述步骤,可以采用硬连线电路以代替或与程序代码组合来使用。因此,实施例不限于任何特定的硬件和软件的组合。
尽管ACPI性能状态在本文中用作实例,实施例可以与任何类型可选择的处理器性能状态相关联。此外,尽管描述了特定的部件来执行进行特定的功能,本文所述的任何功能可以通过软件应用程序、硬件设备、OS、驱动程序和/或BIOS执行。
参照图10,本发明的一些实施例可以涉及确定与工作负载相关联的处理器性能特征(例如在方框100),确定与该工作负载相关联的工作负载特征(例如在方框101),以及基于性能特征和工作负载特征确定该工作负载的处理器性能状态(例如在方框102)。举例来说,确定工作负载特征可以包括识别工作负载中的芯片外阶段(例如在方框103)。举例来说,芯片外阶段可以包括存储器存取、监听活动、处理器间通信以及引起阻塞的输入/输出操作中的一项(例如在方框104)。
参照图11,本发明的一些实施例可以涉及确定与工作负载相关联的处理器性能特征(例如在方框110),确定与该工作负载相关联的工作负载特征(例如在方框111),以及基于性能特征和工作负载特征确定该工作负载的处理器性能状态(例如在方框112)。举例来说,确定工作负载特征可以包括根据该工作负载的指令级并行性的量来确定该工作负载是受存储器限制的(例如在方框113)。举例来说,确定工作负载特征可以包括根据该工作负载的指令级并行性的量以及该工作负载的活动的输入/输出队列项的数量来确定该工作负载是受存储器限制的(例如在方框114)。对于较低的指令级并行性的量而具有较少的活动队列项,工作负载可能被确定为是受存储器限制的(例如在方框115)。
在一些实施例中,确定工作负载特征可以包括读取性能计数器(例如在方框116)以及基于性能计数器确定停顿周期的数量(例如在方框117)。在一些实施例中,确定工作负载特征可以包括,确定输入/输出队列事件的数量(例如在方框118),确定引退指令的数量(例如在方框119),和/或根据输入/输出队列事件的数量和引退指令的数量来确定该工作负载是受存储器限制的(例如在方框120)。一些实施例可以进一步涉及指示处理器在该处理器性能状态下执行工作负载(例如在方框121)。
参照图12,本发明的一些实施例可以涉及:进入PD-DBS电源管理策略,确定工作负载的引退指令的数量和输入/输出队列事件的数量(例如在方框122),至少部分地基于引退指令的数量和输入/输出队列事件的数量来确定性能特征是否处于所期望的性能范围之内(例如在方框123),如果该性能特征处于期望的性能范围内,确定工作负载在芯片内的时间量和在芯片外的时间量(例如在方框124),基于在芯片内的时间量和在芯片外的时间量确定是否出现了阶段转变(例如在方框125),以及如果出现了阶段转变,为处理器确定新的目标频率来让其执行工作负载(例如在方框126)。
举例来说,确定工作负载的引退指令的数量和输入/输出队列事件的数量(例如在方框122)可以包括读取和储存IOQ计数器和/或引退的指令计数器。举例来说,至少部分地基于引退指令的数量和输入/输出队列事件的数量来确定性能特征是否处于所期望的性能范围之内(例如在方框123)可以包括将当前的IR计数与先前的IR计数加上或减去阈值数量(其可能是最大性能的一个百分数)相比较。
一些实施例可以进一步涉及将处理器的操作频率设置为新的目标频率(例如在方框127)。举例来说,新的目标频率可以根据所期望的可接受的性能下降量来确定。一些实施例可以进一步涉及,如果该性能特征未处于期望的性能范围之内,则将处理器的操作频率设回为先前的频率来执行工作负载(例如在方框128)。
如果在方框125未出现阶段转变,当前的频率可以不发生改变(例如在方框129)。在经过方框127、128和129中的每一个之后,例程可以退出电源管理策略。
熟悉该领域的技术人员将会理解图10~12的流程图可以在任何数量的硬件、软件和/或固件的排列中实现。举例来说,该流程图可以完全通过专用的硬件电路来实现。替代性地,该流程图可以完全通过运行在通用处理器上的软件来实现。替代性地,该流程图可以被选择性地在专用硬件和运行在通用处理器上的软件之间进行划分。
本发明上述的和其他的方面单独地以及组合式地来完成。本发明不应当被解释为要求两个或多个这些方面,除非特定的权利要求明确地这样要求。另外,虽然本发明与目前被认为是优选的实例一起来描述,将会理解本发明并不受限制于所公开的实例,相反地,本发明期望是涵盖包括在本发明实质与范围内的各种修改及等同的安排。

Claims (4)

1.一种用于处理器电源管理的方法,包括:
确定工作负载的引退指令的数量和输入/输出队列事件的数量;
至少部分地基于所述引退指令的数量和所述输入/输出队列事件的数量来确定性能特征是否处于所期望的性能范围之内;
如果所述性能特征处于所述期望的性能范围内,确定所述工作负载在芯片内的时间量和在芯片外的时间量;
基于在芯片内的时间量和在芯片外的时间量确定是否出现了阶段转变;以及
如果出现了所述阶段转变,为处理器确定新的目标频率来让其执行工作负载。
2.根据权利要求1所述的方法,还包括:
将所述处理器的操作频率设置为所述新的目标频率。
3.根据权利要求2所述的方法,其中所述新的目标频率根据所期望的可接受的性能下降量来确定。
4.根据权利要求1所述的方法,还包括:
如果所述性能特征未处于所期望的性能范围之内,则将所述处理器的操作频率设回为先前的频率来执行工作负载。
CN2007800047129A 2006-03-07 2007-02-26 使用动态工作负载特征来控制cpu频率和电压调节的方法和装置 Expired - Fee Related CN101379453B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/370,254 US7861068B2 (en) 2006-03-07 2006-03-07 Method and apparatus for using dynamic workload characteristics to control CPU frequency and voltage scaling
US11/370,254 2006-03-07
PCT/US2007/005021 WO2007103051A2 (en) 2006-03-07 2007-02-26 Method and apparatus for using dynamic workload characteristics to control cpu frequency and voltage scaling

Publications (2)

Publication Number Publication Date
CN101379453A CN101379453A (zh) 2009-03-04
CN101379453B true CN101379453B (zh) 2011-05-25

Family

ID=38099190

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800047129A Expired - Fee Related CN101379453B (zh) 2006-03-07 2007-02-26 使用动态工作负载特征来控制cpu频率和电压调节的方法和装置

Country Status (5)

Country Link
US (1) US7861068B2 (zh)
CN (1) CN101379453B (zh)
DE (1) DE112007000446B4 (zh)
GB (1) GB2450448B (zh)
WO (1) WO2007103051A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI634410B (zh) * 2016-01-04 2018-09-01 美商高通公司 用於在電腦處理器中基於程式階段動態時脈及電壓縮放之方法、裝置及非暫時性電腦可讀儲存媒體

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7861068B2 (en) 2006-03-07 2010-12-28 Intel Corporation Method and apparatus for using dynamic workload characteristics to control CPU frequency and voltage scaling
JP4231516B2 (ja) * 2006-08-04 2009-03-04 株式会社日立製作所 実行コードの生成方法及びプログラム
US8046565B2 (en) * 2006-12-06 2011-10-25 Kabushiki Kaisha Toshiba Accelerator load balancing with dynamic frequency and voltage reduction
US7917789B2 (en) * 2007-09-28 2011-03-29 Intel Corporation System and method for selecting optimal processor performance levels by using processor hardware feedback mechanisms
US8219993B2 (en) * 2008-02-27 2012-07-10 Oracle America, Inc. Frequency scaling of processing unit based on aggregate thread CPI metric
US8903191B2 (en) 2008-12-30 2014-12-02 Intel Corporation Method and apparatus for noise reduction in video
US8230245B2 (en) * 2009-01-23 2012-07-24 Dell Products, L.P. Method and system for operating-system-independent power management using performance verifications
US8566628B2 (en) * 2009-05-06 2013-10-22 Advanced Micro Devices, Inc. North-bridge to south-bridge protocol for placing processor in low power state
KR101648978B1 (ko) * 2009-11-05 2016-08-18 삼성전자주식회사 저전력 멀티코어 시스템에서의 전력 제어 방법 및 장치
US20110112798A1 (en) * 2009-11-06 2011-05-12 Alexander Branover Controlling performance/power by frequency control of the responding node
US8890880B2 (en) * 2009-12-16 2014-11-18 Intel Corporation Graphics pipeline scheduling architecture utilizing performance counters
US8364997B2 (en) * 2009-12-22 2013-01-29 Intel Corporation Virtual-CPU based frequency and voltage scaling
US9268389B2 (en) 2010-03-23 2016-02-23 Sony Corporation Reducing power consumption on a processor system by masking actual processor load with insertion of dummy instructions
US9804874B2 (en) 2011-04-20 2017-10-31 Microsoft Technology Licensing, Llc Consolidation of idle virtual machines on idle logical processors
US8484498B2 (en) 2010-08-26 2013-07-09 Advanced Micro Devices Method and apparatus for demand-based control of processing node performance
CN102841808B (zh) * 2011-06-21 2017-12-08 技嘉科技股份有限公司 电脑系统的效能提升方法及其电脑系统
US8185758B2 (en) * 2011-06-30 2012-05-22 Intel Corporation Method and system for determining an energy-efficient operating point of a platform
US8862909B2 (en) 2011-12-02 2014-10-14 Advanced Micro Devices, Inc. System and method for determining a power estimate for an I/O controller based on monitored activity levels and adjusting power limit of processing units by comparing the power estimate with an assigned power limit for the I/O controller
US8924758B2 (en) 2011-12-13 2014-12-30 Advanced Micro Devices, Inc. Method for SOC performance and power optimization
US8930737B2 (en) * 2011-12-13 2015-01-06 Omx Technology Ab Method and devices for controlling operations of a central processing unit
US20120095607A1 (en) * 2011-12-22 2012-04-19 Wells Ryan D Method, Apparatus, and System for Energy Efficiency and Energy Conservation Through Dynamic Management of Memory and Input/Output Subsystems
US8806243B2 (en) * 2011-12-28 2014-08-12 Intel Corporation Method of and apparatus for energy savings associated with a graphics core
US9105249B2 (en) 2011-12-29 2015-08-11 Intel Corporation Energy conservation in a controller using dynamic frequency selection
WO2013115821A1 (en) 2012-02-02 2013-08-08 Empire Technolgy Development Llc Quality of service targets in multicore processors
CN103246340A (zh) * 2012-02-06 2013-08-14 索尼公司 动态调整中央处理单元的频率的装置和方法
KR20130110459A (ko) * 2012-03-29 2013-10-10 삼성전자주식회사 시스템-온 칩, 이를 포함하는 전자 시스템 및 그 제어 방법
US9524009B2 (en) 2012-05-14 2016-12-20 Intel Corporation Managing the operation of a computing device by determining performance-power states
US9122632B2 (en) 2012-06-30 2015-09-01 Intel Corporation Programmable power performance optimization for graphics cores
US9218045B2 (en) 2012-06-30 2015-12-22 Intel Corporation Operating processor element based on maximum sustainable dynamic capacitance associated with the processor
US9164931B2 (en) 2012-09-29 2015-10-20 Intel Corporation Clamping of dynamic capacitance for graphics
US9218044B2 (en) * 2012-11-27 2015-12-22 International Business Machines Corporation Computing system frequency target monitor
US9323300B2 (en) * 2012-11-27 2016-04-26 International Business Machines Corporation Computing system voltage control
US9442559B2 (en) * 2013-03-14 2016-09-13 Intel Corporation Exploiting process variation in a multicore processor
US9513688B2 (en) 2013-03-16 2016-12-06 Intel Corporation Measurement of performance scalability in a microprocessor
CN104423529B (zh) * 2013-08-30 2018-08-21 华为技术有限公司 中央处理单元状态调整方法和装置
US9250910B2 (en) 2013-09-27 2016-02-02 Intel Corporation Current change mitigation policy for limiting voltage droop in graphics logic
US9104505B2 (en) 2013-10-03 2015-08-11 International Business Machines Corporation Acceleration prediction in hybrid systems
JP6252140B2 (ja) * 2013-11-29 2017-12-27 富士通株式会社 タスク割り付けプログラム及びタスク割り付け方法
US9696999B2 (en) 2013-12-17 2017-07-04 Intel Corporation Local closed loop efficiency control using IP metrics
US9514715B2 (en) 2013-12-23 2016-12-06 Intel Corporation Graphics voltage reduction for load line optimization
CN103841042B (zh) * 2014-02-19 2017-09-19 华为技术有限公司 在高运行效率下传输数据的方法和装置
US10289183B2 (en) 2014-08-22 2019-05-14 Intel Corporation Methods and apparatus to manage jobs that can and cannot be suspended when there is a change in power allocation to a distributed computer system
US9678529B2 (en) * 2014-09-02 2017-06-13 Nvidia Corporation Efficiency-based clock frequency adjustment
US20160154449A1 (en) * 2014-11-27 2016-06-02 Eui Choel LIM System on chips for controlling power using workloads, methods of operating the same, and computing devices including the same
US11399344B2 (en) * 2015-01-26 2022-07-26 Apple Inc. System and method for SoC idle power state control based on I/O operation characterization
US20160378551A1 (en) * 2015-06-24 2016-12-29 Intel Corporation Adaptive hardware acceleration based on runtime power efficiency determinations
US10073718B2 (en) 2016-01-15 2018-09-11 Intel Corporation Systems, methods and devices for determining work placement on processor cores
CN105739668A (zh) * 2016-01-20 2016-07-06 合肥联宝信息技术有限公司 一种笔记本电脑的电源管理方法及电源管理系统
US10474475B2 (en) * 2016-03-02 2019-11-12 Western Digital Technologies, Inc. Non-intrusive restart of a task manager
US10296067B2 (en) * 2016-04-08 2019-05-21 Qualcomm Incorporated Enhanced dynamic clock and voltage scaling (DCVS) scheme
KR20180076840A (ko) 2016-12-28 2018-07-06 삼성전자주식회사 Dvfs 동작을 수행하는 어플리케이션 프로세서, 이를 포함하는 컴퓨팅 시스템 및 이의 동작 방법
CN106951320B (zh) * 2017-01-23 2022-03-08 斑马信息科技有限公司 动态调节互联网汽车的车机的cpu频率的系统及其方法
US10565079B2 (en) 2017-09-28 2020-02-18 Intel Corporation Determination of idle power state
CN108446008B (zh) * 2018-02-27 2021-08-10 晶晨半导体(上海)股份有限公司 一种分级调频调压的动态响应调节方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1363180A2 (en) * 2002-05-15 2003-11-19 Broadcom Corporation Method and apparatus for adaptive CPU power management

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0689141A3 (en) * 1994-06-20 1997-10-15 At & T Corp Disruption-based hardware support for system performance profiling
US5745375A (en) 1995-09-29 1998-04-28 Intel Corporation Apparatus and method for controlling power usage
US5940785A (en) * 1996-04-29 1999-08-17 International Business Machines Corporation Performance-temperature optimization by cooperatively varying the voltage and frequency of a circuit
US5887179A (en) 1996-06-11 1999-03-23 Motorola, Inc. System power saving means and method
US5822598A (en) 1996-07-12 1998-10-13 Ast Research, Inc. Audio activity detection circuit to increase battery life in portable computers
US6065069A (en) 1996-07-15 2000-05-16 Micron Electronics, Inc. Circuit for sensing and automatically switching between an internal and external user I/O device
US5881306A (en) * 1996-12-17 1999-03-09 International Business Machines Corporation Instruction fetch bandwidth analysis
US6282663B1 (en) 1997-01-22 2001-08-28 Intel Corporation Method and apparatus for performing power management by suppressing the speculative execution of instructions within a pipelined microprocessor
US6216233B1 (en) 1997-02-12 2001-04-10 Intel Corporation Maintaining a memory while in a power management mode
US6360337B1 (en) * 1999-01-27 2002-03-19 Sun Microsystems, Inc. System and method to perform histogrammic counting for performance evaluation
US6556952B1 (en) * 2000-05-04 2003-04-29 Advanced Micro Devices, Inc. Performance monitoring and optimizing of controller parameters
US6792617B2 (en) 2001-07-20 2004-09-14 Intel Corporation Method and apparatus for selective recording of television programs using event notifications
US20030058853A1 (en) 2001-09-26 2003-03-27 Eugene Gorbatov Method and apparatus for mobile device roaming in wireless local area network
US6898718B2 (en) 2001-09-28 2005-05-24 Intel Corporation Method and apparatus to monitor performance of a process
US7089430B2 (en) 2001-12-21 2006-08-08 Intel Corporation Managing multiple processor performance states
GB2395309A (en) 2002-11-12 2004-05-19 Advanced Risc Mach Ltd Performance level selection in a data processing system
US7043649B2 (en) * 2002-11-20 2006-05-09 Portalplayer, Inc. System clock power management for chips with multiple processing modules
FR2854814A1 (fr) * 2003-05-15 2004-11-19 Cousin Composites Corde synthetique pour raquette de tennis
GB2406184B (en) 2003-09-17 2006-03-15 Advanced Risc Mach Ltd Data processing system
US7770034B2 (en) * 2003-12-16 2010-08-03 Intel Corporation Performance monitoring based dynamic voltage and frequency scaling
US7222030B2 (en) 2004-02-06 2007-05-22 Intel Corporation Method and apparatus for profiling power performance of software applications
US7281144B2 (en) 2004-02-17 2007-10-09 Intel Corporation Power management in communication devices
US20050190714A1 (en) 2004-02-28 2005-09-01 Intel Corporation System and associated methods for network aware dynamic power management
US7570259B2 (en) 2004-06-01 2009-08-04 Intel Corporation System to manage display power consumption
JP4599902B2 (ja) * 2004-06-18 2010-12-15 株式会社日立製作所 ハードウェアモニタを用いた性能解析方法
US20060282878A1 (en) 2005-06-14 2006-12-14 Stanley James C Expression of packet processing policies using file processing rules
US20070008887A1 (en) 2005-06-24 2007-01-11 Eugene Gorbatov Platform power management of a computing device using quality of service requirements of software tasks
US7475262B2 (en) 2005-06-29 2009-01-06 Intel Corporation Processor power management associated with workloads
US20070005966A1 (en) 2005-06-30 2007-01-04 Selim Aissi Derivation of a shared keystream from a shared secret
US7624428B2 (en) 2005-06-30 2009-11-24 Intel Corporation Apparatus and method for platform-independent identity manageability
US7861068B2 (en) 2006-03-07 2010-12-28 Intel Corporation Method and apparatus for using dynamic workload characteristics to control CPU frequency and voltage scaling

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1363180A2 (en) * 2002-05-15 2003-11-19 Broadcom Corporation Method and apparatus for adaptive CPU power management

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Kihwan Choi等.Dynamic Voltage and Frequency Scaling based on Workload Decomposition.《ISLPED》.2004, *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI634410B (zh) * 2016-01-04 2018-09-01 美商高通公司 用於在電腦處理器中基於程式階段動態時脈及電壓縮放之方法、裝置及非暫時性電腦可讀儲存媒體

Also Published As

Publication number Publication date
GB2450448B (en) 2012-01-11
US7861068B2 (en) 2010-12-28
GB2450448A (en) 2008-12-24
DE112007000446B4 (de) 2013-10-10
US20080235364A1 (en) 2008-09-25
CN101379453A (zh) 2009-03-04
WO2007103051A3 (en) 2007-11-15
DE112007000446T5 (de) 2008-12-11
GB0818343D0 (en) 2008-11-12
WO2007103051A2 (en) 2007-09-13

Similar Documents

Publication Publication Date Title
CN101379453B (zh) 使用动态工作负载特征来控制cpu频率和电压调节的方法和装置
US11237614B2 (en) Multicore processor with a control register storing an indicator that two or more cores are to operate at independent performance states
US9618997B2 (en) Controlling a turbo mode frequency of a processor
US8190939B2 (en) Reducing power consumption of computing devices by forecasting computing performance needs
US8996895B2 (en) Method, apparatus, and system for energy efficiency and energy conservation including optimizing C-state selection under variable wakeup rates
US9904346B2 (en) Methods and apparatus to improve turbo performance for events handling
US9927863B1 (en) Power management scheme that accumulates additional off time for device when no work is available and permits additional power consumption by device when awakened
KR101518440B1 (ko) 프로세싱 노드의 동적 성능 제어
US8112642B2 (en) Method and system for controlling power in a chip through a power-performance monitor and control unit
US8443209B2 (en) Throttling computational units according to performance sensitivity
US8171319B2 (en) Managing processor power-performance states
US8589709B2 (en) Systems and methods for managing power consumption and performance of a processor
KR101471303B1 (ko) 그래픽 처리 장치를 위한 전력 관리 장치 및 방법
US20130346774A1 (en) Providing energy efficient turbo operation of a processor
US8595527B2 (en) Method of managing power of multi-core processor, recording medium storing program for performing the same, and multi-core processor system
WO2013137862A1 (en) Dynamically controlling interconnect frequency in a processor
WO2011011668A1 (en) Determining performance sensitivities of computational units
US20120323400A1 (en) Optimized temperature-driven device cooling
US20110022356A1 (en) Determining performance sensitivities of computational units
EP2972826B1 (en) Multi-core binary translation task processing
US11138037B2 (en) Switch policy for hybrid scheduling in multi-processor systems
KR101075949B1 (ko) 모바일 내장형 시스템을 위한 전력 관리 시스템 및 그 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110525

Termination date: 20150226

EXPY Termination of patent right or utility model