CN101379453B - 使用动态工作负载特征来控制cpu频率和电压调节的方法和装置 - Google Patents
使用动态工作负载特征来控制cpu频率和电压调节的方法和装置 Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- 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
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
一些实施例涉及确定与工作负载相关联的处理器性能特征,确定与工作负载相关联的工作负载特征,以及基于性能特征和工作负载特征确定工作负载的处理器性能状态。还公开和要求保护了其他实施例。
Description
技术领域
本发明涉及电源管理。更具体地,本发明的一些实施例涉及使用动态工作负载特征来控制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状态下的执行时间比:
在工作负载的阶段执行一指令序列所花的时间可以分为处理器在引退指令时的周期以及当处理器等待存储器或其它芯片外活动而停顿时的周期。注意后一时间并非处理器频率的函数,因而其完全独立于处理器频率。上述等式可以重写为以下形式:
由于 以及 ,上述等式变成:
该等式表达了工作负载性能的降低与它在芯片外行为状况之间的关系。举例来说,随着工作负载越变得受存储器限制,Ti off-die开始占优势于Ti on-die,使在较低频率下执行的性能损失得以减少。另一方面,如果工作负载执行未导致存储器停顿并且Ti off-die是小的,上述等式可以简化为,其示出性能损失与CPU频率完全成比例变化。
给定某一数量水平的性能损失,可以对上述等式重新整理,来确定对于给定的工作负载阶段的目标频率,该目标频率使能耗最小化并且将性能的降低维持在指定的性能界限内:
举例来说,假设工作负载的一个阶段90%的时间是受存储器限制的,并且性能损失被设置在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,其可以包含奔腾基于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所述的方法,还包括:
如果所述性能特征未处于所期望的性能范围之内,则将所述处理器的操作频率设回为先前的频率来执行工作负载。
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI634410B (zh) * | 2016-01-04 | 2018-09-01 | 美商高通公司 | 用於在電腦處理器中基於程式階段動態時脈及電壓縮放之方法、裝置及非暫時性電腦可讀儲存媒體 |
Families Citing this family (54)
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)
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)
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 |
-
2006
- 2006-03-07 US US11/370,254 patent/US7861068B2/en not_active Expired - Fee Related
-
2007
- 2007-02-26 CN CN2007800047129A patent/CN101379453B/zh not_active Expired - Fee Related
- 2007-02-26 DE DE112007000446T patent/DE112007000446B4/de not_active Expired - Fee Related
- 2007-02-26 WO PCT/US2007/005021 patent/WO2007103051A2/en active Application Filing
- 2007-02-26 GB GB0818343.6A patent/GB2450448B/en not_active Expired - Fee Related
Patent Citations (1)
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)
Title |
---|
Kihwan Choi等.Dynamic Voltage and Frequency Scaling based on Workload Decomposition.《ISLPED》.2004, * |
Cited By (1)
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 |