CN103946765B - 协同处理器以及系统性能和功率管理 - Google Patents

协同处理器以及系统性能和功率管理 Download PDF

Info

Publication number
CN103946765B
CN103946765B CN201180075003.6A CN201180075003A CN103946765B CN 103946765 B CN103946765 B CN 103946765B CN 201180075003 A CN201180075003 A CN 201180075003A CN 103946765 B CN103946765 B CN 103946765B
Authority
CN
China
Prior art keywords
performance
equipment
platform
processor
register
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.)
Active
Application number
CN201180075003.6A
Other languages
English (en)
Other versions
CN103946765A (zh
Inventor
G.M.特里恩
P.S.迪伊芬鲍格
A.阿格加瓦
A.D.肯罗伊德
J.J.斯拉尔
E.罗特姆
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 CN103946765A publication Critical patent/CN103946765A/zh
Application granted granted Critical
Publication of CN103946765B publication Critical patent/CN103946765B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation
    • 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
    • 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/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • 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
    • 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/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • G06F15/7871Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/501Performance criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding
    • G06F9/384Register renaming
    • 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

本发明涉及平台功率管理方案。在一些实施例中,平台使用要由OSPM系统请求的一个或多个参数来提供相对性能标度。

Description

协同处理器以及系统性能和功率管理
技术领域
本发明大体上涉及计算系统并且特别地涉及平台功率和性能管理方法和系统。
背景技术
该申请要求2011年11月22日提交的美国临时专利申请号61563030的权益并且通过引用而合并于此。
附图说明
本发明的实施例在附图的图中通过示例而非限制的方式图示,在图中类似的标号指示相似的要素。
图1是根据一些实施例示出具有OSPM(OS指导的配置和功率管理)的计算平台的图。
图2示出根据一些实施例用于ACPI实现的处理器性能状态图。
图3是根据一些实施例示出具有OSPM的平台的图,其图示OSPM可以与该平台通信来管理性能的不同方式。
图4示出根据一些实施例用于促进灵活的功率管理方案的平台的一般例程。
图5示出根据一些实施例可在功率管理寄存器(register)接口中实现的功率管理寄存器。
图6示出根据一些实施例的相对性能水平标度。
图7是根据一些实施例示出可用于控制处理器参数的若干性能控制设置的图表。
图8示出根据一些实施例用于灵活功率管理接口(在ACPI中限定的CPPC接口)的示范性封装的定义代码。
具体实施方式
图1是示出具有基于OSPM(OS指导的配置和功率管理)的操作系统(在下文简单地,OS)的计算平台的图。OSPM方案可包括任何适合的功率管理系统、接口和/或便于接口实现计算平台中的处理器的操作系统(OS)指导的功率管理的规范。这样的OSPM方案包括但不限于ACPI(高级配置和功率接口)规范实现。
在图1中,存在执行操作系统(OS)110的硬件平台130(例如,平板电脑、便携式PC、服务器),该操作系统110除其他事情外还通过基于OSPM的功率管理接口120来实现OSPM。平台130包括平台硬件132和BIOS 134。OS包括如示出的那样耦合的核112、OSPM系统114、设备驱动器116和功率管理接口驱动器118。OSPM接口120代表共同接口空间,其包括共同寄存器接口空间。它大体上可包括功率管理寄存器122、BIOS接口数据结构124和/或一个或多个功率管理表126。这些功率管理接口部件可由OSPM例如通过功率管理驱动器118访问,用于写入和读取对于平台硬件的功率管理数据(例如,写入控制数据和读取能力和反馈数据)。
图2示出根据ACPI实现的实施例的处理器性能状态图。(注意,为了方便,本公开呈现主要使用ACPI作为示范性实现的功率管理概念,但本发明不这样受限制)。对处理器的主要OSPM控制是处理器功率状态(C0、C1、C2、C3、…Cn)、处理器时钟节制(processor clockthrottling)和处理器性能状态。如本文使用的处理器性能状态(Px)包含传统的Pn状态(像P0、P1等)和CPPC(协作处理器性能控制)性能控制(在下文关于本发明论述)。这些控制可组合地由OSPM使用来实现有时冲突的目标(包括性能、功耗和电池寿命、热要求和噪声级要求)的期望平衡。因为目标彼此相互作用,操作软件需要实现关于何时以及在哪里在目标之间做出权衡的策略。
ACPI将系统处理器在G0工作状态2时的功率状态限定为活动(执行)或睡眠(不执行)。指示处理器功率状态为C0、C1、C2、C3、…Cn。C0功率状态是活动功率状态,其中CPU执行指令。C1至Cn功率状态是处理器睡眠状态,其中处理器比使处理器处于C0状态消耗更少的功率和耗散更少的热。尽管处于睡眠状态,处理器大体上将不执行指令。
在过去,处理器性能控制(Pn状态控制)具有从处理器频率(其大体上对应于处理器性能能力)方面主要受影响的处理器性能。OSPM将做出性能状态请求(例如,具有特定频率选择的P0),并且它可以预期处理器对它提供某一操作频率或频率范围。然而,已经意识到频率不一定与处理器可以执行的工作量成比例(尤其对于所有场景)。即,尽管处理器频率是处理器完成工作所采用的速度的粗略近似,不保证工作负荷性能用频率来定标。因此,CPPC(协作处理器性能控制)将确切的性能度量的定义留给平台,而不是对处理器性能规定特定度量。
平台例如可选择使用例如处理器频率等单个度量,或它可选择使多个硬件度量(例如,频率、时间、指令速率等)混合来创建性能的合成度量。这样,平台至少持续一段时间地更自由地交付OSDM请求的性能水平而不一定交付特定处理器频率。这例如允许它满足OSPM预期并且同时实现更有效的功率节省。
协同处理器性能控制(CPPC)对OSPM限定抽象且灵活的机制来与平台中的实体协作以管理处理器的性能。在该方案中,平台实体负责创建并且维持支持连续(或至少半连续)性能标度(例如,无单位的性能标度)的性能定义。在运行时间期间,OSPM请求在该标度上的性能(例如,它请求来自0与2000之间、1与100之间或无论什么的值),并且平台实体负责将OSPM性能请求转化成实际硬件性能状态。
在一些实施例中,OSPM应未假定平台所呈现的性能值的确切含义或它们如何可与特定硬件度量(像处理器频率)相关。相反,OSPM可例如在启动时或处理器热插拔时运行特征化例程来评估在具有可用性能值的特定平台标度上的所提供的性能(例如,频率或基准、处理速率,等)。
参考图3,用于实现对于OSPM的功率管理接口来控制平台功率管理系统的控制结构(例如,寄存器)可采用任何适合的方式进行。例如,控制方法可由存储器映射的IO或用例如MSR(模型特定寄存器)等特定物理寄存器、其他总线或传输上(例如,在SMBus、PECI接口、平台通信通道等上)的寄存器、虚拟寄存器或类似物来实现。(注意MSR典型地不是存储器空间的一部分,而相反,例如可在例如具有一个或多个指令来读取/写入它的处理器寄存器等硬件中)。这提供足够的灵活性使得OS可以与处理器本身、平台芯片集或单独实体(例如,基板管理控制器)通信。
图3是示出具有OSPM的平台的图,其图示OS可以与平台通信来管理性能的这些不同的方式。在该实施例中,处理器305具有MSR 307、功率管理单元(PCU)309、核频率和VID控制311以及用于控制性能和功耗的MSR/PECI接口313。OS 330通过它的基于ACPI的功率管理系统(它的基于ACPI的OSPM)来管理平台的功率和性能。硬件平台(HWP)接口320便于OS与平台处理器305之间的通信,由此使OS能够监管处理器功率管理。(注意MSR/PECI接口313可以视为HWP接口320的一部分,但为了方便而被单独示出,可以耦合于可选的BMC连接)。
参考图4和5,将描述用于使用功率管理接口寄存器(可被平台和OS两者访问)来实现灵活的功率管理方案的一般方法。图4示出根据一些实施例的用于平台促进灵活的功率管理方案的一般例程402。图5示出功率管理寄存器,其可在PM寄存器空间122(来自图1)或采用任何其他适合的方式实现。接口寄存器包括一个或多个能力寄存器502、一个或多个控制寄存器504和一个或多个反馈寄存器506。
能力寄存器502一般用于指示要由OS读取使得它可以确定如何管理功率和性能的性能标度参数、能力、阈值等。控制寄存器504一般由OSPM写入来指示来自平台处理器的请求/期望的性能连同管理约束。最后,反馈寄存器506指示例如要由OS读取使得它可以确定交付的性能是否充分接近请求/期望的性能的交付性能(估计或测量/监视的性能)参数。
参考例程402,初始在404,性能能力加载到能力寄存器内。这可牵涉例如从BIOS存储器传输到能力寄存器或从任何其他适合的地方传输的数据,或寄存器可已经在制造步骤期间例如使用熔丝或类似物来加载。这些能力可以指示抽象性能标度范围、阈值(例如保证的vs.非保证阈值)和其他参数。在406,(例如在控制寄存器已经由OSPM写入后),平台从控制器寄存器读取控制值。在408,平台然后(例如,通过PCU或相似的单元)控制处理器以试图在给出约束的情况下提供请求的性能。如将特别关于ACPI实现而在下文更多解决的那样,它可(如果在非保证范围中)或它将(如果适当可能的话)(如果在保证范围中但没有任何首要约束,例如热)提供请求的性能。这可以意指在指定一段时间内在指定的容限(tolerance)内提供平均性能水平。
根据ACPI规范以及根据一些实施例,可使用CPC(连续性能控制)对象(ACPI中的_CPC对象或任何其他适合的对象)。该对象可宣告基于可允许值的连续范围而允许OSPM将处理器转变到性能状态的接口。OS可将期望的性能值写入性能水平(例如,ACPI中的“期望性能寄存器”),并且平台然后将请求的性能水平映射到内部性能状态。
表1(以及图8,CPC对象)示出对于该CPC接口的示范性封装。
_CPC对象所传达的寄存器对OSPM提供平台特定性能能力/阈值的OSPM和OSPM使用的用于控制的控制寄存器以及平台的处理器性能设置。这些进一步在下面的章节中描述。表2便利地列出由CPC对象提供的以供OS使用来管理平台功率和性能的寄存器。
存在不同的寄存器类型,其包括能力/阈值寄存器、控制寄存器和反馈寄存器。能力/阈值寄存器指示对于考虑中的处理器的可用性能参数。它们可直接被填充,或由处理器OEM或由与处理器的功率/性能能力关联的一些其他合适的实体间接填充。控制寄存器可由OS填充以便它通过请求来自平台的性能参数而控制性能,并且反馈寄存器将来自平台的性能数据提供给OS使得它可以确定期望和/或预期的性能是否被交付(但注意这是性能的处理器本地定义-如同询问-你给出我所要求的性能了吗?)。可存在其他寄存器,其也可被寻址。表2列出在ACPI实现中使用的寄存器中的一些。
图6示出根据一些实施例的相对性能水平标度。基于性能的控制在连续范围的处理器性能水平上操作,而不是分立的处理器状态。因此,平台能力和OS请求可从性能阈值方面来规定。图6通过图表图示对于平台的这些性能阈值。它们也在下文论述。(注意不是所有的性能水平都必须是唯一的。例如,平台的标称性能水平还可以是它的最高性能水平。另外,尽管平台可在可允许范围内规定寄存器大小,能力/阈值寄存器的大小应与控制寄存器的大小一致(进一步在下文论述)。此外,在一些实施例中,如果平台支持CPPC,CPC对象应在所有处理器对象下存在。即,可预期OSPM不支持混合模式,例如同时对于平台中的所有处理器的CPPC和遗留PSS)。
最高性能阈值(性能值=N)可能是个体处理器可达到的最大性能(假设理想条件)。该性能水平可不能持续长的持续时间,并且可仅在其他平台部件处于特定状态时能实现;例如,它可要求其他处理器处于空闲状态。标称性能是处理器的最大持续性能水平(假设理想操作条件)。在缺乏外部约束(功率、热等)的情况下,这是预期平台能够持续维持的性能水平。预期所有处理器能够同时维持它们的标称性能。
“最低标称”性能水平是实现非线性功率节省时的最低性能水平,即有意义的功率节省可从电压和频率定标来获得。在该阈值以上,较低的性能水平应大体上比较高的性能水平更节能。在传统方面,这代表性能水平的P状态范围。“最低”性能水平是平台的绝对最低性能水平。选择比最低非线性性能水平要低的性能水平典型地将降低处理器的瞬时功耗。在传统方面,这代表性能水平的T状态范围。
保证的性能寄存器将保证的性能水平传达给OSPM,该保证的性能水平是在考虑已知的外部约束(功率预算、热约束、AC vs DC电源等)情况下处理器的当前最大持续性能水平。预期处理器能够同时维持它们的保证性能水平。需要保证的性能水平落在最低性能水平与标称性能水平之间的范围(包括最低性能水平和标称性能水平)内(图9)。
在一些实施例中,如果未实现该寄存器,则假设保证性能等于标称性能。如果使用该寄存器,OSPM可重新评估保证性能寄存器。因此,平台可有效改变标称水平,并且从而,改变保证的性能阈值。(在一些方案(例如ACPI 5规范)中,对保证性能的改变不应比每秒一次更频繁。如果平台不能在持续的一段时间(大于一秒)期间保证给定的性能水平,它应保证较低的性能水平并且投机地进入OSPM请求的并且被当前操作条件允许的较高性能水平。
参考图7,具有OSPM的OS可以将若干性能设置结合使用以控制平台的性能。OS可选择平台所支持的连续范围值内的任何性能值。在内部,平台可实现少量的分立性能状态并且可以不能以OS期望的确切性能水平操作。如果不存在与OS的期望性能水平匹配的平台内部状态,平台可例如使期望的性能如下那样舍入:如果OS已经选择大于或等于保证性能的期望性能水平,平台可上舍入或下舍入。舍入的结果应不小于保证性能。如果OS已经选择小于保证性能的期望性能水平和不小于保证性能的最大性能水平,平台应上舍入。如果OS已经选择均小于保证性能的期望性能水平和最大性能水平两者,平台应上舍入(如果上舍入不违背最大性能水平)。否则,下舍入。如果OS选择设置小于保证性能的最大性能水平,则它应容许平台下舍入。(该方法有利于性能,但在性能已经由于平台或OS约束而受到限制的情况下除外)。
现在将描述控制寄存器中的一些。OS可为了期望的性能将适合的值写入它们。最大性能寄存器传达平台可运行的绝对最大瞬时性能水平。最大性能可设置成在从最低性能至最高性能之间的范围(包括最低性能和最高性能)内的任何性能值。
该寄存器是可选的,但平台应实现最小性能和最大性能寄存器两者或未实现任一寄存器。如果两个寄存器都未被实现,平台应交付期望的性能。
最大性能寄存器传达平台可运行的绝对最小瞬时性能水平。最小性能可设置成在从最低性能至保证性能阈值之间的范围(包括最低性能和保证性能阈值)内的任何性能值。最小性能水平不应设置成高于最大性能水平的值。
最小性能寄存器也是可选的,但平台应实现最小性能和最大性能寄存器两者或未实现任一寄存器。如果两个寄存器都未被实现,平台应交付期望的性能。
期望的性能寄存器传达OS从平台请求的性能水平。期望的性能可设置成在最小与最大性能水平之间的范围(包括最小和最大性能水平)内的任何性能值。期望的性能可根据期望的性能是在保证性能水平以上还是以下而取两个含义中的一个。
在保证的性能水平以下,期望的性能表达平台应提供的平均性能水平(服从性能降低容限)。在保证的性能水平以上,平台应提供保证性能水平。如果当前操作条件允许的话,平台应尝试提供多达期望的性能水平,但不要求这么做。
时间窗口寄存器允许OSPM指示平台应提供期望的性能水平(服从性能降低容限)所在的时间窗口。OSPM在选取新的期望性能时设置时间窗口。时间窗口代表对于平台的交付性能的OSPM评估的最小持续时间。如果OSPM在比规定的时间间隔要小的间隔上评估交付性能,它不应对平台所交付的性能抱有期望。另一方面,对于等于或大于该时间窗口的评估间隔,平台应在规定的容限界限内交付OS期望的性能。
如果OS规定具有零的时间窗口或如果平台不支持时间窗口寄存器,平台应在性能降低容限的界限内交付性能而不管评估间隔的持续时间如何。
性能降低容限寄存器由OS使用来传达被容许的期望性能以下的偏离。这由OS表达为关于性能标度的绝对值。性能容限应小于或等于期望的性能。如果平台支持时间窗口寄存器,性能降低容限传达在时间窗口上可平均交付的最小性能。另一方面,如果时间窗口寄存器未被实现,平台应假设性能降低容限对应于瞬时期望性能的容限。
平台经由性能计数器集合提供性能反馈,和性能受限的指标,其可在反馈寄存器(例如如在表2中列出的)中实现。
为了确定随时间交付的实际性能水平,OS可从标称计数寄存器和交付计数寄存器读取一组性能计数。OS通过取标称和交付性能计数器两者的开始和结束快照并且计算以下而计算在给定时间段上的交付性能:
交付性能应落在最低与最高性能之间的范围(包括最低和最高性能)内。OS可使用交付的性能计数作为用于限定它选择的期望性能状态的反馈机构。
存在管理由平台交付的性能如何以及何时可偏离OS期望的性能的约束。对应于OSPM设置,期望的性能:在此之后的任何时间,对交付性能的下列约束可适用。如果平台能够与如果它交付期望性能的情况相比以相同的或较低的能量来交付较高的性能,交付性能可以高于OSPM请求的期望性能。如果平台具有分立性能状态并且需要根据在OS控制章节中规定的算法使性能下舍入到最近支持的性能水平,交付的性能可高于或低于OSPM期望的性能。如果平台的效能优化引起交付性能小于期望性能,交付的性能可低于OS期望的性能。然而,交付的性能应大体上不低于OSPM规定的。
性能下降容限对平台提供在优化性能交付时它可以有多么积极的界限。平台不应执行任何将引起交付性能低于OS规定的性能下降容限的优化。
标称计数寄存器在处理器活动的任何时候以固定速率计数。它不受对期望性能、处理器节制等的改变的影响。
交付性能计数器在处理器活动的任何时候在考虑对期望性能的改变的情况下以与当前性能水平成比例的速率递增。当处理器在它的标称性能水平操作时,交付性能计数器以与标称性能计数器相同的速率递增。
计数器回绕时间为平台提供用于规定标称/交付性能计数器的翻转时间(rollover time)的方式。如果在OSPM询问反馈计数器之间的经过时间大于该时间段,则计数器可以在OSPM未能检测到它们这样做的情况下回绕。如果未被实现(或零),性能计数器假设在平台的寿命期间不回绕。
利用保证性能寄存器,平台指示对它可以交付的性能的可预测限制。在平台由于不可预测事件而必须使交付性能约束为小于期望性能(或如果期望性能大于保证性能则要小于保证性能)的情况下,平台将性能受限的指标设置成非零值。这向OS指示不可预测的事件具有受限的处理器性能,并且交付性能可小于期望性能。性能受限的指标是无变化的,并且将保持非零直到OS通过将0写入寄存器而清除它。
性能受限的寄存器应仅用于报告短期、不可预测事件(例如,断言PROCHOT)。如果平台能够识别限制处理器性能的更长期、可预测事件,它应使用保证的性能极限来通知OS该限制。对保证性能的改变不应比每秒一次更频繁。如果平台不能在持续时间段(大于一秒)期间保证给定性能水平,它应保证较低的性能水平并且投机地进入如由OS请求并且被当前操作条件允许的较高性能水平。
使能寄存器是可选的读/写寄存器(长度上是一个或多个位),其可以在PCC或系统I/O空间中-这是在MSR中。如果受到平台支持的话,OS将一写入该寄存器来启用给定处理器上的CPPC。如果未被实现,OS假设平台启用了CPPC。
OS特征化
为了便于OS使用无单位的性能定标接口(给出标度的抽象、相对性质),OS在大部分实施例中应初始使接口交付的工作负荷性能特征化。这可以采用多种方式进行。例如,它可以通过在停用自主平台功率管理特征(例如,在最小和最大极限内单方面改变性能参数来节省功率的能效优化特征)时选择性能范围值而进行。例如,在ACPI实现中关闭它们可以通过将最小、最大和期望输入设置成相同的值或通过将时间窗口设置成零而进行。当然,利用非ACPI实现,用于抑制平台的其他方法可以用于识别性能值中的每个(或典型)对于OS意味着什么。
在一些实施例中,OS在运行特征化工作负荷时在从最低到标称的性能值范围(包括最低和标称)内选择值,并观察工作结果。在其他实施例中,OS选择相同范围(最低至标称)内的值并且读取统计计数器,例如ACPI ACNT和MCNT MSR,其传达逻辑处理器的合成频率。
特征化工作负荷可以是一,其需要最小服务质量来实现期望结果。通过特征化是什么性能值实现最小QoS,OS则稍后可以在每当该类工作负荷活动来确保满足QoS时将该值设置为最小值。否则,例如频率等特征化结果可以被OS在用于性能状态控制(其中基于逻辑处理器的工作负荷(有多忙)来选择性能状态)的基于需求的切换策略的实现中使用。注意可存在几种特征化工作负荷并且这些可以用于确定多个QOS最小值(对应于工作负荷类型)。
在前面的描述和下列权利要求中,下列术语应该解释如下:可使用术语“耦合”和“连接”连同它们的派生词。应该理解这些术语不规定为彼此的同义词。相反,在特定实施例中,“连接”用于指示两个或以上的元件互相直接物理或电接触。“耦合”用于指示两个或以上的元件协作或互相交互,但它们可或可不直接物理或电接触。
本发明不限于描述的实施例,而可以在附上的权利要求的精神和范围内以修改和更改来实践。例如,应意识到本发明能适用于与所有类型的半导体集成电路(“IC”)芯片一起使用。这些IC芯片的示例包括但不限于处理器、控制器、芯片集部件、可编程逻辑阵列(PLA)、存储器芯片、网络芯片及类似物。
还应该意识到在图中的一些中,信号导线用线条表示。一些可以更粗来指示更多的组成信号路径、具有数字标签来指示若干组成信号路径和/或在一个或多个末端具有箭头来指示主要的信息流方向。然而,这不应以限制性的方式解释。相反,这样的附加细节可连同一个或多个示范性实施例一起使用以便于更容易地理解电路。任何表示的信号线(无论是否具有额外的信息),实际上可包括可在多个方向上行进的一个或多个信号并且可用任何适合类型的信号方案(例如用差分对实现的数字或模拟线、光纤线和/或单端线)实现。
已经意识到可已经给出示例尺寸/模型/值/范围,但本发明不限于此。当制造技术随时间变成熟时,预期可以制造具有更小尺寸的装置。另外,为了简化说明和论述,并且为了不掩盖本发明,众所周知的通向IC芯片和其他部件的电力/接地连接可或可不在图内示出。此外,设置可采用框图形式示出以便避免掩盖本发明,并且还鉴于关于这样框图设置的实现的细节高度取决于实现本发明所在的平台这一事实,即,这样的细节应该完全在本领域内技术人员的视野内。在阐述具体细节(例如,电路)以便描述本发明的示例实施例的情况下,可以在没有这些具体细节或具有这些具体细节的变化形式的情况下实践本发明,这对本领域内技术人员应该是明显的。从而描述被视为说明性而非限制性的。

Claims (19)

1.一种计算设备,其包括:
处理器;
控制单元,用于通过控制性能设置来管理所述处理器的性能;以及
接口,其在所述设备操作时用于对操作系统OS提供一个或多个控制寄存器以用于请求来自在一个或多个能力寄存器中向所述OS指示的可用值的标度中的性能值,
其中,所述一个或多个控制寄存器包括用于所述OS请求时间窗口的寄存器,在所述时间窗口上的平均性能将接近或等于请求的性能值。
2.如权利要求1所述的设备,其中所述一个或多个控制寄存器包括用于所述OS请求小于或等于期望性能水平的最小性能值的寄存器。
3.如权利要求2所述的设备,其中所述一个或多个控制寄存器包括用于所述OS请求大于或等于所述期望性能水平的最大性能值的寄存器。
4.如权利要求1所述的设备,其中所述性能值是期望性能水平。
5.如权利要求4所述的设备,其中所述一个或多个控制寄存器包括用于所述OS规定容限的容限寄存器,平均期望性能将不超出所述容限。
6.如权利要求1所述的设备,其中用一个或多个模型特定寄存器MSR来实现所述一个或多个控制寄存器。
7.如权利要求1所述的设备,其中用存储器映射的I/O来实现所述一个或多个控制寄存器。
8.如权利要求7所述的设备,其中存储器映射的I/O地址空间包括跨传输协议的地址。
9.如权利要求1所述的设备,其中用所述OS中的驱动器实现所述一个或多个控制寄存器来仿效接口寄存器。
10.如权利要求1所述的设备,其中由所述OS通过BMC来访问所述一个或多个控制寄存器。
11.一种计算设备,其包括:
计算平台,用于至少基于在操作系统OS请求的时间间隔上平均化的OS请求的性能水平来提供性能,
其中所述计算平台包括一个或多个寄存器,用于向OS指示要请求的可用性能值的标度。
12.如权利要求11所述的设备,其中所述性能进一步基于OS请求的最小性能水平,性能不会瞬时地降到所述OS请求的最小性能水平以下。
13.如权利要求11所述的设备,其中所述性能进一步基于OS请求的最大性能水平,性能不会瞬时地超过所述OS请求的最大性能水平。
14.如权利要求11所述的设备,其中所述计算平台包括一个或多个寄存器,用于保持所述OS请求的性能和时间间隔。
15.如权利要求14所述的设备,其中所述计算平台包括一个或多个寄存器,用于针对交付的性能来指示反馈信息。
16.一种计算设备,其包括:
用于处理器的功率控制电路,用于基于来自可用性能水平的标度的期望性能水平和时间间隔来控制所述处理器所交付的性能,在所述时间间隔上要交付平均期望性能水平,其中所述功率控制电路用于在适当时降低提供的性能来节省功率同时在所述时间间隔上交付平均期望性能。
17.如权利要求16所述的设备,其中所述功率控制电路用于总是交付具有至少最小水平并且不超过最大水平的性能。
18.如权利要求17所述的设备,其中所述最小和最大水平要由运行在所述处理器上的操作系统来规定。
19.如权利要求16所述的设备,其中所述功率控制电路是所述处理器的一部分。
CN201180075003.6A 2011-11-22 2011-12-30 协同处理器以及系统性能和功率管理 Active CN103946765B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201161563030P 2011-11-22 2011-11-22
US61/563030 2011-11-22
US61/563,030 2011-11-22
PCT/US2011/068175 WO2013077889A1 (en) 2011-11-22 2011-12-30 Collaborative processor and system performance and power management

Publications (2)

Publication Number Publication Date
CN103946765A CN103946765A (zh) 2014-07-23
CN103946765B true CN103946765B (zh) 2017-11-17

Family

ID=48470182

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180075003.6A Active CN103946765B (zh) 2011-11-22 2011-12-30 协同处理器以及系统性能和功率管理

Country Status (10)

Country Link
US (14) US10108433B2 (zh)
JP (1) JP6155507B2 (zh)
KR (3) KR101810822B1 (zh)
CN (1) CN103946765B (zh)
BR (1) BR112014012398B1 (zh)
DE (1) DE112011105867B4 (zh)
GB (1) GB2510091B (zh)
IN (1) IN2014CN02785A (zh)
TW (3) TWI502505B (zh)
WO (7) WO2013077890A1 (zh)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10108433B2 (en) 2011-11-22 2018-10-23 Intel Corporation Collaborative processor and system performance and power management
US10095295B2 (en) * 2011-12-14 2018-10-09 Advanced Micro Devices, Inc. Method and apparatus for power management of a graphics processing core in a virtual environment
US9026817B2 (en) 2012-06-29 2015-05-05 Intel Corporation Joint optimization of processor frequencies and system sleep states
EP2953028A4 (en) * 2013-01-31 2016-10-12 Mitsubishi Electric Corp COMPUTER DEVICE AND METHOD FOR CONTROLLING THE COMPUTER DEVICE
US9696785B2 (en) 2013-12-28 2017-07-04 Intel Corporation Electronic device having a controller to enter a low power mode
US10514942B2 (en) 2014-02-24 2019-12-24 Red Hat Israel, Ltd. Using linker scripts for loading system configuration tables
US9571465B1 (en) * 2014-09-18 2017-02-14 Amazon Technologies, Inc. Security verification by message interception and modification
KR102261815B1 (ko) * 2014-10-30 2021-06-07 삼성전자주식회사 펌웨어 업데이트 시간을 줄일 수 있는 데이터 저장 장치, 및 이를 포함하는 데이터 처리 시스템
US9720827B2 (en) * 2014-11-14 2017-08-01 Intel Corporation Providing multiple memory modes for a processor including internal memory
US10126950B2 (en) * 2014-12-22 2018-11-13 Intel Corporation Allocating and configuring persistent memory
US11003565B2 (en) 2015-04-21 2021-05-11 Hewlett-Packard Development Company, L.P. Performance change predictions
CN106874176B (zh) * 2015-12-14 2021-04-27 创新先进技术有限公司 智能测试方法和装置
US10180793B2 (en) 2017-01-31 2019-01-15 Hewlett Packard Enterprise Development Lp Performance attributes for memory
US11182315B2 (en) 2017-02-10 2021-11-23 Intel Corporation Apparatuses, methods, and systems for hardware control of processor performance levels
US10958729B2 (en) * 2017-05-18 2021-03-23 Intel Corporation Non-volatile memory express over fabric (NVMeOF) using volume management device
US10627880B2 (en) * 2017-05-19 2020-04-21 Dell Products L.P. Systems and methods for forward compatibility of custom thermal settings
KR102388803B1 (ko) 2017-11-02 2022-04-20 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
US10620969B2 (en) 2018-03-27 2020-04-14 Intel Corporation System, apparatus and method for providing hardware feedback information in a processor
TWI685751B (zh) 2018-04-10 2020-02-21 神雲科技股份有限公司 伺服器裝置的錯誤報告功能的控制方法
CN108959049B (zh) * 2018-06-27 2021-12-17 郑州云海信息技术有限公司 Smm的健壮性和稳定性的测试方法、装置及存储介质
US10795746B2 (en) * 2018-12-13 2020-10-06 Micron Technology, Inc. Automated power down based on state of firmware
EP3999938A4 (en) * 2019-07-15 2023-08-02 INTEL Corporation DYNAMIC ENERGY PERFORMANCE PREFERENCE BASED ON WORKLOADS USING AN ADAPTIVE ALGORITHM
US11157329B2 (en) 2019-07-26 2021-10-26 Intel Corporation Technology for managing per-core performance states
US11625084B2 (en) * 2019-08-15 2023-04-11 Intel Corporation Method of optimizing device power and efficiency based on host-controlled hints prior to low-power entry for blocks and components on a PCI express device
TWI726405B (zh) * 2019-09-04 2021-05-01 神雲科技股份有限公司 開機程序除錯系統及其主機與方法
US11507157B2 (en) * 2020-04-30 2022-11-22 Dell Products L.P. Hot-inserted devices
KR20210149445A (ko) 2020-06-02 2021-12-09 삼성전자주식회사 메모리 모듈 및 메모리 모듈의 동작 방법
US11106529B1 (en) * 2020-07-22 2021-08-31 Dell Products L.P. Post package repair failure memory location reporting system
US11829612B2 (en) 2020-08-20 2023-11-28 Micron Technology, Inc. Security techniques for low power mode of memory device
CN112256327A (zh) * 2020-11-01 2021-01-22 屈军军 一种微型电子机械装置
US11934251B2 (en) * 2021-03-31 2024-03-19 Advanced Micro Devices, Inc. Data fabric clock switching
US11940860B2 (en) 2021-06-22 2024-03-26 Microsoft Technology Licensing, Llc. Power budget management using quality of service (QoS)
WO2022271606A1 (en) * 2021-06-22 2022-12-29 Microsoft Technology Licensing, Llc Power budget management using quality of service (qos)
JP2023136634A (ja) * 2022-03-17 2023-09-29 キヤノン株式会社 印刷管理システム、及び方法
US11726855B1 (en) * 2022-04-26 2023-08-15 Dell Products L.P. Controlling access to an error record serialization table of an information handlng system
CN115543055B (zh) * 2022-11-28 2023-03-14 苏州浪潮智能科技有限公司 电源管理的控制权移交方法、装置、设备和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1717645A (zh) * 2002-11-30 2006-01-04 英特尔公司 用于多线程处理器性能控制的装置和方法

Family Cites Families (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4641308A (en) * 1984-01-03 1987-02-03 Texas Instruments Incorporated Method of internal self-test of microprocessor using microcode
US4646232A (en) * 1984-01-03 1987-02-24 Texas Instruments Incorporated Microprocessor with integrated CPU, RAM, timer, bus arbiter data for communication system
TW282525B (zh) 1994-06-17 1996-08-01 Intel Corp
US6052793A (en) * 1998-06-10 2000-04-18 Dell Usa, L.P. Wakeup event restoration after power loss
US6167511A (en) * 1998-06-15 2000-12-26 Phoenix Technologies Ltd. Method to reflect BIOS set up changes into ACPI machine language
JP3991590B2 (ja) * 1999-02-24 2007-10-17 株式会社日立製作所 計算機システム及び計算機システムにおける障害処理方法
US7197548B1 (en) * 1999-07-20 2007-03-27 Broadcom Corporation Method and apparatus for verifying connectivity among nodes in a communications network
US6732280B1 (en) * 1999-07-26 2004-05-04 Hewlett-Packard Development Company, L.P. Computer system performing machine specific tasks before going to a low power state
EP1085396A1 (en) * 1999-09-17 2001-03-21 Hewlett-Packard Company Operation of trusted state in computing platform
US6530031B1 (en) * 1999-11-08 2003-03-04 International Business Machines Corporation Method and apparatus for timing duration of initialization tasks during system initialization
US7016060B1 (en) 1999-12-08 2006-03-21 International Business Machines Corporation Method, system, and program for reconfiguring logical printers in a network printing system
US6499102B1 (en) * 1999-12-29 2002-12-24 Intel Corporation Method of dynamically changing the lowest sleeping state in ACPI
US6931553B1 (en) * 2000-04-20 2005-08-16 Microsoft Corporation Preventing general purpose event interrupt storms in a computer system
US6826701B1 (en) * 2000-04-20 2004-11-30 Microsoft Corporation Re-running general purpose event control methods in a computer system
US7085944B1 (en) 2000-09-30 2006-08-01 Intel Corporation Power management by transmitting single multiplexed signal to multiple system components to change settings of internal performance registers in response to change in power source
US6704877B2 (en) * 2000-12-29 2004-03-09 Intel Corporation Dynamically changing the performance of devices in a computer platform
US7017060B2 (en) * 2001-03-19 2006-03-21 Intel Corporation Power management system that changes processor level if processor utilization crosses threshold over a period that is different for switching up or down
US7089430B2 (en) * 2001-12-21 2006-08-08 Intel Corporation Managing multiple processor performance states
US20030188146A1 (en) * 2002-03-28 2003-10-02 Hale Robert P. Method of ordered execution of firmware modules in a pre-memory execution environment
US6848057B2 (en) * 2002-05-28 2005-01-25 Nvidia Corporation Method and apparatus for providing a decoupled power management state
US20040024867A1 (en) * 2002-06-28 2004-02-05 Openwave Systems Inc. Method and apparatus for determination of device capabilities on a network
US6990576B2 (en) * 2002-08-07 2006-01-24 Hewlett-Packard Development Company, L.P. System and method for using a firmware interface table to dynamically load an ACPI SSDT
US7698583B2 (en) * 2002-10-03 2010-04-13 Via Technologies, Inc. Microprocessor capable of dynamically reducing its power consumption in response to varying operating temperature
US7131015B2 (en) 2002-11-12 2006-10-31 Arm Limited Performance level selection in a data processing system using a plurality of performance request calculating algorithms
US7007160B1 (en) * 2002-12-03 2006-02-28 Hewlett-Packard Development Company, L.P. System and method for loading an advanced configuration and power interface (ACPI) original equipment manufacturer (OEM) description table
CN1534863A (zh) * 2003-01-15 2004-10-06 松下电器产业株式会社 振荡电路
US7827283B2 (en) * 2003-02-19 2010-11-02 International Business Machines Corporation System for managing and controlling storage access requirements
US7502803B2 (en) * 2003-05-28 2009-03-10 Hewlett-Packard Development Company, L.P. System and method for generating ACPI machine language tables
US7051215B2 (en) * 2003-06-13 2006-05-23 Intel Corporation Power management for clustered computing platforms
US7752470B2 (en) * 2003-12-03 2010-07-06 International Business Machines Corporation Method and system for power management including device controller-based device use evaluation and power-state control
US20050192788A1 (en) * 2004-02-27 2005-09-01 Hobson Louis B. Simulating processor performance states
JP4144880B2 (ja) * 2004-04-09 2008-09-03 インターナショナル・ビジネス・マシーンズ・コーポレーション プラットフォーム構成測定装置、プログラム及び方法、プラットフォーム構成認証装置、プログラム及び方法、プラットフォーム構成証明装置、プログラム及び方法、並びに、プラットフォーム構成開示装置、プログラム及び方法
US7360103B2 (en) * 2004-05-21 2008-04-15 Intel Corporation P-state feedback to operating system with hardware coordination
US20050283599A1 (en) * 2004-06-22 2005-12-22 Zimmerman Toby S Exposing BIOS information to an ACPI aware operating system
US7243222B2 (en) * 2004-06-24 2007-07-10 Intel Corporation Storing data related to system initialization in memory while determining and storing data if an exception has taken place during initialization
EP1770920A4 (en) * 2004-07-16 2011-10-12 Brother Ind Ltd CONNECTING MODE CONTROL DEVICE, CONNECTION MODE CONTROL METHOD AND CONNECTION MODE CONTROL PROGRAM
US7386688B2 (en) * 2004-07-29 2008-06-10 Hewlett-Packard Development Company, L.P. Communication among partitioned devices
US7594128B2 (en) * 2004-08-04 2009-09-22 Hewlett-Packard Development Company, L.P. Systems and methods to determine processor utilization
US7565562B2 (en) 2004-09-03 2009-07-21 Intel Corporation Context based power management
US7242227B2 (en) * 2004-11-01 2007-07-10 Texas Instruments Incorporated Common mode stabilization circuit for differential bus networks
US7610497B2 (en) * 2005-02-01 2009-10-27 Via Technologies, Inc. Power management system with a bridge logic having analyzers for monitoring data quantity to modify operating clock and voltage of the processor and main memory
US7487222B2 (en) * 2005-03-29 2009-02-03 International Business Machines Corporation System management architecture for multi-node computer system
JP4838240B2 (ja) * 2005-04-27 2011-12-14 パナソニック株式会社 情報処理装置における電力制御装置
US7454639B2 (en) * 2005-06-30 2008-11-18 Intel Corporation Various apparatuses and methods for reduced power states in system memory
US20070043965A1 (en) * 2005-08-22 2007-02-22 Intel Corporation Dynamic memory sizing for power reduction
US7562234B2 (en) * 2005-08-25 2009-07-14 Apple Inc. Methods and apparatuses for dynamic power control
US7516336B2 (en) * 2005-09-29 2009-04-07 Intel Corporation System and method for power reduction by sequestering at least one device or partition in a platform from operating system access
US7509471B2 (en) * 2005-10-27 2009-03-24 Sandisk Corporation Methods for adaptively handling data writes in non-volatile memories
US20070136523A1 (en) * 2005-12-08 2007-06-14 Bonella Randy M Advanced dynamic disk memory module special operations
US7516317B2 (en) * 2005-12-29 2009-04-07 Microsoft Corporation Measuring an operating system's boot duration
US7421601B2 (en) * 2006-02-17 2008-09-02 International Business Machines Corporation Method and system for controlling power in a chip through a power-performance monitor and control unit
US20070260761A1 (en) * 2006-03-28 2007-11-08 Inventec Corporation Inter-module data communication control method and system for ACPI and BIOS
JP2007272573A (ja) * 2006-03-31 2007-10-18 Hitachi Ltd 低消費電力化メモリ管理方法及びメモリ管理プログラム
US7752468B2 (en) 2006-06-06 2010-07-06 Intel Corporation Predict computing platform memory power utilization
US20080010516A1 (en) * 2006-06-14 2008-01-10 Inventec Corporation Method and apparatus for indicating the actual progress of a booting procedure
US20080010527A1 (en) * 2006-06-26 2008-01-10 Inventec Corporation Method of solving BIST failure of CPU by means of BIOS and maximizing system performance
US7610482B1 (en) * 2006-06-28 2009-10-27 Qlogic, Corporation Method and system for managing boot trace information in host bus adapters
US7747881B2 (en) 2006-08-14 2010-06-29 Globalfoundries Inc. System and method for limiting processor performance
US20080046546A1 (en) 2006-08-18 2008-02-21 Parmar Pankaj N EFI based mechanism to export platform management capabilities to the OS
KR100770703B1 (ko) * 2006-08-30 2007-10-29 삼성전자주식회사 메모리 시스템의 전력 쓰로틀링 방법 및 메모리 시스템
JP2008109243A (ja) * 2006-10-24 2008-05-08 Renesas Technology Corp Rf通信用半導体集積回路
US20080147357A1 (en) 2006-12-15 2008-06-19 Iintrinisyc Software International System and method of assessing performance of a processor
US7953996B2 (en) * 2006-12-18 2011-05-31 Hewlett-Packard Development Company, L.P. ACPI to firmware interface
KR100890152B1 (ko) * 2006-12-22 2009-03-20 매그나칩 반도체 유한회사 Cmos 이미지 센서를 위한, 작은 크기, 높은 이득 및낮은 노이즈의 픽셀
US8302087B2 (en) * 2007-01-05 2012-10-30 International Business Machines Corporation Quality assurance in software systems through autonomic reliability, availability and serviceability code generation
JP4912174B2 (ja) * 2007-02-07 2012-04-11 株式会社日立製作所 ストレージシステム及び記憶管理方法
US8448024B2 (en) * 2007-05-16 2013-05-21 Intel Corporation Firmware assisted error handling scheme
TW200917006A (en) 2007-10-01 2009-04-16 Inventec Corp Apparatus and method for power management
US8250354B2 (en) * 2007-11-29 2012-08-21 GlobalFoundries, Inc. Method and apparatus for making a processor sideband interface adhere to secure mode restrictions
US20090150696A1 (en) * 2007-12-10 2009-06-11 Justin Song Transitioning a processor package to a low power state
US8151081B2 (en) * 2007-12-20 2012-04-03 Intel Corporation Method, system and apparatus for memory address mapping for sub-socket partitioning
US7831816B2 (en) * 2008-05-30 2010-11-09 Globalfoundries Inc. Non-destructive sideband reading of processor state information
US7912082B2 (en) * 2008-06-09 2011-03-22 Oracle America, Inc. Shared virtual network interface
US7984286B2 (en) * 2008-06-25 2011-07-19 Intel Corporation Apparatus and method for secure boot environment
US20090327609A1 (en) * 2008-06-30 2009-12-31 Bruce Fleming Performance based cache management
US20100153523A1 (en) * 2008-12-16 2010-06-17 Microsoft Corporation Scalable interconnection of data center servers using two ports
US8458498B2 (en) * 2008-12-23 2013-06-04 Intel Corporation Method and apparatus of power management of processor
US8601296B2 (en) 2008-12-31 2013-12-03 Intel Corporation Downstream device service latency reporting for power management
US8799691B2 (en) * 2009-01-07 2014-08-05 Hewlett-Packard Development Company, L.P. Hierarchical power management
JP5218568B2 (ja) * 2009-01-26 2013-06-26 富士通株式会社 構成変更機能を有する情報処理装置、システム構成変更方法及びシステム構成変更プログラム
JP5118074B2 (ja) 2009-01-27 2013-01-16 日本電信電話株式会社 光ファイバ
US8131991B2 (en) * 2009-02-10 2012-03-06 Sony Corporation System and method for configuring plural software profiles
US8135970B2 (en) 2009-03-06 2012-03-13 Via Technologies, Inc. Microprocessor that performs adaptive power throttling
US20100235834A1 (en) * 2009-03-16 2010-09-16 Faasse Scott P Providing a management communication channel between a software layer and platform layer for hardware management control
US8171319B2 (en) * 2009-04-16 2012-05-01 International Business Machines Corporation Managing processor power-performance states
US9244797B2 (en) * 2009-05-29 2016-01-26 Dell Products L.P. Methods for managing performance states in an information handling system
US8464038B2 (en) * 2009-10-13 2013-06-11 Google Inc. Computing device with developer mode
US8490179B2 (en) * 2009-10-27 2013-07-16 Hewlett-Packard Development Company, L.P. Computing platform
US20110131427A1 (en) 2009-12-02 2011-06-02 Jorgenson Joel A Power management states
US20110145555A1 (en) * 2009-12-15 2011-06-16 International Business Machines Corporation Controlling Power Management Policies on a Per Partition Basis in a Virtualized Environment
US8555091B2 (en) * 2009-12-23 2013-10-08 Intel Corporation Dynamic power state determination of a graphics processing unit
JP5544878B2 (ja) * 2009-12-25 2014-07-09 富士通株式会社 故障制御装置、プロセッサコア、演算処理装置、情報処理装置および擬似故障制御方法
US9310838B2 (en) * 2010-03-19 2016-04-12 I/O Interconnect, Ltd. Power management method for switching power mode of a computer system based on detection of a human interface device
KR20110114910A (ko) * 2010-04-14 2011-10-20 삼성전자주식회사 집적회로 및 그것의 소비전력 측정 방법
US8522066B2 (en) * 2010-06-25 2013-08-27 Intel Corporation Providing silicon integrated code for a system
US8648690B2 (en) * 2010-07-22 2014-02-11 Oracle International Corporation System and method for monitoring computer servers and network appliances
JP5598144B2 (ja) * 2010-08-04 2014-10-01 ソニー株式会社 情報処理装置、電源制御方法、およびプログラム
US8495395B2 (en) * 2010-09-14 2013-07-23 Advanced Micro Devices Mechanism for controlling power consumption in a processing node
US8812825B2 (en) * 2011-01-10 2014-08-19 Dell Products L.P. Methods and systems for managing performance and power utilization of a processor employing a fully multithreaded load threshold
WO2012101822A1 (ja) * 2011-01-28 2012-08-02 ルネサスエレクトロニクス株式会社 コントローラ、および半導体システム
US8659341B2 (en) * 2011-05-02 2014-02-25 Analog Devices, Inc. System and method for level-shifting voltage signals using a dynamic level-shifting architecture
WO2012154611A1 (en) * 2011-05-06 2012-11-15 Marvell World Trade Ltd. Memory on-demand, managing power in memory
US8966305B2 (en) * 2011-06-30 2015-02-24 Advanced Micro Devices, Inc. Managing processor-state transitions
US9026815B2 (en) * 2011-10-27 2015-05-05 Intel Corporation Controlling operating frequency of a core domain via a non-core domain of a multi-domain processor
US9031847B2 (en) * 2011-11-15 2015-05-12 Microsoft Technology Licensing, Llc Voice-controlled camera operations
US10108433B2 (en) 2011-11-22 2018-10-23 Intel Corporation Collaborative processor and system performance and power management
US8645797B2 (en) * 2011-12-12 2014-02-04 Intel Corporation Injecting a data error into a writeback path to memory
DE112012006377B4 (de) * 2012-05-17 2022-02-24 Intel Corporation Energieverbrauch und Leistung von Computersystemen steuern

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1717645A (zh) * 2002-11-30 2006-01-04 英特尔公司 用于多线程处理器性能控制的装置和方法

Also Published As

Publication number Publication date
GB2510091A (en) 2014-07-23
TWI467363B (zh) 2015-01-01
US9594570B2 (en) 2017-03-14
WO2013077890A1 (en) 2013-05-30
WO2013078397A1 (en) 2013-05-30
WO2013078418A1 (en) 2013-05-30
WO2013078363A1 (en) 2013-05-30
WO2013077889A1 (en) 2013-05-30
US20130275737A1 (en) 2013-10-17
US20140059368A1 (en) 2014-02-27
US9454380B2 (en) 2016-09-27
JP6155507B2 (ja) 2017-07-05
US10007528B2 (en) 2018-06-26
US20130275796A1 (en) 2013-10-17
KR101763102B1 (ko) 2017-08-04
US10514931B2 (en) 2019-12-24
US20170003724A1 (en) 2017-01-05
US20130283032A1 (en) 2013-10-24
US9454379B2 (en) 2016-09-27
US10275260B2 (en) 2019-04-30
DE112011105867T5 (de) 2014-11-06
JP2015505388A (ja) 2015-02-19
KR101810822B1 (ko) 2017-12-19
KR20170072953A (ko) 2017-06-27
TWI518586B (zh) 2016-01-21
BR112014012398B1 (pt) 2021-06-15
US20140258701A1 (en) 2014-09-11
US20140059337A1 (en) 2014-02-27
GB201408838D0 (en) 2014-07-02
US9535711B2 (en) 2017-01-03
US20190065211A1 (en) 2019-02-28
US10078522B2 (en) 2018-09-18
KR20140082832A (ko) 2014-07-02
US9442739B2 (en) 2016-09-13
US10732986B2 (en) 2020-08-04
TW201337537A (zh) 2013-09-16
TWI502505B (zh) 2015-10-01
US20130151569A1 (en) 2013-06-13
KR20170013402A (ko) 2017-02-06
US9898306B2 (en) 2018-02-20
TW201339967A (zh) 2013-10-01
BR112014012398A2 (pt) 2017-06-13
WO2013078387A1 (en) 2013-05-30
TW201335841A (zh) 2013-09-01
US20140053024A1 (en) 2014-02-20
KR101723009B1 (ko) 2017-04-04
GB2510091B (en) 2020-05-20
US20190317773A1 (en) 2019-10-17
CN103946765A (zh) 2014-07-23
US20170147484A1 (en) 2017-05-25
US11301257B2 (en) 2022-04-12
US10108433B2 (en) 2018-10-23
US11221857B2 (en) 2022-01-11
DE112011105867B4 (de) 2020-03-19
US20180181407A1 (en) 2018-06-28
US20170147358A1 (en) 2017-05-25
WO2013077891A1 (en) 2013-05-30
IN2014CN02785A (zh) 2015-07-03

Similar Documents

Publication Publication Date Title
CN103946765B (zh) 协同处理器以及系统性能和功率管理
JP6323821B2 (ja) サーバラック電力管理
Gough et al. Energy efficient servers: blueprints for data center optimization
CN104204825B (zh) 动态测量处理器中的功耗
KR101992967B1 (ko) 마이크로프로세서 내의 열 설계 전력을 구성하기 위한 방법 및 장치
CN103995577B (zh) 动态控制处理器的最大工作电压
US8402296B2 (en) Power profiling application for managing power allocation in an information handling system
US7487371B2 (en) Data path controller with integrated power management to manage power consumption of a computing device and its components
CN101604199B (zh) 操作特性的基于效率的确定
CN104011626B (zh) 通过在运行时期间配置功率管理参数的用于高能效和节能的系统、方法和装置
Ayoub et al. JETC: Joint energy thermal and cooling management for memory and CPU subsystems in servers
EP2607987A1 (en) Computing apparatus and system for remote control of operating states
JP2011509461A (ja) データ処理システムの強制アイドル
CN102027430B (zh) 管理计算机的功耗的方法和装置
CN108958429A (zh) 一种散热控制方法、系统及设备和存储介质
JP6663970B2 (ja) システム電源管理方法及び計算機システム
TW201443633A (zh) 能源管理系統
CN110096224A (zh) 存储器子系统中的功率控制
US10809778B2 (en) Systems and methods for information handling system rack and tile airflow coordination
Mandal et al. An RL based approach for thermal-aware energy optimized task scheduling in Multi-core processors
Lefurgy et al. Energy-efficient data centers and systems
Kerstens et al. Applying Green Computing to clusters and the data center
Waldschmidt et al. Reliability-aware power management of multi-core systems (MPSoCs)
CN116301298A (zh) 一种信息处理方法、系统及电子设备
TW201423742A (zh) 儲存裝置及其節能方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant