CN103593041A - 数据处理系统的强制空闲 - Google Patents

数据处理系统的强制空闲 Download PDF

Info

Publication number
CN103593041A
CN103593041A CN201310447402.1A CN201310447402A CN103593041A CN 103593041 A CN103593041 A CN 103593041A CN 201310447402 A CN201310447402 A CN 201310447402A CN 103593041 A CN103593041 A CN 103593041A
Authority
CN
China
Prior art keywords
voltage
frequency
idle condition
constrained parameters
data handling
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.)
Granted
Application number
CN201310447402.1A
Other languages
English (en)
Other versions
CN103593041B (zh
Inventor
基思·考克斯
大卫·G·康罗伊
迈克尔·库伯特
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.)
Apple Inc
Original Assignee
Apple Computer Inc
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 Apple Computer Inc filed Critical Apple Computer Inc
Publication of CN103593041A publication Critical patent/CN103593041A/zh
Application granted granted Critical
Publication of CN103593041B publication Critical patent/CN103593041B/zh
Active 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/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • 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
    • 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/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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
    • 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
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Abstract

本发明公开了数据处理系统的强制空闲。用于管理数据处理系统的功率的方法和装置的示例性实施例被描述。工作在第一频率和第一电压的系统的约束参数被监视。系统在工作在第二频率和第二电压时,基于对约束参数的监视被强制进入空闲状态。空闲状态防止指令被执行。

Description

