TW201335841A - 協同處理器與系統效能及電力管理技術 - Google Patents

協同處理器與系統效能及電力管理技術 Download PDF

Info

Publication number
TW201335841A
TW201335841A TW101142382A TW101142382A TW201335841A TW 201335841 A TW201335841 A TW 201335841A TW 101142382 A TW101142382 A TW 101142382A TW 101142382 A TW101142382 A TW 101142382A TW 201335841 A TW201335841 A TW 201335841A
Authority
TW
Taiwan
Prior art keywords
performance
register
processor
level
platform
Prior art date
Application number
TW101142382A
Other languages
English (en)
Other versions
TWI518586B (zh
Inventor
Guy M Therien
Paul S Diefenbaugh
Anil Aggarwal
Andrew D Henroid
Jeremy J Shrall
Efraim Rotem
Krishnakanth V Sistla
Eliezer Weissmann
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 TW201335841A publication Critical patent/TW201335841A/zh
Application granted granted Critical
Publication of TWI518586B publication Critical patent/TWI518586B/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 or 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Power Sources (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本發明有關於一平台能源管理方案。在一些實施例中,一平台使用待由一OSPM系統所請求之一或多個參數,提供一相對的效能比例。

Description

協同處理器與系統效能及電力管理技術 發明領域
本發明大致涉及一計算系統,特別是涉及平台能源及效能管理方法與系統。
發明背景
本申請案主張於2011年11月22日提申之美國No.61/563,030號臨時申請案的優先權並且在此將其內容列入參考文獻。
發明概要
本發明係特定的提出一種裝置,其係包含:一處理器及具有藉該處理器執行的指令的記憶體,該等指令被執行時實施一作業系統且識別數個性能暫存器而對該作業系統指示一可達成的效能等級的比例,該等性能暫存器包括一最高效能暫存器、一額定效能暫存器,及一最低效能暫存器。
110‧‧‧作業系統
111‧‧‧從屬的應用程式APIs
112‧‧‧核心
114‧‧‧OSPM系統
116‧‧‧裝置驅動程式
118‧‧‧能源管理介面驅動程式
120‧‧‧作業系統/平台能源管理介面
122‧‧‧PM暫存器
124‧‧‧BIOS介面資料結構
126‧‧‧PM表
130‧‧‧平台
132‧‧‧平台韌體
134‧‧‧BIOS
330‧‧‧作業系統
320‧‧‧硬體平台介面
307‧‧‧模範特定暫存器
309‧‧‧能源控制單元
311‧‧‧核心頻率與VID控制
313‧‧‧MSR/PECI介面
305‧‧‧處理器
341‧‧‧伺服器平台
342‧‧‧基板管理控制器
402‧‧‧步驟
404‧‧‧步驟
406‧‧‧步驟
408‧‧‧步驟
本發明的實施例係以舉例的方式而非以限制的 方式例示說明,在附加圖式中的圖案中,其中類似的參考標號係指類似的元件。
圖1是一顯示依據一些實施例的一計算平台的圖式,該計算平台帶有作業系統導向的能源管理(OSPM,OS-directed configuration and power management);圖2顯示根據用於ACPI實作的一些實施例的一處理器效能狀態圖;圖3是顯示根一些實施例帶有OSPM的一平台之圖式,例示說明OSPM可與平台通訊以管理效能的不同方式;圖4顯示根據一些實施例的用於一平台以促進一有彈性的能源管理方案之一般例行程序方案;圖5顯示根據一些實施例的能源管理暫存器,其可在一能源管理暫存器介面實施;圖6顯示一根據一些實施例的相對的效能等級比例;圖7是顯示根據一些實施例之若干效能控制設定的一圖式,該等設定可被用來控制處理器效能;及圖8顯示根據一些實施例的針對一範例性封包用於一有彈性的能源管理介面(ACPI中定義的CPPC介面)的定義碼。
較佳實施例之詳細說明
圖1係顯示一計算平台的圖式,該計算平台具有以OSPM(作業系統導向的能源管理,OS-directed configuration and power management)為基礎的作業系統(以 下簡稱OS)。一OSPM方案可包含任何適合的能源管理系統、介面,及/或有助於一介面使在一計算平台中的一處理器之OS導向的能源管理的規格(specification)。如此的OSPM方案包括,但不限於,ACPI(進階組態與能源介面)規格的實施(implementation)。
在圖1中,有一硬體平台130(例如:平板電腦、膝上型電腦、伺服器)其執行作業系統110(OS),在其它物之間,透過以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)、處理器時脈減速(clock throttling),及處理器效能狀態。如在此所使用的處理器效能狀態(Px),包含傳統Pn狀態,像是P0、P1等等,及CPPC(協同處理器 效能控制,Collaborative Processor Performance Control)效能控制(如在以下適切於本發明的討論)。該等控制可藉由OSPM的結合而使用,以達成所需的有時衝突的目標之平衡,該等目標包括效能、能源消耗與電池壽命、熱需求,及噪音等級需求。因為該等目標相互影響,該操作軟體需要實施一策略,該策略係關於該等目標間的權衡(tradeoff)在何時以及何處完成。
ACPI定義在G0工作狀態2下,該系統處理器的能 源狀態為活躍(active)(執行中)或睡眠(非執行中)其中一者。處理器能源狀態被指定為C0、C1、C2、C3、...Cn。該C0能源狀態為一活躍的能源狀態,且此狀態下,該CPU執行指令。該C1到Cn能源狀態為處理器的睡眠狀態,此狀態下,相較於使該處理器處於C0的狀態,該處理器耗費較少能源且散逸較少的熱。當處於睡眠狀態,該處理器通常不會執行指令。
以往,處理器效能控制(Pn狀態控制),就處理器 頻率而論,主要地影響著處理器效能,而該頻率通常對應於處理器效能功能(performance capability)。該OSPM可提出一效能狀態請求(例如:具有一特定頻率選擇的P0),且其可要求(expect)該處理器提供具有特定運作頻率或特定頻率範圍。然而,可以理解該頻率非必然與一處理器可執行的工作總量成正比,特別是針對各種情況。亦即,當處理器頻率是在處理器完成工作下之速度的一粗略的近似時,工作負載效能並非保證能與該頻率成比例。因此, CPPC(Collaborative Processor Performance Control)將確切效能尺度(metric)的定義留給平台,而非針對該處理器效能規定一特定的尺度。
舉例來說,該平台可選擇使用一單一尺度,諸如 處理器頻率,或其可選擇混雜多種硬體尺度(例如頻率、時間,指令率等)去產生一合成的效能量測。如此一來,該平台更自由地交付(deliver)一OSPM請求的效能等級,而不需交付一個特定的處理器頻率,至少連續一段時間。舉例來說,允許其符合OSPM的預期,且同時達成更有效率的節能。
協同處理器效能控制(CPPC)針對OSPM定義一 提取且有彈性的機制,以在該平台中與一實體協作而管理該處理器的效能。在此方案下,該平台實體係負責用以產生及維持一效能定義,該定義支持(back)一連續的(或至少類似連續的)效能比例(例如一無單位(unit-less)的效能比例)。在運行期間中,該OSPM請求在此比例的效能(例如:其請求一介於0至2000、1至100或其它任何數之間的值),且該平台實體係負責用以轉換該OSPM效能請求為實際的硬體效能狀態。
在一些實施例中,對於藉該平台所呈現之效能值 的確切意義,或它們如何與像是處理器頻率的特定硬體尺度關連,該OSPM沒有假設。相反的,該OSPM可,例如在啟動或處理器熱插拔時,運行一特性化常式(characterization routine),就該特定平台的可取得的效能值的比例去評估所提供的效能(例如:頻率或標準檢查程式、 處理率等等)。
參閱圖3,針對OSPM以控制該平台能源管理系 統之用來實施該能源管理介面的該控制結構(例如:暫存器)可以任何適當的方式實施。。例如,該控制方法可以藉記憶體映射(mapped)IO或以特定實體暫存器諸如MSR(模範特定暫存器),、在其它匯流排或轉換埠(例如在一SMBus、PECI介面、平台通訊頻道等等)的暫存器、虛擬暫存器,或類似的暫存器來實施。(注意,,一MSR典型地並非為記憶體空間的一部分,而是例如可存於硬體,諸如帶有一或多個指令供其讀寫的一處理器暫存器。)此提供了充分的彈性,因此該OS可與該處理器本身、該平台晶片,或一分離的實體(例如:一底座管理控制器)進行通訊。
圖3為一個顯示具有OSPM之平台的圖式,例示 說明該OS可與平台溝通以管理平台的此等不同方式。在此實施例中,該處理器305具有多個MSR 307、一能源控制單元309、核心頻率與VID控制311以及用以控制效能與能源消耗的一MSR/PECI介面313。一OS330透過其以ACPI為基礎的能源管理系統(其以ACPI為基礎的OSPM)管理該平台的能源及效能。一硬體平台(HWP)介面320有助在該OS與平台處理器305之間的通訊,藉此致能該OS監督處理器能源管理。(注意,MSR/PECI介面313可被視為HWP介面320的一部分,但為了方便其為分離地顯示,耦接到該光學BMC連線)
參考圖4及圖5,使用能源管理介面之暫存器用來 實施一有彈性的的能源管理方案的一般方式將被描述,該通常方式可藉該平台及OS兩者存取。圖4顯示針對一平台用以助於如在此討論之根據一些實施例的一有彈性能源管理方案的一般常式(routine)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物件傳送(convey)的暫存器提供給OSPM平台限定的(platform-specific)效能功能/閥值及讓OSPM使用於控制的控制暫存器,以及提供該平台的處理器的效能設定。這些在以下段落中進一步被描述。表2方便地列出藉該CPC物件提供的暫存器,用來給OS使用而管理平台能源及效能。
不同的暫存器種類包括功能/閥值暫存器、控制暫存器及回饋暫存器。該功能/閥值暫存器針對討論中的處理器指示可達成的效能參數。它們可直接地或非直接地藉該處理器OEM或藉與處理器的能源/效能功能相關的一些其他實體移入(populated)。該等控制暫存器可藉該OS移入,用以藉由從該平台請求的效能參數而控制效能,且該等回饋暫存器提供自該平台至該OS的效能資料,因此其可 判斷所需的及/或期望的效能是否已被交付(delivered)(但注意,這是一處理器本地的效能定義,它是近似於詢問「你是否正在給我我要求的效能?」)。可有其它暫存器其可同樣的受處理。表2列出一些用在ACPI實施的暫存器。
圖6顯示依據一些實施例的相關的一效能等級比例。以效能為基礎的控制,在一處理器效能等級的連續範圍中運作,而非離散的處理器狀態。因此,平台性能以及OS請求可在效能閥值方面被具體描述。圖6圖像地例示說明此等針對平台的效能閥值。它們也在下文中討論。(注意,並非所有效能等級都必須是唯一的。例如一平台的額定效能等級也可以是它的最高效能等級。而且,當該平台可能具體指明在一允許範圍內的暫存器尺寸,該性能/閥值暫存器的尺寸應與控制暫存器的尺寸能相容,以下進一步討論。更進一步的,在一些實施例中,如果該平台支援CPPC,該CPC物件應在所有處理器物件下存在。亦即,該OSPM可能不被期待來支援混合的模式,例如:在同一時間針對所有於平台中的處理器之CPPC以及遺留PSS。)假設在理想狀況下,最高的效能閥值(效能值=N)可能是一個別的處理器在可達成的最高效能。此效能等級可能不是長期可持續的(sustainable),且可能只有在若其它平台元件係在一特定狀態時被達成;例如,其可能需要其它處理器處於一閒置狀態。假設在理想運作條件下,額定效能是該處理器的最高持續的效能等級。缺乏一外在的限制(能源、熱等等),此為該效能被期待有能力持續地維持的效能等級。所有處理器被期待有能力同時地持續其 額定效能等級。
該「最低的額定」效能等級是在非線性節能方面被達成的最低效能等級,亦即,有意義的節能可自電壓及頻率調整比例而獲得。在這閥值之上,較低的效能等級通常可能比較高的效能等級更能產生高的能量效率。在傳統的用字中,此代表效能等級的P狀態範圍。該「最低」效能等級為該平台的完全最低的效能等級。選擇比該最低非線性效能等級低的一效能等級,將典型地降低該處理器的瞬間電源消耗。在傳統的用字中,此代表該效能等級的T狀態範圍。
該保證的效能暫存器傳送給該OSPM的一保證的效能等級,其為一處理器之目前最高持續的效能等級,列入已知的外部限制(能源預算編列、熱限制、AC與DC能源來源等等)。處理器同時地被期待可持續它們的保證效能等級。該保證效能等級是被要求落在最低效能與額定效能等級(包括頭尾的)之間的範圍內(圖9)。
在一些實施例中,如果這暫存器未被實施,保證效能被假定為相當於額定效能。若此等暫存器係受使用,該OSPM可重新評估該保證的效能暫存器。因此,該平台可有效率地改變額定等級,且因此改變該保證的效能閥值。(在一些方案,例如,該ACPI規格,保證的效能之改變不應比每秒一次更頻繁。)若該平台不能對一給定的效能等級保證一持續的時間期間(大於一秒),其應該保證一個較低的效能等級且找機會地(opportunistically)進入如OSPM 請求且由目前操作條件所允許的較高效能等級。
參閱圖7,帶有OSPM的一OS可具有用以結合平台效能控制的數個效能設定。該OS可選擇任何在藉該平台所支援的連續範圍值內的效能值。內部地,該平台可實施小數量之離散的效能狀態,且在該OS所需之精確的效能等級下可能不能運作。若一平台內部不存在與OS的所需的效能等級相符的狀態,例如,該平台可以下列方式以捨入(round)方式取得所需的狀態:如果該OS選擇了一個所需效能等級大於或等於保證效能,該平台可進行上捨入(round up)或下捨入(round down)。捨入方式取得結果不會少於保證效能。若該OS已選擇一所需的低於保證效能的效能等級,且一最高的效能等級不低於保證效能。若上捨入不違反最高效能等級,該平台應上捨入。否則,進行下捨入。該OS若選擇設定該最高效能等級小於保證效能,它應容忍該平台下捨入。(除了在效能因為平台或OS約束而被限制的情況之外,此趨近有利於效能。)
一些控制暫存器將被描述。該OS可為了所需的效能,寫入較佳值。該最高的效能暫存器傳送了平台可執行的絕對最高瞬間效能等級。最高效能可以設定為任何在最低效能到最高效能之間的範圍內的效能值(包含頭尾)。
此暫存器為可選擇的,但該平台應實施該最低效能與最高效能暫存器兩者或是兩者皆無。若兩者都不被實施,該平台應交付該所需的效能。
該最低效能暫存器傳送了該平台可能運行的絕 對最低瞬間效能等級。最低效能可能被設定為任何在最低效能到保證效能閥值(包含頭尾)之間的範圍內的效能值。該最低效能值不應被設定為一高於該最高效能等級的值。
該最低效能暫存器也是可選擇的,但該平台應實施最低效能與最高效能暫存器兩者,或是兩者皆無。若兩者都不被實施,該平台應交付所需的效能。
所需的效能暫存器傳送了該OS所需的來自該平台的該效能等級。所需的效能可被設定為任何在最低與最高效能等級(包含頭尾)之間的範圍的效能值。所需的效能可採用兩個意義之一,視是否該所需的效能高於或低於該保證效能等級而定。
在保證的效能等級之下,所需的效能代表該平台應提供的該平均效能等級,經受到效能削減容限(Performance Reduction Tolerance)。在保證的效能等級之上,該平台應提供該保證的效能等級。若目前運作中的條件允許的話,該平台應試圖提供高達到該所需的效能等級,但它並非被請求為這麼做。
該時間窗暫存器允許OSPM指示一時間視窗,該時間視窗涵蓋該平台應提供的所需的效能等級(經受到效能削減容限)。該OSPM在選擇一新的所需的效能時設定該時間窗。該時間窗代表該平台的交付效能之OSPM的評估的最低時間期間。若該OSPM評估交付的效能在小於該特定時間窗的一區間(interval),它應不具有藉該平台交付的該效能的期望。另一方面,針對等於或大於該時間窗的一評估 區間來說,該平台應在該特定容限範圍內交付該OS所需的效能。
若該OS指明一零的時間窗,或若該平台不支援該時間窗暫存器,該平台應在與該估算間隔區間無關之效能削減容限範圍內交付效能。
該效能削減容限暫存器被該OS用來傳送該低於所需的效能之可容許的偏差(deviation)。它被該OS表達為一在該效能比例的絕對值。該效能容限應少於或等於該所需的效能。若該平台支援時間窗暫存器,該效能削減容限傳送出在該時間窗期間通常能實施的最低效能值。另一方面,若該時間窗暫存器不被實施,該平台應根據對該瞬間的所需的效能容許量,假設該效能削減容限。
該平台通過效能計數器以及一效能限制指示器提供效能回饋,其可在回饋暫存器中被實作,例如表2所示。
為了判斷實際上被超時(over time)交付的效能等級,該OS可從該額定計數暫存器及該交付的計數暫存器讀取一組效能計數器。藉由取得該額定及交付的效能計數器兩者的初始及終止快照(snapshot),以及計算以下式子,該OS在一給定的時間區間內計算該交付的效能:
該交付的效能應落在最低與最高效能之間(包括頭尾)的範圍。該OS可使用該交付的效能計數作為一回饋機制去改善該所需的效能狀態。
管理如何及何時由該平台交付的該效能可能偏離OS所需的效能是有限制的。根據OSPM設定一所需的效能:在那之後任何時間,該後續的在實現的效能限制可能適用。若該平台可在相同或較低的能量下實現該較高的效能,且若它曾實現該所需的效能。若該平台具有離散的效能狀態且需要根據在該OS控制區段指定的演算法下捨位效能到最近的支援效能等級,該實現的效能可高於或低於OSPM所需的效能。若該平台的效率最佳化導致該實現的效能低於所需的效能,該實現的效能可低於該OS所需的效能。然而,該實現的效能應普遍地不低於該OSPM所指定。
該效能削減容限在最佳化效能實現時,提供一有關它多具侵略性回彈(bond)至該平台。該平台不應履行(perform)任何可能引起實現的效能低於該OS的最佳化。
該額定計數器暫存器在處理器活躍(active)的時候以一固定速率隨時計數。它不受到所需效能、處理器節流(throttling)等的改變的影響。
該交付效能計數器在處理器活躍(active)的時候隨時增加,增加的速率正比於目前效能等級,並且有將所需的效能考慮進去。當該處理器在它的額定效能等級運作,該交付的效能計數以該額定效能計數器的同一效率增加。
該計數環繞時間(Counter Wraparound Time)提供一用來讓平台對該等額定/實施的效能計數器具體指明一轉一圈之時間的裝置。若OSPM要求該回饋計數器的時間超 過這段期間,則該計數器可能會在OSPM無法偵測計數器已經繞回來(they have done so)的情況下繞回來(wrap)。若不實作(或零),該等效能計數器被假定為在該平台的使用期不繞回(wrap)。
有了該保證的效能暫存器,該平台對其可實施的 效能指定可預料的限制。在因為一無法預料的事件,而使平台必須壓制(constrain)該被實現的效能到少於所需的效能(或,少於該保證的效能,若所需的效能大於保證的效能)的事件中,該平台設定該效能限制的指示為一非零值。這對該OS指示一無法預料的事件已限制處理器效能,且該實施的效能可低於所需的效能。該效能受限的指定器是不變動的,且將維持非零,直到該OS藉由寫入0到暫存器而清除它。
該效能受限的暫存器應只被用來記述(report) 短措辭(term),無法預料的事件(例如被宣稱的PROCHOT)。若該平台可容許被定義為常措辭者,限制處理器效能的可預料的事件,它應使用該保證的效能限制去通知OS這個限制。對保證的效能的改變不應比每秒一次頻繁。若該平台不能保證一給定的效能等級一段持續時間(大於1秒),它應保證一較低的效能等級,且伺機地進入如OS要求的較高的且由目前運作條件所允許的效能等級。
該致能暫存器是一可選擇的讀/寫暫存器,長度 為一或多位元,可能在PCC或系統輸入/輸出空間一在MSR。若平台支援,該OS寫入1到其暫存器以在該給定的 處理器致能CPPC。若未被實作,該OS假設該平台已使CPPC成為可能。
OS特性描述
為了使一OS使用一無單位的、效能比例的介面(給定該摘要的、相對的比例本質),該OS應在大部分實施例中,初始地描述由該介面實現的工作負載效能。這可藉由各種方式執行。例如,它可當自主的平台能源管理特徵(例如能源效率最佳化特徵單方面地在最低與最高限制間改變能源參數以節能)失能時,藉由選擇效能範圍值而被執行。例如,在一ACPI實作關閉它們,不是藉由設定最低、最高及所需的輸入到相同值,就是藉由設定該時間窗為零而完成。當然,有非ACPI的實作,其它的用以約束該平台趨近可被用來定義每一(或一橫斷面)效能值對OS的意義。
在一些實施例,該OS在執行一特性描述工作負載時,從最低到額定(包括頭尾)的效能值範圍中選擇值,且觀察該工作結果。在其它實施例中,該OS在相同範圍(從最低到額定)選擇值,且讀取統計的計數器,例如ACPI ACNT及MCNT MSRs,其傳達該邏輯處理器的合成的(resultant)頻率。
該特性描述工作負載可能是需要最低的用以達成一所需結果的服務品質的那個。藉由特性描述什麼效能值達成了該最低QoS,每當那種工作負載被啟動去確保該QoS符合時,該OS接著可設定該值作為最低值。否則該特性描述結果,例如頻率,可被該OS用在一基於損害的切換 策略中實作,該策略是作為效能狀態控制,而該效能狀態是基於該邏輯處理器的工作負載(多忙)而選擇。注意或許有幾種特徵描述工作負載,且這些可能被用來決定多樣的QoS最低值(根據工作負載種類)。
在前述說明及以下的申請專利範圍中,接下來的 措辭應被解釋(construe)為該辭”耦接(coupled)”及”連接(connected)”與它們的衍生辭可被使用。它應被理解,那些用詞並非指彼此是同義詞。而是,在特定實施例中,”連接”被用來指2或更多元件彼此直接的實體或電性接觸。”耦接”是用來指2個或更多元件共同運作或彼此交互作用,但它們可能是或可能不是直接實體或電性接觸。
該發明不限於所述實施例,但可被修飾而實行(practiced),且在所附的精神與範圍內改變。例如,它應該被體會,本發明可應用來與所有種類的半導體積體電路(IC)晶片使用。這些IC晶片的例子,包括但不限於處理器、控制器、晶片組構成要素、程式化的邏輯陣列(PLA)、記憶體晶片、網路晶片及其類似物。
也可理解的,在一些圖式,信號傳導線是以線條表現。一些可能較密集的,用以象徵(indicate)較多的構成信號路徑,有一數字符號去象徵構成的信號路徑的數量,及/或在一端或多端具有箭頭,去象徵主要的資訊流方向。然而,這還不應被理解為一限制事項。而是,這加上的細節,可能被用在連接一或多個示例的實施例,有助於容易了解一電路。任何代表的信號線,不論是否有額外的資訊, 可能實際上包含一或多個可能在多方向中傳導的信號,且可能與任何適合的信號方案類型一起被實作,例如數位或類比線路與不同對光纖及/或信號端線實作。
理應理解,例示的尺寸/模式/值/範圍可能被給定,雖然本發明並不限於此。由於製造技術(例如照相平板印刷術)隨著時間逐漸成熟,可預期到較小尺寸的裝置可被製造。而且,為了簡單的舉例說明及討論且不會使本發明難以理解,眾所皆知的能源/接地連接到IC晶片及其它構件(components)可能或可能不在圖示中顯示。更進一步,以方塊圖形式布置顯示,是為了避免使發明難以理解,且同時有鑑於對應於方塊圖之安排的實作之說明的事實,是非常地依賴於本發明實作的平台,亦即,此說明應充分在熟習技藝者的範圍內。當說明細節(例如電路)為了描述該發明示例的實施例而被提出,它應該對一熟習技藝人士來說,是明白無誤的,該發明可在沒有那些說明細節或有差異的情況下被實行。該描述因此被視為舉例說明而非限制。
110‧‧‧作業系統
111‧‧‧從屬的應用程式APIs
112‧‧‧核心
114‧‧‧OSPM系統
116‧‧‧裝置驅動程式
118‧‧‧能源管理介面驅動程式
120‧‧‧作業系統/平台能源管理介面
122‧‧‧PM暫存器
124‧‧‧BIOS介面資料結構
126‧‧‧PM表
130‧‧‧平台
132‧‧‧平台韌體
134‧‧‧BIOS

Claims (18)

  1. 一種裝置,其係包含:一處理器及具有藉該處理器執行的指令的記憶體,該等指令被執行時實施一作業系統且識別數個性能暫存器而對該作業系統指示一可達成的效能等級的比例,該等性能暫存器包括一最高效能暫存器、一額定效能暫存器,及一最低效能暫存器。
  2. 如申請專利範圍第1項的裝置,其中指示該處理器效能之最高等級的該最高效能暫存器,是在給定理想的運作條件下理論上所能達成者。
  3. 如申請專利範圍第1項的裝置,其中該額定效能暫存器指示該處理器的最高持續效能等級。
  4. 如申請專利範圍第1項的裝置,其中該最低效能暫存器指示該處理器的最低效能等級。
  5. 如申請專利範圍第1項的裝置,其中該等性能暫存器包括一保證效能暫存器,用以指定一資源描述符號,其描述一目前保證效能等級。
  6. 如申請專利範圍第1項的裝置,其中,當該等指令於執行時更定義一或多個控制暫存器,其包括將藉一作業系統寫入的一所需效能暫存器。
  7. 如申請專利範圍第6項的裝置,其中該等一或多個控制暫存器包括一最低效能暫存器,用以指示一最低瞬間效能等級。
  8. 如申請專利範圍第7項的裝置,其中該等一或多個控制暫存器包括一最高效能暫存器,用以指示一最高瞬間效能等級。
  9. 如申請專利範圍第8項的裝置,其中該等一或多個控制暫存器包括一時間間隔暫存器,用以指示一時間,針對該時間,平均交付效能應至少在所需的暫存器內達到所需的效能。
  10. 一種裝置,其係包含:一處理器,當執行具有OSPM的一作業系統時,有助於包含多個性能暫存器的一效能控制介面指示該作業系統可達成的效能等級的一比例,該等性能暫存器包括一最高效能暫存器、一額定效能暫存器,及一最低效能暫存器。
  11. 如申請專利範圍第10項的裝置,其中指示該處理器效能之最高等級的該最高效能暫存器,是在給定理想的運作條件下理論上所能達成者。
  12. 如申請專利範圍第1項的裝置,其中該額定效能暫存器指示該處理器的最高持續效能等級。
  13. 如申請專利範圍第10項的裝置,其中,該最低效能暫存器指示該處理器的最低效能等級。
  14. 如申請專利範圍第10項的裝置,其中該等性能暫存器包括一保證效能暫存器,用以指示一資源描述符號,其描述一目前保證效能等級。
  15. 如申請專利範圍第10項的裝置,其中,當該等指令於執 行時更定義了一或多個控制暫存器,其包括將藉一作業系統寫入的一所需效能暫存器。
  16. 如申請專利範圍第15項的裝置,其中該等一或多個控制暫存器包括一最低效能暫存器,用以指示一最低瞬間效能等級。
  17. 如申請專利範圍第16項的裝置,其中該等一或多個控制暫存器包括一最高效能暫存器,用以指示一最高瞬間效能等級。
  18. 如申請專利範圍第17項的裝置,其中該等一或多個控制暫存器包括一時間間隔暫存器,用以指示一時間,針對該時間,平均交付效能應至少在所需的暫存器內達到所需的效能。
TW101142382A 2011-11-22 2012-11-14 協同處理器與系統效能及電力管理技術 TWI518586B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161563030P 2011-11-22 2011-11-22
PCT/US2011/068200 WO2013077891A1 (en) 2011-11-22 2011-12-30 Collaborative processor and system performance and power management

Publications (2)

Publication Number Publication Date
TW201335841A true TW201335841A (zh) 2013-09-01
TWI518586B TWI518586B (zh) 2016-01-21

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 Before (1)

Application Number Title Priority Date Filing Date
TW101142033A TWI502505B (zh) 2011-11-22 2012-11-12 協同處理器及系統效能及電源管理

Family Applications After (1)

Application Number Title Priority Date Filing Date
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) WO2013077891A1 (zh)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013077891A1 (en) * 2011-11-22 2013-05-30 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
WO2014118940A1 (ja) * 2013-01-31 2014-08-07 三菱電機株式会社 計算機装置及び計算機装置の制御方法
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
WO2022271606A1 (en) * 2021-06-22 2022-12-29 Microsoft Technology Licensing, Llc Power budget management using quality of service (qos)
EP4359885A1 (en) 2021-06-22 2024-05-01 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
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
US6948100B1 (en) * 1999-02-24 2005-09-20 Hitachi, Ltd. Computer system and method of handling trouble of computer system
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
US20040155714A1 (en) * 2003-01-15 2004-08-12 Kazuhiko Nishikawa Oscillation circuit
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
WO2006008885A1 (ja) * 2004-07-16 2006-01-26 Brother Kogyo Kabushiki Kaisha 接続態様制御装置、接続態様制御方法及び接続態様制御用プログラム
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
WO2006117950A1 (ja) * 2005-04-27 2006-11-09 Matsushita Electric Industrial Co., Ltd. 情報処理装置における電力制御装置
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
EP2390786A4 (en) * 2009-01-26 2012-08-08 Fujitsu Ltd INFORMATION PROCESSOR WITH CONFIGURATION CHANGE FUNCTION, SYSTEM CONFIGURATION CHANGE METHOD, AND SYSTEM CONFIGURATION CHANGE PROGRAM
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
WO2013077891A1 (en) 2011-11-22 2013-05-30 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
CN104335137B (zh) * 2012-05-17 2017-10-24 英特尔公司 管理计算系统的功耗和性能

Also Published As

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

Similar Documents

Publication Publication Date Title
TWI518586B (zh) 協同處理器與系統效能及電力管理技術
US9904346B2 (en) Methods and apparatus to improve turbo performance for events handling
JP5770300B2 (ja) 処理ノードの熱制御のための方法および装置
US9235252B2 (en) Dynamic balancing of power across a plurality of processor domains according to power policy control bias
TWI416311B (zh) 處理器電力管理方法與裝置
CN104169832A (zh) 提供处理器的能源高效的超频操作
US20120216058A1 (en) System, Method and Apparatus for Energy Efficiency and Energy Conservation by Configuring Power Management Parameters During Run Time
KR20170098215A (ko) 시스템 최대 전류 보호
TWI641943B (zh) 控制電源供應單元於閒置狀態期間的功率消耗之技術
TW201541803A (zh) 可攜式電子裝置及其充電控制方法
CN117546121A (zh) 用于通过减少每周期指令数来控制多处理器核心系统中的电流供应的系统和方法
Lefurgy et al. Energy-efficient data centers and systems
TW201814430A (zh) 電子裝置以及電源管理方法
AlLee Green Microprocessor and Server Design
TWM524502U (zh) 主機系統