TW201339967A - 協同處理器及系統效能及電源管理 - Google Patents

協同處理器及系統效能及電源管理 Download PDF

Info

Publication number
TW201339967A
TW201339967A TW101142033A TW101142033A TW201339967A TW 201339967 A TW201339967 A TW 201339967A TW 101142033 A TW101142033 A TW 101142033A TW 101142033 A TW101142033 A TW 101142033A TW 201339967 A TW201339967 A TW 201339967A
Authority
TW
Taiwan
Prior art keywords
performance
level
platform
processor
register
Prior art date
Application number
TW101142033A
Other languages
English (en)
Other versions
TWI502505B (zh
Inventor
Guy M Therien
Paul S Diefenbaugh
Anil Aggarwal
Andrew D Henroid
Jeremy J Shrall
Efraim Rotem
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 TW201339967A publication Critical patent/TW201339967A/zh
Application granted granted Critical
Publication of TWI502505B publication Critical patent/TWI502505B/zh

Links

Classifications

    • 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
    • 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
    • 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
    • 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直接組態和電源管理)基礎的作業系統(之後簡稱為OS)之計算平台的圖。OSPM架構可包括任何適當的電源管理系統、介面、及/或促進介面啟動計算平台中的處理器之作業系統(OS)直接電源管理的規格。上述OSPM架構包括,但不限於ACPI(進階組態和電源介面)的規格實作。
在第1圖中,有執行作業系統(OS)110的硬體平台130(例如,平板、膝上型PC、伺服器),除此之外,其透過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、...Cn)、處理器時脈節流、及處理器效能狀態。如本文所使用的處理器效能狀態(Px)包括如同P0、P1等的傳統Pn狀態、及CPPC(協同處理器效能控制)效能控制(以下針對本發明所討論)。OSPM可結合使用這些控制以達到所欲之有時候相互衝突的目標(包括效能、功率消耗和電池壽命、熱需求、及噪音程度需求)之平衡。由於目標會互相影響,因此作業軟體必須實作關於何時和何地作出目標間之折衷的策略。
ACPI定義系統處理器在啟動(執行)或睡眠(不執行)時的G0工作狀態2中之電源狀態。處理器電源狀態被指定為C0、C1、C2、C3、...Cn。C0電源狀態係為CPU執行指令的啟動電源狀態。C1至Cn電源狀態係為處理器睡眠狀態,其中處理器比使處理器處於C0狀態下消耗較少電力且耗散較少熱。當處於睡眠狀態時,處理器通常不會執行指令。
在過去,處理器效能控制(Pn狀態控制)主要已影響在處理器頻率方面的處理器效能,其通常相當於處理器效能 能力。OSPM會產生效能狀態請求(例如,具有特定頻率選擇的P0),且可預期處理器對其提供某種操作頻率或頻率範圍。然而,已了解到頻率不一定與處理器能進行的工作量成正比,特別是針對所有情境。意即,儘管處理器頻率係為處理器完成工作的速度之粗略近似值,但仍不保證工作量效能會隨著頻率而擴展。因此,CPPC((協同處理器效能控制)留下了實際效能度量的定義給平台而不是規範用於處理器效能的具體度量。
例如,平台可選擇使用如處理器頻率的單一度量,或其可選擇混合多個硬體度量(例如,頻率、時間、指令率等)以產生效能的綜合測量。以此方式,平台能更自由地傳送一OSPM請求效能等級而不必傳送一特定處理器頻率至少持續一段時間。例如,這使得它能符合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可被認為是耦接可選BMC連接之HWP介面320的一部分,但為了方便起見而單獨顯示)。
參考第4和5圖,將說明一種用於使用平台與OS兩者可存取之電源管理介面暫存器來實作彈性的電源管理架構之通用方法。第4圖顯示依照一些實施例之用於平台以促進如本文所述之彈性電源管理架構的通用常式402。第5圖顯示可在PM暫存器空間122(根據第1圖)中或以任何其他適當方法來實作的電源管理暫存器。介面暫存器包含一或多個能力暫存器502、一或多個控制暫存器504、及一或多個反饋暫存器506。
能力暫存器502通常用來指示待由OS讀取的效能刻度參數、能力、臨界值等,使得其能決定如何管理電源和效能。控制暫存器504通常由OSPM寫入以指示來自平台處理器的請求/所欲之效能,以及管理限制。最後,反饋暫存器506指示例如待由OS讀取的傳送效能(估計或測量/監控效能)參數,使得其能判斷傳送效能是否夠接近請求/所欲之效能。
參考常式402,最初,在404中,效能能力被載入至能力暫存器。這可涉及資料正例如從BIOS記憶體、或任何其他適當處傳輸至能力暫存器、或暫存器可能已在製造程序期間,例如使用保險絲或之類時被載入。這些能力可能指示抽象的效能刻度範圍、如保證對非保證臨界值的臨界值、及其他參數。在406中(例如,在控制暫存器已被OSPM寫入之後),平台會從控制暫存器讀取控制值。在408中,平台接著(例如,透過PCU或類似單元)控制處理器嘗試提供所請求之效能、給定限制。如下將特別針對 ACPI實作更加提出說明,其可能(若在非保證範圍中)或若可能合理的話(若在保證範圍且沒有任何無效限制,例如熱)其將提供所請求之效能。這可能意味著在一段指定時間內提供落在規範容差內的平均效能等級。
依照ACPI規格,以及一些實施例,可使用CPC(連續效能控制)物件(ACPI中的_CPC物件或任何其他適當物件)。此物件可宣告一介面,其允許OSPM基於可容許值的連續範圍將處理器轉換成一效能狀態。OS可將所欲之效能值寫入至一效能等級(例如,ACPI中的「所欲之效能暫存器」),且平台接著會將所請求之效能等級映射至一內部效能狀態。
表格1(以及第8圖之CPC物件)顯示用於此CPC介面的示範封包。
_CPC物件所傳送的暫存器提供OSPM平台專用的效能能力/臨界值和OSPM用來控制的控制暫存器以及平台之處理器效能設定。這些在下面的章節中會進一步說明。表格2方便地列出CPC物件所提供的暫存器以被OS使用來管理平台電源和效能。
有不同的暫存器類型,包括能力/臨界值暫存器、控制暫存器、及反饋暫存器。能力/臨界值暫存器指示用於正被談論中的處理器之可用效能參數。它可直接地、或間接地被處理器OEM、或被一些其他與處理器之電源/效能能力關聯的適當實體來設置。控制暫存器可被OS對其設置以藉由請求來自平台的效能參數來控制效能,而反饋暫存器將效能資料從平台提供至OS,使得其能判斷是否正在傳送所欲及/或所期望之效能(但請注意這是效能之處理器區域定義-這是類似於問-你是否給予我我所要求的效能?)。可能有其他同樣可被定址的暫存器。表格2列出了一些使用在ACPI實作中的暫存器。
第6圖顯示依照一些實施例之相對效能等級刻度。效能基礎的控制對處理器效能等級的連續範圍,而不是離散的處理器狀態操作。因此,可在效能臨界值方面規範平台能力和OS請求。第6圖圖解地繪示這些用於平台的效能臨界值。其亦於下討論。(請注意並非所有效能等級都必須是特有的。例如,平台的名義效能等級亦可以是其最高效能等級。此外,儘管平台可規範暫存器大小落在可容許範圍內,但能力/臨界值暫存器之大小仍應與控制暫存器之大小相容,於下進一步討論。再者,在一些實施例中,若平台支援CPPC,則CPC物件應存在於所有處理器物件之下。意即,可能不預期OSPM支援混合模式,例如,同時用於平台中的所有處理器之CPPC和舊式PSS)。
假設在理想的條件下,最高效能臨界值(效能值=N)可能是個別處理器可達到的最大效能。此效能等級可能不會持續一段很長的期間,且可能只有在其他平台元件處於一特定狀態時才可實現;例如,其可能要求其他處理器處於 閒置狀態。假設在理想的操作條件下,名義效能係為處理器的最高持續效能等級。在缺乏外部限制(電源、熱等)的情況下,這是預期平台能夠連續維持的效能等級。預期所有處理器能夠同時地持續其名義效能狀態。
「最低名義」效能等級係為達到非線性省電的最低效能等級,意即,可根據電壓和頻率縮放達到有意義的省電。超過此臨界值,較低效能等級通常應該比較高效能等級更有效節能。就傳統意義上,這代表效能等級的P狀態範圍。「最低」效能等級係為平台的絕對最低效能等級。選擇低於最低非線性效能等級的效能等級通常將降低處理器的瞬間功率消耗。就傳統意義上,這代表效能等級的T狀態範圍。
在考慮已知的外部限制(例如,電源預算、熱限制、AC vs DC電源等)之情況下,保證效能暫存器傳送保證效能等級給OSPM,其係為處理器的目前最高持續效能等級。預期處理器能夠同時地持續其保證效能等級。保證效能等級被要求落在最低效能與名義效能等級之間(含)的範圍(第9圖)中。
在一些實施例中,若不實作此暫存器,則假設保證效能等於名義效能。若使用此暫存器,則OSPM可重新評估保證效能暫存器。因此,平台可有效地改變名義等級,且由此改變保證效能臨界值。(在一些架構中,例如,ACPI 5規格,對保證效能的改變不應比每秒一次更為頻繁。若平台不能保證一給定效能等級一段持續的時間(多於1 秒),則應保證較低效能等級並適時地輸入如OSPM所請求且目前操作條件所允許的較高效能等級)。
參考第7圖,具有OSPM的OS可具有一些效能設定來協同使用以控制平台的效能。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規範的效能降低容差。
名義計數器暫存器在處理器啟動的任何時間以固定速率來計數。它不會受到對所欲效能、處理器節流等改變的影響。
在考慮對所欲之效能改變的情況下,傳送效能計數器在處理器啟動的任何時間以與目前效能等級成正比的速率來遞增。當處理器以其名義效能等級來運作時,則傳送效能計數器以與名義效能計數器相同的速率來遞增。
計數器返轉時間為平台提供一手段以為名義/傳送效能計數器指定返轉時間。若大於在查詢反饋計數器之OSPM之間經過的這段時間,則計數器可在無須OSPM能 偵測其已完成下返轉。若不實作(或零),則假設效能計數器在平台的壽命期間不返轉。
藉由保證效能暫存器,平台對能傳送的效能指示出可預測的限制。在平台由於不可預測的事件而必須限制所傳送之效能低於所欲之效能(或,若所欲之效能高於保證效能,則低於保證效能)的事件中,平台會將效能限制指示器設為一非零值。這對OS指出不可預測的事件已限制了處理器效能,且所傳送之效能可能低於所欲效能。效能限制指示器是固定不動的,且將保持非零直到OS藉由寫入0至暫存器來清除它為止。
效能限制暫存器應僅用來報告短期、不可預測的事件(例如,被主張的PROCHOT)。若平台能夠識別限制處理器效能之長期、可預測事件,則應使用保證效能限制以通知OS這個限制。對保證效能的改變不應比每秒一次更為頻繁。若平台不能保證一特定效能等級達一段持續的時間(多於1秒),則應保證較低效能等級並適時地進入如OS所請求且目前操作條件所允許的較高效能等級。
啟動暫存器係為非必要的讀取/寫入暫存器,一或多個位元的長度,其可以在PPC或系統I/O空間中-這是在MSR中。若平台有支援,則OS將1寫入暫存器以在特定處理器上啟動CPPC。若未實作,則OS假設平台已啟動CPPC。
OS特性
為了使OS使用無單位、效能縮放介面(給定抽象、相對性的刻度),在大多數實施例中,OS最初應特性化由介面所傳送的工作量效能。這可以各種方式來完成。例如,當去能自主平台電源管理特徵(例如,能量效率最佳化特徵,其單方面地改變最低和最高限制內的效能參數以節省電力)時,可藉由選擇效能範圍值來完成。例如,可藉由將最低、最高、和所欲之輸入設為相同值、或藉由將時間窗設為零來完成在ACPI實作中關閉它們。當然,基於非ACPI實作,可使用限制平台的其他方法來識別每個(或剖面的)效能值的意義給OS。
在一些實施例中,當運作特性工作量時,OS選擇從最低至名義之效能值範圍中(含)的值,並觀察工作結果。在其他實施例中,OS選擇相同範圍(最低至名義)中的值並讀取統計計數器,例如,ACPI ACNT和MCNT MSR,其傳送邏輯處理器的生成頻率。
特性工作量會是需要最低品質服務以實現所欲之結果的工作量。藉由特性化什麼效能值實現最小QoS,每當啟動那種工作量以確保滿足QoS時,OS之後接著會將此值設為最小值。否則,特性結果(例如,頻率)會在對基於邏輯處理器的工作量(多忙碌)來選擇效能狀態的效能狀態控制實作需求基礎的切換策略中被OS使用。請注意可能有幾種特性工作量且可使用這些來決定多個QOS最小值(對應於工作量類型)。
在前面說明和下列申請專利範圍中,下列術語應被解 釋如下:可使用「耦接」和「連接」及與其衍生之術語。應了解到這些術語並不打算作為彼此的同義字。反而,在特定實施例中,「連接」係用來表示兩個或多個元件為彼此直接實體或電性接觸。「耦接」係用來表示兩個或多個元件為彼此共同運作或互動,但它們可能或可能並非直接實體或電性接觸。
本發明並不限於所述之實施例,而是能以所附之申請專利範圍中的精神和範圍內的修改和改變來實作。例如,應了解本發明可應用於所有類型的半導體積體電路(「IC」)晶片。這些IC晶片的實例包括但不限於處理器、控制器、晶片組元件、可程式邏輯陣列(PLA)、記憶體晶片、網路晶片等。
應了解在一些附圖中,信號導電線係以線來表示。有些線可以是較粗的,用來表示更多構成信號路徑,具有一號碼標籤,用來表示構成信號路徑之數量、及/或在一或多個端點上具有箭頭,用來表示主要資訊流方向。然而,這不應以限制方式來解釋。反而,上述附加細節可關聯於一或多個實施例來使用以促進更容易了解電路。任何所表示的信號線,無論是否具有額外的資訊,實際上可包含一或多個可在多個方向上傳輸且可以任何適當類型之信號架構來實作的信號,例如,以差動對、光纖線、及/或單端線來實作的數位或類比線。
應了解可能已舉出實例大小/模型/值/範圍,雖然本發明並不以此為限。由於製造技術(例如,光刻)隨著時間的 推移而成熟,因此預期可製造較小尺寸的裝置。此外,為了簡單描述和說明,連接IC晶片及其他元件之熟知的電源/接地連線可能或可能不會顯示在圖中,以不致於模糊本發明。再者,可以方塊圖的形式來顯示佈置以避免模糊本發明,也有鑑於關於實作上述方塊圖佈置的具體細節係高度依賴於待實作本發明的平台之事實,意即,上述具體細節應適切落在本領域之熟知技術者的技術範圍內。這裡提出具體細節(例如,電路)以描述本發明之示範實施例,本領域之熟知技術者應清楚明白本發明能無需、或需要這些具體細節的變化來實行。由此本說明書可被視為說明性而非限制性的。
110‧‧‧作業系統
112‧‧‧核心
114‧‧‧OSPM系統
116‧‧‧裝置驅動程式
118‧‧‧電源管理介面驅動程式
120‧‧‧OSPM電源管理介面
122‧‧‧電源管理暫存器
124‧‧‧BIOS介面資料結構
126‧‧‧電源管理表
130‧‧‧平台
132‧‧‧平台硬體
134‧‧‧BIOS
C0-Cn‧‧‧狀態
Px‧‧‧效能狀態
305‧‧‧處理器
307‧‧‧MSR
309‧‧‧電源控制單元
311‧‧‧核心頻率和VID控制
313‧‧‧MSR/PECI介面
320‧‧‧硬體平台介面
330‧‧‧OS
402‧‧‧常式
404‧‧‧常式
406‧‧‧常式
408‧‧‧常式
502‧‧‧能力暫存器
504‧‧‧控制暫存器
506‧‧‧反饋暫存器
本發明之實施例係經由在附圖中的舉例,但非限定來說明,在附圖中的相同參考數字係指類似元件。
第1圖係顯示依照一些實施例之具有OSPM(OS直接組態和電源管理)之計算平台的圖。
第2圖顯示依照用於ACPI實作之一些實施例的處理器效能狀態圖。
第3圖係顯示具有OSPM之平台的圖,繪示依照一些實施例之OSPM能與平台通訊以管理效能的各種方式。
第4圖顯示依照一些實施例之用於平台以有助於彈性電源管理架構的通用常式。
第5圖顯示依照一些實施例之可在電源管理暫存器介 面中實作的電源管理暫存器。
第6圖顯示依照一些實施例之相對效能等級刻度。
第7圖係顯示依照一些實施例之可用來控制處理器效能的一些效能控制設定的圖。
第8圖顯示依照一些實施例之用於彈性電源管理介面(ACPI中所定義的CPPC介面)的示範封包的定義碼。
110‧‧‧作業系統
111‧‧‧附屬應用程式API
112‧‧‧核心
114‧‧‧OSPM系統
116‧‧‧裝置驅動程式
118‧‧‧電源管理介面驅動程式
120‧‧‧OSPM電源管理介面
122‧‧‧電源管理暫存器
124‧‧‧BIOS介面資料結構
126‧‧‧電源管理表
130‧‧‧平台
132‧‧‧平台硬體
134‧‧‧BIOS