数据处理系统的强制空闲
本申请是申请日为2008年12月22日申请号为200880124193.4(国际申请号:PCT/US2008/013975)发明名称为“数据处理系统的强制空闲”的发明专利申请的分案申请。
技术领域
本发明的至少一些实施例一般地涉及数据处理系统,更具体而言但非排他性地涉及数据处理系统中的功率的管理。
背景技术
传统上,计算机系统被设计成能够连续地运行一最坏情况的功率负载。根据这种连续的最坏情况功率负载的设计还未成为大问题,因为传统上单独的组件具有适度的操作功率并且计算机系统具有大功率预算,从而使得系统能够自然适当地维持负载。
当计算机系统的单独组件的操作功耗缓慢上升时,计算机系统的功率预算变得吃紧。现在,设计一种运行连续的最坏情况负荷量并同时达成其他高性能目标(例如,高计算功率、小型化、安静、更好的电池性能等等)的计算机系统正在成为一种挑战。例如,诸如膝上型计算机之类的便携式计算机系统具有有限的电池输出容量;并因此针对给定的电池输出容量的最坏情况工作量可能由于最坏情况工作量极少发生而限制系统的性能。
因此,管理功率对于实现计算机系统的电池寿命和热设计目标两者是非常重要的。一种例如用于管理重要处理单元(“CPU”)的功率的常见技术是在计算机系统的多个不同状态之间动态地调节CPU内核的操作频率以及供电电压两者。通常,在计算机系统的功率操作点上,可能存在两种功耗分量,例如动态功率和泄漏功率。动态功率代表实际所需的电路操作。其可能与每秒时钟跳变的次数(频率)以及电压的平方成比例。泄漏功率代表对CPU完全供电的代价开销。其对于给定电压是固定的,并且通常随电压增大呈指数上升。但是,动态调节操作频率只能管理动态功率而对计算机系统的泄漏功率没有效果。
发明内容
用于管理数据处理系统的功率的方法和装置的示例性实施例已被描述。数据处理系统的一个或多个约束参数可以被监视。在一个或多个约束参数正被监视时,数据处理系统可以工作在第一频率和第一电压。基于一个或多个约束参数,数据处理系统在工作在第二频率和第二电压时被强制进入空闲状态。在一个实施例中,空闲状态防止指令被执行,并且第二频率大于零并小于第一频率,第二电压大于零并小于第一电压。在其他实施例中,空闲状态防止指令被执行并且第二频率为零,并且第二电压针对系统的至少一些部分也为零。在一个实施例中,强制系统进入空闲状态的速率是基于约束参数来确定的。约束参数例如可以是功率、温度、电流、电池负载或它们的任意组合。
在一个实施例中,工作在第一电压和第一频率的系统的约束参数被监视。如果第一电压是最小电压并且约束参数大于约束参数阈值,则系统可以被强制进入空闲状态。如果系统没有工作在最小电压并且约束参数大于约束参数阈值,则可以减小系统的操作点。系统的操作点可以通过减小系统的操作电压、系统的操作频率或它们的组合来减小。在一个实施例中,工作在第一频率和第一电压的系统的空闲状态百分比是基于约束参数来确定的。
至少在某些实施例中,一种数据处理系统可以包括:处理器;耦合到处理器的存储器;耦合到处理器的一个或多个传感器,用于监视工作在第一频率和第一电压的系统的约束参数。所述处理器被配置为在系统工作在第二频率和低于第一电压的第二电压时强制系统进入空闲状态,其中,所述空闲状态防止指令被执行。存储器可以存储关于何时以及怎样强制系统进入空闲状态的信息。在一个实施例中,处理器还可以被配置为确定强制系统进入空闲状态的速率。在一个实施例中,处理器还可以被配置为:如果第一电压是最小电压并且约束参数大于约束参数阈值,则强制系统进入空闲状态。在一个实施例中,所述处理器还可以被配置为:如果系统没有工作在所述最小电压上并且约束参数大于约束参数阈值,则降低系统的操作点。
在一个实施例中,处理器还被配置为:基于约束参数确定工作在第一频率和第一电压的系统处在空闲状态的百分比。
至少在某些实施例中,一种包含可执行程序指令的机器可读存储介质被描述,所述可执行程序指令致使数据处理系统执行如下操作:监视工作在第一频率和第一电压的系统的约束参数;在系统工作在第二频率和低于第一电压的第二电压时,基于对约束参数的监视,强制系统进入空闲状态。
在一个实施例中,机器可读存储介质还包括致使数据处理系统确定强制系统进入空闲状态的速率的指令。在一个实施例中,机器可读存储介质还包括致使数据处理系统执行如下操作的指令:如果第一电压是最小电压并且约束参数大于约束参数阈值,则强制系统进入空闲状态。
在一个实施例中,机器可读存储介质还包括致使数据处理系统执行如下操作的指令:如果系统没有工作在最小电压并且约束参数大于约束参数阈值,则降低系统的操作点(例如,电压、频率或它们的任意组合)。
在一个实施例中,机器可读存储介质还包括致使数据处理系统执行如下操作的指令:基于约束参数,确定工作在第一频率和第一电压的系统的空闲状态百分比。
至少在某些实施例中,一种数据处理系统被描述,其包括:用于监视工作在第一频率和第一电压的系统的约束参数的装置;用于在系统工作在第二频率和低于第一电压的第二电压时,基于对约束参数的监视,强制系统进入空闲状态的装置。在一个实施例中,数据处理系统还包括:用于如果第一电压是最小电压并且约束参数大于约束参数阈值,则强制系统进入空闲状态的装置。在一个实施例中,数据处理系统还包括:用于基于约束参数确定工作在第一频率和第一电压的系统的空闲状态百分比的装置。
本发明的其他特征将从附图以及随后的详细描述中变得显而易见。
附图说明
在附图中以示例方式而非限制方式图示出本发明,在附图中,类似标号指示类似元件。
图1A示出可被用于提供强制空闲状态的典型计算机系统的一个示例。
图1B示出提供强制空闲状态的系统的另一实施例。
图2示出提供强制空闲状态的系统的一个实施例。
图3A是示出数据处理系统的功率操作点的一个实施例的示图。
图3B是示出泄漏功率对电源电压的依赖性的示图。
图4是示出根据本发明的一个实施例,在数据处理系统持续操作时强制系统进入空闲状态的示图。
图5A是示出根据本发明的一个实施例,在数据处理系统持续操作时强制系统进入空闲状态的示图。
图5B是示出根据本发明的另一实施例,在数据处理系统持续操作时强制系统进入空闲状态的示图。
图6示出包括关于空闲状态的信息的表的一个实施例。
图7是强制数据处理系统进入空闲状态的方法的一个实施例的流程图。
图8是强制数据处理系统进入空闲状态的方法的一个实施例的流程图。
图9是基于约束参数强制数据处理系统进入空闲状态的方法的一个实施例的流程图。
图10示出用于动态地确定可以在这里描述的某些实施例中使用的功率用量预算的方法。
图11示出可以在这里描述的某些实施例中使用的功率用量情形。
图12是管理数据处理系统的功率到目标功率的方法的一个实施例的流程图。
图13是增大不带强制空闲的操作功率点的方法的一个实施例的流程图。
图14是增大包括强制空闲的操作功率点的方法1400的一个实施例的流程图。
图15是减小不带强制空闲的操作功率点的方法的一个实施例的流程图。
图16是减小包括强制空闲的操作功率点的方法的一个实施例的流程图。
图17是为数据处理系统提供强制空闲状态的方法的一个实施例的流程图。
图18是从强制空闲状态切换的方法的一个实施例的流程图。
图19是提供强制空闲状态的方法的一个实施例的流程图。
具体实施方式
下面将参考下述细节来描述本发明的各个实施例和方面,并且附图将图示出各个实施例。以下描述和附图是对本发明的举例说明,不应被理解为限制本发明。多个具体细节被描述,以用于对本发明的各个实施例的全面理解。但是,本领域技术人员将会意识到,无需这些具体细节也可以实施本发明的实施例。在其他实例中,公知的结构和设备以框图形式而非细节形式示出,以免模糊本发明的实施例。
在说明书中提到“一个实施例”或“实施例”意思是与该实施例相关联地描述的特定特征、结构或特性被包括在本发明的至少一个实施例中。在说明书中各个位置出现的短语“在一个实施例中”不一定指代同一实施例。
除非特别说明,否则将意识到,贯穿本说明,利用诸如“处理”或“计算”或“确定”或“显示”等术语所进行的论述指的是数据处理系统或类似电子计算设备的动作和进程,所述数据处理系统操纵计算机系统的寄存器和存储器中的被表示为物理(电子)量的数据并将该数据变换成其他数据,所述其他数据也被类似地表示为计算机系统存储器或寄存器或其他这样的信息存储设备、发送或显示设备中的物理量。
本发明的实施例可以涉及用于执行这里所描述的一种或多种操作的装置。该装置可以针对所需目的特别构造,或者其可以包括由存储在计算机中的计算机程序有选择地激活或重配置的通用计算机。这样的计算机程序可以被存储在机器(例如,计算机)可读存储介质中,所述机器可读存储介质例如是(但不局限于)任意类型的盘(包括软盘、光盘、CD-ROM和磁光盘)、只读存储器(ROM)、随机访问存储器(RAM)、可擦除可编程ROM(EPROM)、电子可擦除可编程ROM(EEPROM)、磁或光卡、或者适合于存储电子指令并各自耦合到总线的任意类型的介质。
机器可读介质包括用于存储或发送具有机器(例如,计算机)可读形式的信息的任意机制。例如,机器可读介质包括:只读存储器(ROM);随机访问存储器(RAM);磁盘存储介质;光存储介质;闪存设备;电、光、声或其他形式的介质。
这里呈现的算法和显示没有固有地与任意特定的计算机或其他装置相关。可以使用具有根据这里的教导的程序的各种通用系统,或者可以证明,构造更加专门的装置来执行所需的及其实现的方法操作是很方便的。用于这些系统的各种所需结构将从以下描述中显现。
另外,本发明的实施例没有参考任意特定的编程语言来描述。将会意识到,各种编程语言否可以被用来实现这里所描述的本发明的实施例的教导。
本发明的很多方法可以利用数字处理系统(例如,传统的通用计算机系统)来执行。计算机系统例如可以是由位于加州Cupertino的Apple Inc.所生产的条目级Mac miniTM和用户级iMacTM桌上型模型、工作站级MacProTM塔以及MacBookTM和MacBook ProTM膝上型计算机。小型系统(例如,非常薄的膝上型计算机)可以受益于这里所描述的方法。为执行仅一种功能而设计或编程的专用计算机或者诸如蜂窝电话之类的用户电子设备也可以执行这里所描述的方法。
图1A示出可以用来提供强制空闲状态的典型计算机系统的一个示例。注意,虽然图1A示出计算机系统的各种组件,但是其意图不是要代表任意特定的体系结构,或者如此详细描述的组件互连方式不是与本发明密切相关。还将意识到,具有更少组件或更多组件的网络计算机和其他数据处理系统也可以被用于本发明。图1A的计算机系统例如可以是AppleMacintosh
Figure BDA00003883904400071
计算机。
如图1A所示,具有数据处理系统形式的计算机系统100包括总线102,该总线102被耦合到微处理器103和ROM107和易失性RAM105和非易失性存储器106。如图1A的示例所示,微处理器103被耦合到缓存存储器104,所述微处理器103例如可以是来自Motorola,Inc.或IBM的G3、G4或G5微处理器或者来自Intel的微处理器。总线102将这些各种组件互连在一起并且还将这些组件103、107、105和106互连到显示控制器和显示设备108以及诸如输入/输出(I/O)设备之类的外围设备,所述I/O设备可以是鼠标、键盘、调制解调器、网络接口、打印机、扫描仪、视频相机和本领预公知的其他设备。通常,输入/输出设备110通过输入/输出控制器109被耦合到系统。易失性RAM105通常被实现为动态RAM(DRAM),其需要连续供电以刷新或维持存储器中的数据。非易失性存储器106通常是磁性硬盘驱动器或磁光驱动器或光学驱动器或DVD RAM或其它类型的存储器系统,其即使在从系统移走供电之后也能够维护数据。通常,非易失性存储器也将是随机访问存储器,但这不是必需的。虽然图1A示出非易失性存储器是直接耦合到数据处理系统的其余组件的本地设备,但是将会意识到,本发明可以利用远离系统的非易失性存储器,例如通过诸如调制解调器或以太网接口之类的网络接口耦合到数据处理系统的网络存储设备。总线102可以包括通过本领域公知的各种桥接器、控制器和/或适配器彼此连接的一个或多个总线。在一个实施例中,I/O控制器109包括用于控制USB(通用串行总线)外设的USB适配器和/或用于控制IEEE-1394外设的IEEE-1394总线适配器。
在本发明的一个实施例中,至少某些组件可以被主动抑制(throttle)以牺牲性能来供给功率用量。例如,微处理器103可以具有不同的内核电压和频率设置。在一个实施例中,系统100包括(一个或多个)被抑制的组件和(一个或多个)未被抑制的组件。被抑制的组件具有不同的抑制设置,在抑制设置上,组件工作但工作在不同的功率/性能级别(操作设置)上。例如,处理器可以被抑制为工作在不同的内核电压和内核频率上;盘驱动器可以被抑制为工作在不同的旋转速率上;总线可以被抑制在不同的频率上,等等。如果一组件没有被抑制来牺牲性能换取功率用量,该组件则被认为是未被抑制的组件。数据处理系统的被抑制的组件和未被抑制的组件在2005年8月25日递交的美国专利申请No.11/212,970中被更详细地描述,该在先申请通过引用被整体上结合于此。
在本发明的一个实施例中,系统100还包括耦合到(一个或多个)I/O控制器109的(一个或多个)功率用量传感器111。(一个或多个)传感器111可以包括一个或多个硬件和/或软件组件。在一个实施例中,传感器使用硬件来实现。可替换地,至少一些传感器可以使用软件来实现。例如,软件模块可被用来确定工作状态和用于从工作状态的预定功耗率计算实际功率用量的相应时间段,如在下述美国专利申请中更详细描述的:2005年8月25日递交的美国专利申请No.11/212,970;2006年1月5日递交的美国专利申请No.11/327,685;2006年1月5日递交的美国专利申请No.11/327,275;以及2006年1月5日递交的美国专利申请No.11/327,238,上述在先申请通过引用被整体上结合于此。
一个或多个传感器可以被用来监视系统100的一个或多个约束参数,如下面将更详细描述的。约束参数例如可以是可被耦合到系统100的电池(未示出)的功率、温度、电流、负载或者它们的任意组合。系统的一个或多个约束参数可以被监视来确定中央处理单元(CPU)(例如,微处理器103)和/或图形处理单元(GPU)(例如,显示控制器108的处理器)的功率用量。此外,一个或多个传感器可以被直接耦合到CPU和/或GPU(未示出)。
在一个实施例中,实际功率用量被(一个或多个)传感器111监视。例如,实际功率用量可以被周期性地测量来确定功率用量的历史。功率用量的历史可以被用来以某种平均方式确定功率用量。在一个实施例中,利用过去的功率用量的知识,系统可以动态地确定下一时间间隔的可允许的功率预算,如在2005年8月25日递交的美国专利申请No.11/212,970中更详细描述的,该在先申请通过引用被整体上结合于此。
在本发明的一个实施例中,微处理器103根据存储在缓存104、ROM107、RAM105和/或非易失性存储器106中的指令来动态确定功率用量的预算并强制系统100进入空闲状态,如下面将更详细描述的。可替换地,系统100还包括微控制器(未示出),用于基于存储在缓存104、ROM107、RAM105、非易失性存储器106中的信息或它们的任意组合来动态确定功率用量的预算并确定何时以及如何强制系统进入强制空闲状态,如下面将更详细描述的。在一个实施例中,数据处理系统100可以包括多个中央处理单元(CPU)/微处理器。
从本说明将会发现,本发明的各个方面可以至少部分体现为软件。就是说,这些技术可以在计算机系统或其他数据处理系统中响应于它的处理器(例如微处理器或微控制器)而执行,所述处理器执行包含在存储器中的指令序列,所述存储器例如是ROM107、易失性RAM105、非易失性存储器106、缓存104或其他存储设备或远程存储设备。在各个实施例中,可以将硬连线的电路与用于实现本发明的软件指令结合使用。因此,这些技术并不局限于硬件电路和软件的任意特定组合,也不局限于由数据处理系统执行的指令的任意特定源。另外,贯穿本说明,各种功能和操作被描述为由软件代码执行或引起以简化描述。但是,本领域技术人员将意识到,这些表示的意思是各种功能是通过处理器(例如微处理器103或微控制器)执行代码而导致的。
机器可读介质可以被用于存储软件和数据,所述软件和数据在被数据处理系统执行时指示系统执行本发明的各种方法。该可执行软件和数据可以被存储在各种空间中,例如包括如图1A所示的ROM107、易失性RAM105、非易失性存储器106和/或缓存104。该软件和/或数据的多部分可以被存储在这些存储设备中的任意一种中。
因此,机器可读介质包括以机器(例如,计算机、网络设备、个人数字助理、制造工具、具有一个或多个处理器的集合的任意设备、等等)可访问的形式提供(即,存储和/或发送)信息的任意机制。例如,机器可读介质包括可记录/不可记录的介质(例如,只读存储器(ROM);随机访问存储器(RAM);磁盘存储介质;光存储介质;闪存设备;等等)。
本发明的方法可以使用专用硬件(例如,使用现场可编程门阵列,或专用集成电路)或在存储在机器可读介质中的程序指令控制下的共享电路(例如,微处理器或微控制器)来实现。本发明的方法还可以被实现为在数据处理系统(例如,图1A的系统100)上执行的计算机指令。
图1B示出用于提供强制空闲状态的系统120的另一实施例。系统120具有多个子系统。在一个实施例中,多个子系统包括处理器,例如CPU、GPU、微控制器等等。如图1B所示,系统120包括:子系统121(例如CPU);子系统122(例如可以与显示设备耦合的GPU);以及一个或多个子系统129(例如,耦合到一个或多个I/O设备的一个或多个I/O控制器);以及耦合到总线126的微控制器127。此外,系统120包括易失性RAM124、非易失性存储器130(例如硬盘驱动器)、ROM123以及耦合到子系统121(其耦合到总线126)的缓存存储器125。
由这些子系统中的每一个的至少一个子集所使用的功率受例如微控制器(例如微控制器127)所控制,并且由每个子系统所使用的最大功率通过整个系统在一平均时段期间的动态功率历史所确定,如2005年8月25日递交的美国专利申请No.11/212,970中更详细描述的,该在先申请通过引用被整体上结合于此。这种功率控制至少在某些环境中允许较高性能的操作。即,如果在平均时段期间存在相当低的功率操作,即,空闲时间,则子系统可以在相当高功率的突发中工作,如在2005年8月25日递交的美国专利申请No.11/212,970中更详细描述的,该在先申请通过引用被整体上结合于此。
在一个实施例中,系统的功率基于负载简档(load profile)在子系统之间重新分发,如在下述美国申请中更详细描述的:2006年1月5日递交的美国专利申请No.11/327,685;2006年1月5日递交的美国专利申请No.11/327,275;以及2006年1月5日递交的美国专利申请No.11/327,238,上述在先申请通过引用被整体上结合于此。
一个或多个传感器128被耦合到子系统121、122、129以及微控制器127,如图1B所示。传感器可以被用来监视、测量和/或估计一个或多个约束参数(例如,功率、温度、电流、电池负载或它们的任意组合),以确定工作在一定频率和一定电压上的一个或多个子系统的实际功率用量。传感器128进而可以将所确定功率用量值提供到微控制器127,该微控制器127可以基于一个或多个感测到的参数来强制系统和/或子系统进入空闲状态,如下面将更详细描述的。上面针对图1A更详细地描述了系统120的组件,包括处理器、微控制器、总线、I/O控制器、I/O设备、存储器、传感器。在一个实施例中,一个多个查找表被存储在存储器126、124和125中的任意一个中或者存储在微控制器127中的存储器中,所述查找表包括关于何时以及怎样强制系统和/或子系统进入空闲状态的信息,如下面将更详细描述的。在一个实施例中,微控制器127执行下面参考图4-19所描述的方法。在另一实施例中,子系统121而非微控制器127执行下面参考图4-19所描述的方法。在又一实施例中,子系统121和微控制器127一起执行下面参考图4-19所描述的方法。
图2示出提供强制空闲状态的系统的一个实施例。如图2所示,系统200包括耦合到互连206(例如总线)的子系统A201(例如CPU)、子系统B202(例如可以与显示设备耦合的GPU)、子系统C204(例如存储器)、子系统D205(例如微处理器)和一个或多个子系统N203(例如耦合到一个或多个I/O设备的一个或多个I/O控制器)、以及功率管理器208(例如,微控制器)、系统管理控制器(“SMC”)。子系统C204可以是易失性RAM、非易失性存储器(例如硬盘驱动器)和/或ROM。如上参考图1A和1B所描述的一个或多个测量设备207(例如一个或多个传感器)被耦合到子系统201-205,并被耦合到功率管理器208,如图2所示。功率查找表209被耦合到功率管理器208,如图2所示,该功率查找表209可以包括一个或多个查找表,这些查找表包含关于如何以及何时进入强制空闲状态的信息,如下面将参考图4-19所描述的。上面已经参考图1A和1B详细描述了系统200的组件,包括处理器、微控制器、总线、I/O控制器、I/O设备、存储器、传感器。在一个实施例中,与计算机系统的各种性能设置相对应的一个或多个功率查找表可以被子系统201(或由设计和/或制造过程中的测试设备)生成,并被存储在存储器204和/或位于功率管理器208中的存储器中。包括计算机系统的各种性能设置的一个或多个功率查找表可以被使用,如在下述美国申请中更详细描述的:2005年8月25日递交的美国专利申请No.11/212.970;2006年1月5日递交的美国专利申请No.11/327,685;2006年1月5日递交的美国专利申请No.11/327,275;以及2006年1月5日递交的美国专利申请No.11/327,238,上述在先申请通过引用被整体上结合于此。在一个实施例中,功率管理器208执行下面参考图4-19所描述的方法。在另一实施例中,子系统201执行下面参考图4-19所描述的方法。
图3A是示出数据处理系统的功率操作点的一个实施例的示图。例如,该数据处理系统可以是图1A、图1B和图2中所描绘的数据处理系统中的任意一个。如图3A所示,数据处理系统的功率操作点(例如,功率操作点301-304)对应于数据处理系统的一对操作频率和电压。操作频率和电压例如可以是数据处理系统的微处理器的内核电压核频率。如图3A所示,最高功率操作点,例如操作点PH(302)代表数据处理系统所消耗的最高功率。由数据处理系统所消耗的最高功率可以基于一个或多个系统约束参数(例如功率、温度、电流、电池负载等等)来确定。最高功率操作点PH(302)可以对应于一对最高操作频率(fH)和电压(VH)。如图3A所示,中间功率操作点,例如操作点PN(303)代表数据处理系统所消耗的中间功率。中间功率操作点PN(303)对应于一对中间操作频率(fN)和电压(VN)。通常,如果数据处理系统的功率需要减小到低于由最小(最低)工作电压VL所定义的功率状态之下的功率状态,则可以减小数据处理系统的操作频率。数据处理系统的操作频率(fN)可以按比率X减小,其中X小于1。例如,如果电路在最低电压的操作频率(fN)为1GHz,则按X=20%的减小将操作频率改变到800MHz(第一情况)。这具有将动态功率减小20%的净效果,但对于泄漏功率没有效果。
数据处理系统的最小功率有效操作点是由数据处理系统的最低电压以及数据处理系统在工作在最低电压时被设计为持续表现的最高频率来确定的。该最小功率有效操作点通常被称为低频率模式(“LFM”),该最小功率有效操作点例如是对应于最低(最小)操作电压(VL)和相应的最高(最大)操作频率(FL)的操作点PL(301)。通常,最低操作电压VL不会大于数百毫瓦。通常,数据处理系统可以仅将可管理的功率减小到最小功率操作点(例如PL(301)),因为数据处理系统在该点之下不具有实际操作点;由于数据处理系统已经在最小电压上,其唯一替换方式是降低操作频率,该替换方式效率较低并且可能甚至不起作用。
通常,为了在数据处理系统没有任务要执行时节省功率,数据处理系统完全停止时钟(零频率)。这具有将动态功率减小到零的效果。除了停止时钟之外,数据处理系统还可以移动到更低的电压电平。这具有呈指数减小泄漏功率的效果,如图3B所示,图3B示出泄漏功率(Pleak)与电源电压的关系。该操作点通常被称为空闲状态。
至少这里描述的某些实施例通过使用智能决定的强制空闲操作来允许系统工作在最小功率操作点(例如PL301)以下,在至少某些实施例中,该智能决定的强制空闲操作基于实际空闲时间和目标空闲时间之间的比较(如下面将描述的图18和19所示)来强制进入空闲状态(即使有任务要执行,例如有等待被执行的软件指令);这种强制的空闲操作是智能的,因为可能存在比较结果显示空闲状态不应被强制的时间(例如,当已经存在充分的空闲时间时)。
在一个实施例中,通过在最低功率操作点处连续操作数据处理系统,并且通过对于该操作时间(例如,一个时钟周期)的某一百分比(例如,20%)强制该数据处理系统进入空闲状态,创建了低于最小功率操作点的额外操作点。具有20%强制空闲的最小操作点(该时间的20%中系统被强制空闲)的有效功率是最小操作点的功率的0.8倍加上空闲状态的功率的0.2倍。由于空闲状态的功率非常低,该具有智能决定的强制空闲的新操作点代表了功率比最小操作点小的一个点。
在一个实施例中,强制的空闲状态是在数据处理系统的任意功率操作点上提供的。例如,强制的空闲状态可以在功率操作点301、302和303中的任意一个上提供,并且这些强制空闲状态创建了可能在某些实施例中有用的中间点。
在实现强制空闲方案时存在很多重要考虑。某些软件任务(例如,多媒体回放)需要实时响应并且可能不能承受延迟。很多硬件设备需要它们的软件驱动器在固定的等待时间之内对它们作出响应,否则可能导致不正确的操作。某些软件线程(例如实时任务、中断)无法经受强制空闲操作。强制空闲的适当实现方式需要将这些问题纳入考量(但是这不是取决于所实现的系统的需求的要求)。在一个实施例中,操作系统(OS)内核对例如哪些线程可以被保持关断(off)保持跟踪,这要求独立于强制空闲设置的立即操作。该内核负责保证在存在实时线程时维持长时间的平均强制空闲百分比。在一个实施例中,在内核中的调度器对在数据处理系统上运行的所有进程/线程执行强制空闲操作。在一个实施例中,操作系统(“OS”)调度器机制被用于提供强制空闲。
图4是示出根据本发明的一个实施例,在数据处理系统持续操作时强制该系统进入空闲状态的示图。如图4所示,数据处理系统在第一部分(例如,操作时间(例如时间T3(401))的部分T2(403))被强制进入空闲状态S2(406),而在第二部分(例如,操作时间(例如时间T3(401))的部分T1(402)),系统持续工作在全(例如100%)操作状态S1(407)中。在一个实施例中,数据处理系统在任意相应的操作电压所允许的操作频率下持续工作在状态S1(407)中。在一个实施例中,数据处理系统在以最低电压所允许的最大频率持续工作在工作状态S1(407)中时被强制进入空闲状态。如图4所示,数据处理系统在时间t1、t2、t3和t4被强制进入空闲状态。
图5A是示出根据本发明的一个实施例在数据处理系统持续操作时强制该系统进入空闲状态的示图。如图5A所示,当系统以某一操作频率和电压持续工作时间的一部分(例如,时间T1(506)的部分502)时,基于一个或多个约束参数,系统被强制进入空闲状态达时间的另一部分(例如,时间T1的部分504)。在一个实施例中,时间T1是数据处理系统的时钟周期(例如T~1/f)。在一个实施例中,空闲状态防止系统执行指令。在一个实施例中,时钟在系统处于空闲状态时停止(操作频率为零)。如图5A所示,强制系统处于空闲状态的调制比被保持恒定,从而使得系统在空闲状态所花费的时间部分和系统在全操作状态所花费的时间部分保持基本相同。
图5B是示出根据本发明的另一实施例在数据处理系统持续操作时强制该系统进入空闲状态的示图。如图5B所示,当系统处于强制空闲状态时,在时间t1接收到中断1(508)。系统响应于中断1被切换回到工作在以某一频率和电压的全(例如100%)操作状态中,如图5B所示。在一个实施例中,响应于中断从空闲状态到全操作状态的切换是基于实际空闲时间和目标空闲时间来执行的,如下面将更详细描述的。在服务了中断1之后,系统被切换回到强制空闲状态。系统可以保持在强制空闲状态中持续空闲时间512,如图5B所示。在一个实施例中,空闲时间512可以基于系统约束参数并且基于系统为了服务中断1而在全操作状态中花费了多少时间(时间510)来确定。如图5B所示,在系统处于空闲状态时,在时间t2接收到中断2。系统响应于中断2被切换回到工作在全(例如100%)操作状态中。系统可以保持在全操作状态中持续时间518,如图5B所示。在一个实施例中,时间518是基于系统约束参数和所累积的空闲时间量来确定的。在一个实施例中,所累积的空闲时间是在数据处理系统的一个或多个时钟周期上确定的。如图5B所示,在服务了中断之后,系统被强制回到空闲状态达时间520,然后被切换到全操作状态以在时间522期间进行操作,该时间522可以由系统约束参数和所累积的空闲时间来确定,如下所述。就是说,系统被允许在强制空闲状态期间的任何时候基于热/功率约束而对中断进行服务以操作高优先级的任务,所述热/功率约束对系统的响应性是非常重要的。
另一重要考量是强制空闲和数据处理系统在连续的强制空闲状态中可以花费的最大时间的调制比。如果用于使能和禁止指令执行(例如,为了执行计算)的调制比过快,则将花费极大的功率和计算能量来管理强制空闲循环的开销。如果用于使能和禁止指令执行的调制比过慢,则较高的空闲百分比将导致相当长的强制空闲时段。在一个实施例中,提供如下控制:较低百分比的强制空闲时段全部以基本相同的比率运行,如下面将更详细描述的。在一个实施例中,当强制空闲百分比达到空闲时间处于所需的最大值的阈值时,空闲比率开始增大,以使得永远不会超过最大空闲时间,如下面将更详细描述的。
图7是强制数据处理系统进入空闲状态的方法700的一个实施例的流程图。方法开始于操作701,该操作包含监视工作在第一频率和第一电压的数据处理系统的约束参数。该约束参数可以是数据处理系统所消耗的功率、数据处理系统的温度、提供到数据处理系统的电流、被耦合以向数据处理系统供电的电池的负载、等等。约束参数可以使用如上所述的一个或多个传感器来监视和测量。方法700继续到操作702,该操作包含当基于约束参数系统持续工作在第二频率和不同于(低于)第一电压的第二电压时,强制系统进入空闲状态。在一个实施例中,强制数据处理系统进入空闲状态包含防止指令被系统执行。在一个实施例中,当系统处于空闲状态时的时间段是分散的,和/或被当系统工作在较高性能水平时的时间段所交织,从而使得系统所消耗的平均功率不会超过从系统的功率和/或热约束所确定的最大平均功率。就是说,强制空闲状态的占空操作(dutycycling)可以按照如下速率来执行:该速率使得用户不需要知道它们的机器发生了什么,如下面将更详细描述的。在一个实施例中,强制空闲状态的占空操作完全在频域中执行。强制空闲操作机制将数据处理系统的功率管理扩展到超出最小功率操作点,例如图3A所示的PL(301)。
图8是强制数据处理系统进入空闲状态的方法800的一个实施例的流程图。方法开始于操作801,该操作包含监视工作在第一频率和第一电压的数据处理系统的约束参数(例如,实际功率、温度、电流、电池负载等约束参数或它们的任意组合)。方法继续到操作802,该操作包含判断约束参数是否大于第一约束参数阈值。约束参数阈值可以与数据处理系统的规范功率、温度、电池负载、电流相关联。约束参数阈值可以是针对数据处理系统的多个子系统(例如图1B和2所示的子系统)有效的最坏情况值。在一个实施例中,约束参数阈值可以例如是从多个测量样本的统计分布曲线确定的最坏情况功率、温度、电流或电池负载值。在一个实施例中,测量出的约束参数(例如实际测得的功率、温度、电流、电池负载或它们的任意组合)被与约束参数阈值相比较,以判断测量出的约束参数是否大于或等于第一约束参数阈值。如果约束参数不大于或等于第一约束参数阈值,则在操作803判断约束参数是否小于第二约束参数阈值。第二约束参数阈值可以通过从第一约束参数阈值减去一滞后量(hysteresis)来确定。如果约束参数小于第二约束参数阈值,则可以在操作804增大操作点(例如,频率、电压),然后方法800返回到操作801。如果约束参数不小于第二约束参数阈值,方法则返回操作801。如果约束参数大于或等于第一约束参数阈值,则在操作806判断数据处理系统的第一操作电压和/或第一操作频率是否可以被进一步降低。接下来,如果确定可以降低第一操作电压和/或第一操作频率,则在操作805降低操作功率点(例如频率和/或电压),然后方法800返回操作801。例如,如果第一操作电压对应于中间操作电压(例如VN)和/或第一操作频率对应于中间操作频率(例如fN),如图3A所示,则可以通过将电压和/或频率例如降低到最低操作频率fL和/或电压VL来向下移动操作功率点。如果确定第一操作电压和/或第一操作频率无法降低,则在数据处理系统持续操作在第一操作频率和第一操作电压的同时在操作807强制系统进入空闲状态。在一个实施例中,第一操作电压是否是最小操作电压被判断。在一个实施例中,如果第一操作电压是最小操作电压并且监视到的实际约束参数大于约束参数阈值,则强制系统进入空闲状态。在一个实施例中,强制数据处理系统进入空闲状态包含防止指令被数据处理系统所执行。在一个实施例中,如果系统没有工作在最小电压并且监视到的实际约束参数大于约束参数阈值,则降低系统的操作点(例如,频率和/或电压)。
在一个实施例中,工作在第一频率和第一电压下的系统的空闲状态的百分比是基于约束参数来确定的。例如,空闲状态的百分比可以基于约束参数来减小或增大。
图9是基于约束参数强制数据处理系统进入空闲状态的方法900的一个实施例的流程图。方法900开始于操作901,该操作包含监视数据处理系统的约束参数(例如,实际使用的功率、实际温度、电流、电池负载或它们的任意组合),如上所述。在操作902,判断约束参数是否大于或等于约束参数阈值,如上所述。在操作904,如果确定约束参数大于或等于约束参数阈值,则增大强制空闲状态相对于总操作时间的百分比(部分)。如果确定约束参数不大于或等于约束参数阈值,则可以在操作903可选地增大强制空闲状态的百分比。
返回参考图4,基于约束参数,空闲状态部分T2被增大到T2′(405),全操作状态部分T1被减小到T1′(404)。
图6示出包括关于空闲状态的信息的表600的一个实施例。如图6所示,表600包括如下列:空闲比、空闲速率和空闲时间。在一个实施例中,较低百分比(例如,最大30%)的强制空闲周期全部以相同速率运行。当强制空闲百分比达到使得空闲状态所花费的时间(空闲时间)处于所需最大值的阈值时,则空闲速率开始增大,以使得不会超过最大空闲时间。如图6所示,当空闲比小于或等于30时,空闲速率可以维持在恒定值30000微秒,并且空闲时间随空闲比增大而增大。如图6所示,如果空闲比变为大于30,则空闲速率增大,而空闲时间可以保持在10000微秒的恒定值。
图12是用于管理数据处理系统的功率到目标功率的方法1220的一个实施例的流程图。方法1220开始于1200。在1201,执行初始化,其中积分误差(Integral Error)被设置为零(“Integral Error=0”)。在一个实施例中,积分误差被定义为数据处理系统的测得功率和目标功率之差。在操作1202,方法1200等待下一样本间隔以测量数据处理系统的功率。在操作1203,数据处理系统的目标功率和测得功率被接收。在一个实施例中,功率是使用一个或多个传感器(如上所述)在样本时间间隔期间测得的。数据处理系统的目标功率基于一个和多个系统约束参数和数据处理系统的所需性能来确定,如上所述。在操作1204,在样本间隔期间测得的功率与数据处理系统的目标功率之差(“误差”)被确定。在操作1205,确定累积误差(“积分误差”)。在一个实施例中,在多个样本间隔上累积的积分误差被确定。在一个实施例中,在数据处理系统的一个或多个时钟周期上累积的积分误差被确定。在操作1206,确定时间(例如,数据处理系统的一个或多个时钟周期和/或样本间隔)上的积分功率(“PI”)。在一个实施例中,PI是通过使用以下公式将控制系统增益“G-term”应用到误差和积分误差来计算的:
PI=Gp*Error+Gi Integral*Error,    (1)
其中,Gp可以与对在样本间隔上确定误差的加权因子相关联,Gi与对积分误差的加权因子相关联。
在操作1207,判断积分功率(“PI”)是否大于上阈值(“+阈值”)。如果PI大于上阈值,则在操作1209减小操作功率点。如果PI不大于上阈值,则在操作1208判断PI是否小于下阈值。如果PI小于下阈值,则在操作1210增大操作功率点。
图15是无需强制空闲而降低操作功率点(1501)的方法1500的一个实施例的流程图。在操作1502,判断频率和/或电压是否在最低(最小)水平。如果频率和/或电压不在最低水平,则在操作1503减小频率和/或电压。如果频率和/或电压在最低水平,方法1500则在1504结束。但是,在很多情况下,该最低水平可能不足够,并且可以使用智能的强制空闲操作来获得在该最低水平上的更好性能。
图16是包括强制空闲的降低操作功率点(1601)的方法1600的一个实施例的流程图。在操作1602,判断频率和/或电压是否在最低水平。如果频率和/或电压不在最低水平,则在操作1603减小频率和/或电压。如果频率和/或电压在最低水平,则在操作1604判断强制空闲百分比是否在最大空闲百分比水平。如果强制空闲百分比不在最大空闲百分比水平,则在操作1605增大强制空闲百分比。方法1600在1606结束。
图13是无需强制空闲而增大操作功率点(1301)的方法1300的一个实施例的流程图。在操作1303,判断频率和/或电压是否在最高(最大)水平。如果数据处理系统频率和/或电压不在最大水平,则方法继续到操作1303,该操作包含增大数据处理系统频率和/或电压。如果频率和/或电压在最高水平,则方法1300结束。
图14是包括强制空闲的增大操作功率点(1401)的方法1400的一个实施例的流程图。在操作1402,判断强制空闲百分比是否为0%。如果强制空闲百分比不是0%,则在操作1403减小强制空闲百分比。如果强制空闲百分比是0%,则在操作1404判断频率和/或电压是否在最高水平。如果频率和/或电压不在最高水平,则在操作1405增大频率和/或电压。方法在1406结束。
图17是为数据处理系统提供强制空闲状态的方法1700的一个实施例的流程图。如图17所示,方法1700开始于操作1701,该操作包括监视数据处理系统的一个或多个约束参数,如上所述。方法继续到操作1702,该操作包含基于这一个或多个约束参数,强制数据处理系统在时间的第一部分中进入空闲状态,而允许系统在时间的第二部分中进行操作。该强制是响应于目标空闲时间和实际空闲时间之间的比较的。
图18是从强制空闲状态进行切换的方法1800的一个实施例的流程图。方法1800开始于操作1801,该操作包含基于数据处理系统的一个或多个约束参数确定目标强制空闲时间。例如,目标强制空闲时间可以通过将操作周期(例如,数据处理系统的时钟周期)乘以空闲比来确定。在一个实施例中,空闲比与空闲时间相对于总操作时间的部分相关联,如上所述。在一个实施例中,空闲比是基于系统功率/热约束和系统性能来确定的。方法继续到操作1802,该操作包含监视数据处理系统已经在空闲状态中花费的实际时间(“实际空闲时间”)。在一个实施例中,实际空闲时间由一个或多个传感器测量并被存储在系统的存储器中,用来提供在系统的一个或多个时钟周期上的累积空闲时间。在一个实施例中,累积空闲时间是在系统的一个或多个时钟周期上确定的。
在操作1803,累计的空闲时间基于实际空闲时间被确定。在操作1804,判断累积的空闲时间是否大于或等于目标空闲时间。如果累积空闲时间大于或等于目标空闲时间,则允许系统基于目标空闲时间和累积空闲时间、在操作1805从空闲状态切换到全操作状态持续该时间的一部分。在一个实施例中,系统被从空闲状态切换以持续操作工作时间的一部分。在一个实施例中,空闲状态防止数据处理系统执行等待被执行的软件指令。在一个实施例中,数据处理系统的存储器存储一个或多个查找表,这些查找表包括与一个或多个约束参数相关联的目标空闲时间。
图19是提供强制空闲状态的方法1900的一个实施例的流程图。方法1900开始于1901,该操作包含开始强制空闲状态。在操作1902,判断数据处理系统被允许运行的时间与强制空闲时间之比(“操作比”)是否小于100。如果操作比小于100,则在操作1903使用以下公式确定空闲百分比(部分):
max_idle=((100–操作比)*Period)/100,    (2)
其中,Period代表系统的时钟周期T=1/f,其中f是系统的频率。
接下来,在操作1905判断空闲百分比是否大于最近空闲(“last_idle”)。在一个实施例中,最近空闲是从先前的时间(例如,系统的时钟周期)确定的。如果max_idle大于last_idle,则在操作1907通过根据以下公式考虑到最近空闲来计算累积空闲:
max_idle=max_idle–last_idle,    (3)
如果max_idle不大于last_idle,则在操作1906将max_idle设置为0。然后,方法1900继续到操作1908,该操作包含根据以下公式确定允许数据处理系统进行操作的周期的结尾:
period_end=now+Period,    (4)
其中,“now”是当前时间,“Period”是时钟周期。
接下来,在操作1909,根据以下公式确定目标空闲时间(“idle_goal”):
idle_goal=accumulated_idle+最大空闲,    (5)
其中,“accumulated_idle”是从一个或多个先前时间(例如,时钟周期)累积的空闲时间的总量,“最大空闲”是最近的空闲时间。
此外,在操作1910,判断累积空闲是否小于idle_goal。如果累积空闲小于idle_goal,则只允许高优先级线程在操作1914运行。数据处理系统(例如CPU)在操作1915被强制进入空闲状态持续最多max_idle时间。在一个实施例中,中断使系统退出空闲状态。在考虑到中断的情况下,针对数据处理系统在强制空闲状态中所花费的时间量对累积空闲进行更新。然后,方法1900返回操作1910。如果累积空闲不小于idle_goal,则在操作1911将空闲开始时间设置为accumulated_idle。方法1900继续到操作1912,该操作包含允许任何线程运行,直到在操作1908所确定的period_end。在操作1913,根据以下公式确定last_idle:
last_idle=accumulated_idle–idle_start,    (6)
然后,方法1900返回操作1902。
如图18和19所示的智能强制空闲操作可以与在如下美国申请中所描述的功率和/或热管理技术中的一种或多种结合执行:2005年8月25日递交的美国申请No.11/212,970和/或2006年1月5日递交的美国申请No.11/327,685。例如,智能强制空闲操作可以通过对功率用量取平均来使用,以允许动态确定针对未来时间间隔的可允许的功率预算;图10和11是来自美国申请No.11/212,970,并且与使用功率用量的平均的实施例相关,并且这些实施例和附图在该申请中有进一步描述。
在前述说明书中,已经参考特定示例性实施例描述了本发明的实施例。将会发现,在不脱离本发明的更广阔精神和范围的情况下可以作出各种修改。因此,认为说明书和附图是示例性而非限制性的。
相关申请
本申请与2008年1月7日递交的Keith Cox、David Conroy、MichaelCulbert和Guy Sptpmayor的题为“Forced Idle of a Data Processing System”的美国专利申请No.11/970,483相关(律师卷号No.4860P6078)。

Claims (18)

1.一种机器实现的方法,包括:
监视工作在第一频率和第一电压的系统的约束参数;
基于对所述约束参数的监视强制所述系统进入空闲状态,其中在所述空闲状态中通过至少将所述第一电压降低到第二电压来防止指令被执行,其中,在所述空闲状态中,没有指令被处理器执行,并且同时所述系统操作于第二频率和所述第二电压,所述第二电压低于最小操作电压并且大于零伏特,
其中,强制所述系统进入空闲状态包括在总操作时段的预定部分强制所述系统进入所述空闲状态,并且在所述总操作时段的剩余部分在第一电压和第一频率操作所述系统,从而形成强制的空闲状态与操作状态的轮流占空周期。
2.如权利要求1所述的机器实现的方法,其中所述第二频率低于所述第一频率。
3.如权利要求1所述的机器实现的方法,还包括:
确定强制所述系统进入所述空闲状态的速率。
4.如权利要求1所述的机器实现的方法,还包括:
判断所述约束参数是否大于约束参数阈值;
判断所述第一电压是否是所述最小操作电压;以及
如果所述第一电压是所述最小操作电压并且所述约束参数大于所述约束参数阈值,则强制所述系统进入所述空闲状态。
5.如权利要求4所述的机器实现的方法,还包括:
如果所述系统没有工作在所述最小电压上并且所述约束参数大于所述约束参数阈值,则降低所述系统的工作点。
6.如权利要求1所述的机器实现的方法,其中所述约束参数是功率、温度、电流、电池负载或它们的任意组合,并且所述第二频率大于零并小于所述第一频率,并且其中所述第二电压大于零并小于所述第一电压。
7.如权利要求1所述的机器实现的方法,还包括:
基于所述约束参数确定工作在所述第一频率和所述第一电压的所述系统处在所述空闲状态的百分比,并且其中针对所述系统的至少一部分,所述第二频率为零并且所述第二电压为零。
8.一种数据处理系统,包括:
处理器;
耦合到所述处理器的存储器;
耦合到所述处理器的一个或多个传感器,用于监视工作在第一频率和第一电压的系统的约束参数,所述处理器被配置为基于对所述约束参数的监视强制所述系统进入空闲状态,其中在所述空闲状态中通过至少将所述第一电压降低到低于工作电压的第二电压来防止指令被执行,其中,在所述空闲状态中,没有指令被所述处理器执行,并且同时所述系统操作于第二频率和所述第二电压,所述第二电压低于最小操作电压并且大于零伏特,
其中,强制所述系统进入空闲状态包括在总操作时段的预定部分强制所述系统进入所述空闲状态,并且在所述总操作时段的剩余部分在第一电压和第一频率操作所述系统,从而形成强制的空闲状态与操作状态的轮流占空周期。
9.如权利要求8所述的数据处理系统,其中所述第二频率低于所述第一频率。
10.如权利要求8所述的数据处理系统,其中所述处理器还被配置为:
确定强制所述系统进入所述空闲状态的速率。
11.如权利要求8所述的数据处理系统,其中所述处理器还被配置为:
判断所述约束参数是否大于约束参数阈值,判断所述第一电压是否是所述最小操作电压,并且如果所述第一电压是所述最小操作电压并且所述约束参数大于所述约束参数阈值,则强制所述系统进入所述空闲状态。
12.如权利要求11所述的数据处理系统,其中所述处理器还被配置为:
如果所述系统没有工作在所述最小电压上并且所述约束参数大于所述约束参数阈值,则降低所述系统的工作点。
13.如权利要求8所述的数据处理系统,其中所述处理器还被配置为:
基于所述约束参数确定工作在所述第一频率和所述第一电压的所述系统处在所述空闲状态的百分比,并且其中针对所述系统的至少一部分,所述第二频率为零并且所述第二电压为零。
14.如权利要求8所述的数据处理系统,其中所述存储器存储关于何时和怎样强制所述系统进入所述空闲状态的信息。
15.如权利要求8所述的数据处理系统,其中所述约束参数是功率、温度、电流、电池负载或它们的任意组合,并且所述第二频率大于零并小于所述第一频率,并且其中所述第二电压大于零并小于所述第一电压。
16.一种数据处理系统,包括:
用于监视工作在第一频率和第一电压的系统的约束参数的装置;
用于基于对所述约束参数的监视强制所述系统进入空闲状态的装置,其中在所述空闲状态中通过至少将所述第一电压降低到第二电压来防止指令被执行,其中,在所述空闲状态中,没有指令被处理器执行,并且同时所述系统操作于第二频率和所述第二电压,所述第二电压低于最小操作电压并且大于零伏特,
其中,强制所述系统进入空闲状态包括在总操作时段的预定部分强制所述系统进入所述空闲状态,并且在所述总操作时段的剩余部分在第一电压和第一频率操作所述系统,从而形成强制的空闲状态与操作状态的轮流占空周期。
17.如权利要求16所述的数据处理系统,其中还包括:
用于判断所述约束参数是否大于约束参数阈值的装置;
用于判断所述第一电压是否是所述最小操作电压的装置;以及
用于如果所述第一电压是所述最小操作电压并且所述约束参数大于所述约束参数阈值,则强制所述系统进入所述空闲状态的装置。
18.如权利要求16所述的数据处理系统,还包括:
用于基于所述约束参数确定工作在所述第一频率和所述第一电压的所述系统处在所述空闲状态的百分比的装置,并且所述第二频率大于零并小于所述第一频率,并且其中所述第二电压大于零并小于所述第一电压。
CN201310447402.1A 2008-01-07 2008-12-22 数据处理系统的强制空闲 Active CN103593041B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/970,476 US7949888B2 (en) 2008-01-07 2008-01-07 Forced idle of a data processing system
US11/970,476 2008-01-07

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN200880124193.4A Division CN101910975B (zh) 2008-01-07 2008-12-22 数据处理系统的强制空闲