Claims (20)

  1. 一種計算設備,包含:一處理器;一控制單元,用來透過控制效能設定來管理該處理器的效能;及一介面,當該設備正在運作時,該介面用來提供一或多個控制暫存器給一OS,以從一或多個能力暫存器中指示給該OS之一可用值之刻度請求一效能值。
  2. 如申請專利範圍第1項所述之設備,其中該一或多個控制暫存器包括一用於該OS的暫存器,以請求一小於或等於所欲之效能等級的一最小效能值。
  3. 如申請專利範圍第2項所述之設備,其中該一或多個控制暫存器包括一用於該OS的暫存器,以請求一大於或等於所欲之效能等級的一最大效能值。
  4. 如申請專利範圍第1項所述之設備,其中該效能等級係一所欲之效能等級,且一或多個控制暫存器包括一用於該OS的暫存器,以請求平均效能係接近或等於所請求的該所欲之效能等級上的一時間窗。
  5. 如申請專利範圍第4項所述之設備,其中該一或多個控制暫存器包括一用於該OS的容差暫存器以規範平均所欲之效能不會超過範圍的一容忍度。
  6. 如申請專利範圍第1項所述之設備,其中該一或多個控制暫存器係以一或多個MSR來實作。
  7. 如申請專利範圍第1項所述之設備,其中該一或多 個暫存器係以記憶體映射I/O來實作。
  8. 如申請專利範圍第7項所述之設備,其中記憶體映射I/O位址空間包括跨傳輸協定的位址。
  9. 如申請專利範圍第1項所述之設備,其中該一或多個暫存器係以該OS中的驅動程式來實作以模擬介面暫存器。
  10. 如申請專利範圍第1項所述之設備,其中該一或多個暫存器係透過一BMC被該OS存取。
  11. 一種設備,包含:一計算平台,用來基於平均在一OS請求時間間隔以上的至少一OS請求效能等級來提供效能。
  12. 如申請專利範圍第11項所述之設備,其中效能更基於效能可能不會瞬間較低的一OS請求最小效能等級。
  13. 如申請專利範圍第11項所述之設備,其中效能更基於效能可能不會瞬間超過的一OS請求最大效能等級。
  14. 如申請專利範圍第11項所述之設備,其中該平台包含一或多個暫存器來保持該OS請求效能及時間間隔。
  15. 如申請專利範圍第14項所述之設備,其中該平台包含一或多個暫存器來對一OS指示待請求之一可用效能值之刻度。
  16. 如申請專利範圍第14項所述之設備,其中該平台包含一或多個暫存器來指示用於傳送效能的反饋資訊。
  17. 一種設備,包含:一電源控制電路,用於一處理器以基於來自一可用效 能等級之刻度的一所欲之效能等級及傳送該所欲之效能等級之平均的一時間間隔來控制該處理器所傳送的效能,其中該電源控制電路在適當時機降低所提供之效能,以在該時間間隔傳送所欲之平均效能時節省電力。
  18. 如申請專利範圍第17項所述之設備,其中該電源控制電路一直傳送至少一最小等級的效能且不會超過一最大等級。
  19. 如申請專利範圍第18項所述之設備,其中該最小等級和該最大等級待由運作在該處理器上的一作業系統指定。
  20. 如申請專利範圍第17項所述之設備,其中該電源控制電路係該處理器的一部分。
TW101142033A 2011-11-22 2012-11-12 協同處理器及系統效能及電源管理 TWI502505B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161563030P 2011-11-22 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
TW201339967A true TW201339967A (zh) 2013-10-01
TWI502505B TWI502505B (zh) 2015-10-01

Family

ID=48470182

Family Applications (3)

Application Number Title Priority Date Filing Date
TW101142033A TWI502505B (zh) 2011-11-22 2012-11-12 協同處理器及系統效能及電源管理
TW101142382A TWI518586B (zh) 2011-11-22 2012-11-14 協同處理器與系統效能及電力管理技術
TW101142626A TWI467363B (zh) 2011-11-22 2012-11-15 協同處理器及系統之效能與電力管理

Family Applications After (2)

Application Number Title Priority Date Filing Date
TW101142382A TWI518586B (zh) 2011-11-22 2012-11-14 協同處理器與系統效能及電力管理技術
TW101142626A TWI467363B (zh) 2011-11-22 2012-11-15 協同處理器及系統之效能與電力管理

Country Status (10)

Country Link
US (14) US9454379B2 (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) WO2013077889A1 (zh)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2510091B (en) 2011-11-22 2020-05-20 Intel Corp 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
JP5877533B2 (ja) * 2013-01-31 2016-03-08 三菱電機株式会社 計算機装置及び計算機装置の制御方法
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
WO2021011577A1 (en) * 2019-07-15 2021-01-21 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 苏州浪潮智能科技有限公司 电源管理的控制权移交方法、装置、设备和存储介质

Family Cites Families (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4646232A (en) * 1984-01-03 1987-02-24 Texas Instruments Incorporated Microprocessor with integrated CPU, RAM, timer, bus arbiter data for communication system
US4641308A (en) * 1984-01-03 1987-02-03 Texas Instruments Incorporated Method of internal self-test of microprocessor using microcode
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
WO2000051000A1 (fr) * 1999-02-24 2000-08-31 Hitachi, Ltd. Systeme informatique et procede pour gerer les perturbations affectant un systeme informatique
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
US7219241B2 (en) * 2002-11-30 2007-05-15 Intel Corporation Method for managing virtual and actual performance states of logical processors in a multithreaded processor using system management mode
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
CN100527089C (zh) * 2005-04-27 2009-08-12 松下电器产业株式会社 信息处理装置中的功率控制装置
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
JP5782465B2 (ja) * 2011-01-28 2015-09-24 ルネサスエレクトロニクス株式会社 コントローラ、および半導体システム
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
US8788777B2 (en) * 2011-05-06 2014-07-22 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
GB2510091B (en) 2011-11-22 2020-05-20 Intel Corp 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

Also Published As

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

Similar Documents

Publication Publication Date Title
TWI502505B (zh) 協同處理器及系統效能及電源管理
TWI416311B (zh) 處理器電力管理方法與裝置
JP5592269B2 (ja) データ処理システムの強制アイドル
JP5707321B2 (ja) スリーププロセッサ
US20120216058A1 (en) System, Method and Apparatus for Energy Efficiency and Energy Conservation by Configuring Power Management Parameters During Run Time
US10963028B2 (en) System, method and apparatus for energy efficiency and energy conservation by configuring power management parameters during run time
US20140325247A1 (en) Controlling power and performance in a system agent of a processor
TW201015318A (en) Performance based cache management
TWI641943B (zh) 控制電源供應單元於閒置狀態期間的功率消耗之技術
US9612652B2 (en) Controlling power consumption by power management link
CN117461026A (zh) 用于协调持久性高速缓存刷新的系统和方法
US10198060B2 (en) Controlling power management in micro-server cores and peripherals
US20220206850A1 (en) Method and apparatus for providing non-compute unit power control in integrated circuits
AlLee Green Microprocessor and Server Design
CN117396828A (zh) 对持久性高速缓存刷新的系统支持
TW201423742A (zh) 儲存裝置及其節能方法