Publications (2)

Publication Number Publication Date
CN103593041A true CN103593041A (zh) 2014-02-19
CN103593041B CN103593041B (zh) 2016-06-29

Family

ID=40404108

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201310447402.1A Active CN103593041B (zh) 2008-01-07 2008-12-22 数据处理系统的强制空闲
CN200880124193.4A Active CN101910975B (zh) 2008-01-07 2008-12-22 数据处理系统的强制空闲

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN200880124193.4A Active CN101910975B (zh) 2008-01-07 2008-12-22 数据处理系统的强制空闲

Country Status (5)

Country Link
US (1) US7949888B2 (zh)
EP (1) EP2250542B1 (zh)
KR (1) KR101233434B1 (zh)
CN (2) CN103593041B (zh)
WO (1) WO2009088445A1 (zh)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101520745B (zh) * 2008-02-27 2012-03-28 联想(北京)有限公司 数据处理设备及其状态切换方法
US8464086B2 (en) * 2008-03-03 2013-06-11 Hewlett-Packard Development Company, L.P. Software-based power capping
US8315746B2 (en) 2008-05-30 2012-11-20 Apple Inc. Thermal management techniques in an electronic device
CN101655735B (zh) * 2008-08-20 2011-06-22 鸿富锦精密工业(深圳)有限公司 负荷侦测系统及方法
US8306772B2 (en) 2008-10-13 2012-11-06 Apple Inc. Method for estimating temperature at a critical point
US8127160B2 (en) * 2008-10-13 2012-02-28 International Business Machines Corporation Dynamic frequency and voltage scaling for a computer processor
US20100094572A1 (en) * 2008-10-15 2010-04-15 International Business Machines Corporation Dynamic Frequency And Voltage Scaling For A Computer Processor
US8291421B2 (en) * 2008-11-19 2012-10-16 Sharp Laboratories Of America, Inc. Idle task monitor
US8370665B2 (en) * 2010-01-11 2013-02-05 Qualcomm Incorporated System and method of sampling data within a central processing unit
US8667308B2 (en) 2010-06-18 2014-03-04 Apple Inc. Dynamic voltage dithering
US8364999B1 (en) * 2010-06-23 2013-01-29 Nvdia Corporation System and method for processor workload metering
US8555095B2 (en) 2010-07-26 2013-10-08 Apple Inc. Methods and systems for dynamically controlling operations in a non-volatile memory to limit power consumption
US8855969B2 (en) 2011-06-27 2014-10-07 International Business Machines Corporation Frequency guard band validation of processors
US20130038422A1 (en) * 2011-08-11 2013-02-14 Ralink Technology Corporation Method and system of reducing the temperature of an integrated circuit and a digital communication system using same
US8595525B2 (en) * 2011-09-22 2013-11-26 Qualcomm Incorporated On-chip thermal management techniques using inter-processor time dependent power density data for indentification of thermal aggressors
US9122464B2 (en) * 2011-12-22 2015-09-01 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including energy efficient processor thermal throttling using deep power down mode
JP2013218672A (ja) * 2012-03-14 2013-10-24 Toshiba Corp 状態制御装置、情報処理装置、プログラム、および半導体装置
US9285431B2 (en) 2012-04-10 2016-03-15 Tencent Technology (Shenzhen) Company Limited Method for monitoring and managing battery charge level and apparatus for performing the same
CN103369124A (zh) * 2012-04-10 2013-10-23 腾讯科技(深圳)有限公司 电池管理方法及装置
US9395785B2 (en) 2012-07-19 2016-07-19 Tencent Technology (Shenzhen) Company Limited Method and device for controlling terminal and terminal thereof
CN102799489B (zh) * 2012-07-19 2014-04-16 腾讯科技(深圳)有限公司 对终端进行控制的方法、装置及终端
US10223156B2 (en) * 2013-06-09 2019-03-05 Apple Inc. Initiating background updates based on user activity
JP6162329B2 (ja) * 2013-06-28 2017-07-12 インテル コーポレイション マルチコンポーネントプラットフォームにおけるアクティビティ管理のための技術およびシステム
US10466763B2 (en) * 2013-12-02 2019-11-05 Nvidia Corporation Dynamic voltage-frequency scaling to limit power transients
US10117600B2 (en) * 2014-04-15 2018-11-06 Apple Inc. Pacing activity data of a user
US9813990B2 (en) 2014-05-30 2017-11-07 Apple Inc. Dynamic adjustment of mobile device based on voter feedback
US9432796B2 (en) 2014-05-30 2016-08-30 Apple Inc. Dynamic adjustment of mobile device based on peer event data
US9760158B2 (en) 2014-06-06 2017-09-12 Intel Corporation Forcing a processor into a low power state
KR102218699B1 (ko) * 2014-09-15 2021-02-22 삼성전자주식회사 스마트 카드의 동작 방법 및 이를 포함하는 스마트 카드 시스템의 동작 방법
CN104409097B (zh) * 2014-10-10 2017-10-13 北京航空航天大学 一种利用电源检测实现非易失性异步逻辑电路的低功耗控制方法
US10491708B2 (en) 2015-06-05 2019-11-26 Apple Inc. Context notifications
US10324519B2 (en) * 2016-06-23 2019-06-18 Intel Corporation Controlling forced idle state operation in a processor
US10216256B2 (en) * 2016-10-03 2019-02-26 Microsoft Technology Licensing, Llc Power conservation of computing components using forced idle state

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5627412A (en) * 1994-11-07 1997-05-06 Norand Corporation Dynamically switchable power supply
TW330258B (en) * 1995-09-29 1998-04-21 Intel Corp The apparatus & method for reducing power-consumptive using voltage & frequency scaling
US20040181698A1 (en) * 2003-03-13 2004-09-16 Sun Microsystems, Inc. Method and apparatus for supplying power in electronic equipment
US20050102539A1 (en) * 2003-11-06 2005-05-12 International Business Machines Corporation Computer-component power-consumption monitoring and control

Family Cites Families (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5167024A (en) * 1989-09-08 1992-11-24 Apple Computer, Inc. Power management for a laptop computer with slow and sleep modes
US5396635A (en) * 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
WO1993007557A1 (en) * 1991-10-02 1993-04-15 Kabushiki Kaisha Toshiba Electronic appliance automatically controlling electric power consumed by components in response to operation time inputted by user
US5483656A (en) * 1993-01-14 1996-01-09 Apple Computer, Inc. System for managing power consumption of devices coupled to a common bus
EP0632360A1 (en) 1993-06-29 1995-01-04 Xerox Corporation Reducing computer power consumption by dynamic voltage and frequency variation
DE69535577T2 (de) * 1994-12-22 2008-03-06 Intel Corp., Santa Clara Leistungsverwaltung mit charakteristischem leistungsverbrauch einer vorrichtung
US5833365A (en) * 1995-03-24 1998-11-10 Interuniversitair Micro-Electronika Centrum Vzw Method for local temperature sensing for use in performing high resolution in-situ parameter measurements
US5520153A (en) * 1995-04-28 1996-05-28 Saturn Corporation Internal combustion engine control
US5963424A (en) * 1995-11-07 1999-10-05 Sun Microsystems, Inc. Pulsar desk top system that will produce 500 watts of heat
US5812860A (en) * 1996-02-12 1998-09-22 Intel Corporation Method and apparatus providing multiple voltages and frequencies selectable based on real time criteria to control power consumption
JP3637181B2 (ja) * 1997-05-09 2005-04-13 株式会社東芝 コンピュータシステムおよびそのクーリング制御方法
US6122758A (en) * 1997-05-13 2000-09-19 Micron Electronics, Inc. System for mapping environmental resources to memory for program access
US6415388B1 (en) * 1998-10-30 2002-07-02 Intel Corporation Method and apparatus for power throttling in a microprocessor using a closed loop feedback system
US6789037B2 (en) * 1999-03-30 2004-09-07 Intel Corporation Methods and apparatus for thermal management of an integrated circuit die
US6270252B1 (en) * 1999-05-18 2001-08-07 Alaris Medical Systems, Inc. Predictive temperature measurement system
US6477156B1 (en) * 1999-06-29 2002-11-05 Nokia Corporation Apparatus, and associated method, for selectably operating radio device in alternate operating mode
US6594771B1 (en) * 2000-04-13 2003-07-15 Hewlett-Packard Development Company, L.P. Method and apparatus for managing power in an electronic device
JP2002006991A (ja) * 2000-06-16 2002-01-11 Toshiba Corp コンピュータシステム及び冷却ファンの回転数制御方法
DE10141626B4 (de) * 2000-09-06 2007-08-09 International Business Machines Corp. Dynamische Angleichung von Leistungsvermögen und Strombedarf
US6718474B1 (en) * 2000-09-21 2004-04-06 Stratus Technologies Bermuda Ltd. Methods and apparatus for clock management based on environmental conditions
US7174194B2 (en) * 2000-10-24 2007-02-06 Texas Instruments Incorporated Temperature field controlled scheduling for processing systems
US7389293B2 (en) * 2000-12-20 2008-06-17 Oracle International Corporation Remastering for asymmetric clusters in high-load scenarios
US7000130B2 (en) * 2000-12-26 2006-02-14 Intel Corporation Method and apparatus for thermal throttling of clocks using localized measures of activity
JP2002222031A (ja) * 2001-01-25 2002-08-09 Toshiba Corp 情報処理装置および同装置の消費電力制御方法
US6701272B2 (en) * 2001-03-30 2004-03-02 Intel Corporation Method and apparatus for optimizing thermal solutions
US7058824B2 (en) * 2001-06-15 2006-06-06 Microsoft Corporation Method and system for using idle threads to adaptively throttle a computer
US6904968B2 (en) * 2001-09-14 2005-06-14 Hewlett-Packard Development Company, L.P. Method and apparatus for individually cooling components of electronic systems
US7111178B2 (en) * 2001-09-28 2006-09-19 Intel Corporation Method and apparatus for adjusting the voltage and frequency to minimize power dissipation in a multiprocessor system
US7171570B2 (en) * 2001-11-16 2007-01-30 Apple Computer, Inc. Method and apparatus for selectively increasing the operating speed of an electronic circuit
US6925573B2 (en) * 2002-01-02 2005-08-02 Intel Corporation Method and apparatus to manage use of system power within a given specification
US7096145B2 (en) 2002-01-02 2006-08-22 Intel Corporation Deterministic power-estimation for thermal control
JP3692089B2 (ja) * 2002-04-02 2005-09-07 株式会社東芝 消費電力制御方法及び情報処理装置
US20040003301A1 (en) * 2002-06-28 2004-01-01 Nguyen Don J. Methods and apparatus to control processor performance to regulate heat generation
US6986069B2 (en) * 2002-07-01 2006-01-10 Newisys, Inc. Methods and apparatus for static and dynamic power management of computer systems
US7243243B2 (en) * 2002-08-29 2007-07-10 Intel Corporatio Apparatus and method for measuring and controlling power consumption of a computer system
US7865744B2 (en) * 2002-09-04 2011-01-04 Broadcom Corporation System and method for optimizing power consumption in a mobile environment
US20040064745A1 (en) * 2002-09-26 2004-04-01 Sudarshan Kadambi Method and apparatus for controlling the rate at which instructions are executed by a microprocessor system
JP4006634B2 (ja) * 2002-10-10 2007-11-14 ソニー株式会社 情報処理装置および方法、並びにプログラム
US7036027B2 (en) * 2002-10-21 2006-04-25 Sun Microsystems, Inc. Computer system layout and cooling configuration
DE10256623A1 (de) * 2002-12-03 2004-06-24 Krohne Meßtechnik GmbH & Co KG Elektrisches Gerät und Verfahren zum Betreiben eines elektrischen Geräts
US8086884B2 (en) 2002-12-16 2011-12-27 Hewlett-Packard Development Company, L.P. System and method for implementing an integrated circuit having dynamically variable power limit
US7085945B2 (en) 2003-01-24 2006-08-01 Intel Corporation Using multiple thermal points to enable component level power and thermal management
US20040148258A1 (en) * 2003-01-29 2004-07-29 Tillett Wiley S. Electronic check settlement method
US7210048B2 (en) * 2003-02-14 2007-04-24 Intel Corporation Enterprise power and thermal management
US20040159240A1 (en) * 2003-02-14 2004-08-19 Lyall Lucian H. Beverage brewing apparatus and method
US7454643B2 (en) * 2003-04-30 2008-11-18 Marvell World Trade Ltd. Pre-emptive power supply control system and method
US6745117B1 (en) * 2003-05-16 2004-06-01 Deere & Company Power-limiting control method and system for a work vehicle
CN1795428B (zh) * 2003-05-27 2010-09-01 Nxp股份有限公司 监测和控制功耗
US20050210304A1 (en) * 2003-06-26 2005-09-22 Copan Systems Method and apparatus for power-efficient high-capacity scalable storage system
US7272732B2 (en) * 2003-06-30 2007-09-18 Hewlett-Packard Development Company, L.P. Controlling power consumption of at least one computer system
US7543306B2 (en) * 2003-07-02 2009-06-02 Intel Corporation Method, system, and program for handling device interrupts in a multi-processor environment
US7451332B2 (en) 2003-08-15 2008-11-11 Apple Inc. Methods and apparatuses for controlling the temperature of a data processing system
US7146519B2 (en) 2003-08-22 2006-12-05 Hewlett-Packard Development Company, L.P. Bus clock frequency management based on device bandwidth characteristics
US7127625B2 (en) * 2003-09-04 2006-10-24 Hewlett-Packard Development Company, L.P. Application management based on power consumption
US7203849B2 (en) * 2003-12-12 2007-04-10 Hewlett-Packard Development Company, L.P. Method and system for distributing power to networked devices
US7580905B2 (en) * 2003-12-15 2009-08-25 Intel Corporation Adaptive configuration of platform
US20050138440A1 (en) * 2003-12-18 2005-06-23 Barr Andrew H. Equipment rack load modulation system and method
US7177728B2 (en) * 2003-12-30 2007-02-13 Jay Warren Gardner System and methods for maintaining power usage within a set allocation
US7228448B2 (en) * 2004-02-13 2007-06-05 Microsoft Corporation Method for making power supplies smaller and more efficient for high-power PCs
US7366921B2 (en) * 2004-04-23 2008-04-29 Hewlett-Packard Development Company, L.P. Selecting input/output devices to control power consumption of a computer system
US20060047983A1 (en) * 2004-05-19 2006-03-02 Zeev Aleyraz Multiple source/multiple device connector
US7519837B2 (en) * 2004-06-15 2009-04-14 Hewlett-Packard Development Company, L.P. Power controller
US7295949B2 (en) * 2004-06-28 2007-11-13 Broadcom Corporation Energy efficient achievement of integrated circuit performance goals
US7281146B2 (en) * 2004-06-30 2007-10-09 Intel Corporation Dynamic power requirement budget manager
US7739527B2 (en) * 2004-08-11 2010-06-15 Intel Corporation System and method to enable processor management policy in a multi-processor environment
WO2006028558A1 (en) * 2004-09-03 2006-03-16 Virgina Tech Intellectual Properties, Inc. Detecting software attacks by monitoring electric power consumption patterns
US7343499B2 (en) * 2005-01-27 2008-03-11 International Business Machines Corporation Method and apparatus to generate circuit energy models with multiple clock gating inputs
US7421598B2 (en) * 2005-02-09 2008-09-02 International Business Machines Corporation Dynamic power management via DIMM read operation limiter
US7383451B2 (en) * 2005-02-18 2008-06-03 Lenovo (Singapore) Pte. Ltd. Controlling power usage of computing device components in holistic manner
US7444526B2 (en) * 2005-06-16 2008-10-28 International Business Machines Corporation Performance conserving method for reducing power consumption in a server system
US7484108B2 (en) * 2005-06-23 2009-01-27 Intel Corporation Enhancing power delivery with transient running average power limits
US7386750B2 (en) * 2005-07-15 2008-06-10 Hewlett-Packard Development Company, L.P. Reduced bus turnaround time in a multiprocessor architecture
US8374730B2 (en) 2005-08-25 2013-02-12 Apple Inc. Methods and apparatuses for dynamic thermal control
JP4764696B2 (ja) * 2005-10-07 2011-09-07 ルネサスエレクトロニクス株式会社 半導体集積回路装置
US7616568B2 (en) * 2006-11-06 2009-11-10 Ixia Generic packet generation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5627412A (en) * 1994-11-07 1997-05-06 Norand Corporation Dynamically switchable power supply
TW330258B (en) * 1995-09-29 1998-04-21 Intel Corp The apparatus & method for reducing power-consumptive using voltage & frequency scaling
US5825674A (en) * 1995-09-29 1998-10-20 Intel Corporation Power control for mobile electronics using no-operation instructions
US20040181698A1 (en) * 2003-03-13 2004-09-16 Sun Microsystems, Inc. Method and apparatus for supplying power in electronic equipment
US20050102539A1 (en) * 2003-11-06 2005-05-12 International Business Machines Corporation Computer-component power-consumption monitoring and control

Also Published As

Publication number Publication date
CN103593041B (zh) 2016-06-29
CN101910975A (zh) 2010-12-08
EP2250542B1 (en) 2017-01-25
KR101233434B1 (ko) 2013-02-15
WO2009088445A1 (en) 2009-07-16
US20090177422A1 (en) 2009-07-09
EP2250542A1 (en) 2010-11-17
CN101910975B (zh) 2015-07-15
US7949888B2 (en) 2011-05-24
KR20100113554A (ko) 2010-10-21

Similar Documents

Publication Publication Date Title
CN101910975B (zh) 数据处理系统的强制空闲
CN102232205B (zh) 数据处理系统的强制空闲
US8578189B2 (en) Methods and apparatuses for dynamic power control
US7529948B2 (en) Methods and apparatuses for dynamic power estimation
US8001403B2 (en) Data center power management utilizing a power policy and a load factor
CN1145870C (zh) 用于自动cpu速度控制的装置和方法
EP0676685B1 (en) Method and system of power management for a data processing system
US7363517B2 (en) Methods and apparatus to manage system power and performance
CN1969247B (zh) 用于控制低功率器件的待机功率的方法和装置
US20110078290A1 (en) Energy-efficient server location determination for configuration changes
WO2002074046A2 (en) A method for determining transition points on multiple performance state capable microprocessors
CN101430595A (zh) 限制功耗的功率管理电子系统与方法
US10101784B2 (en) System and method for controlling energy usage in a server
CN104020835A (zh) 信息处理设备和操作状态控制方法
TW200837547A (en) Microprocessor capable of dynamically reducing its power consumption in response to varying operating temperature

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant