TWI477945B - 用以控制處理器之渦輪加速模式頻率的方法、及能夠控制其之渦輪加速模式頻率的處理器 - Google Patents
用以控制處理器之渦輪加速模式頻率的方法、及能夠控制其之渦輪加速模式頻率的處理器 Download PDFInfo
- Publication number
- TWI477945B TWI477945B TW101135915A TW101135915A TWI477945B TW I477945 B TWI477945 B TW I477945B TW 101135915 A TW101135915 A TW 101135915A TW 101135915 A TW101135915 A TW 101135915A TW I477945 B TWI477945 B TW I477945B
- Authority
- TW
- Taiwan
- Prior art keywords
- frequency
- core
- processor
- turbo acceleration
- cores
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 25
- 230000001133 acceleration Effects 0.000 claims description 108
- 238000006243 chemical reaction Methods 0.000 claims description 38
- 230000008859 change Effects 0.000 claims description 32
- 238000011156 evaluation Methods 0.000 claims description 22
- 230000007704 transition Effects 0.000 claims description 14
- 230000015556 catabolic process Effects 0.000 claims description 12
- 238000006731 degradation reaction Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 4
- 230000004044 response Effects 0.000 claims description 4
- 230000009471 action Effects 0.000 claims description 2
- 230000015654 memory Effects 0.000 description 25
- 239000003795 chemical substances by application Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 239000004065 semiconductor Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 229910003460 diamond Inorganic materials 0.000 description 3
- 239000010432 diamond Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000014616 translation Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012508 change request Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3243—Power saving in microcontroller unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Power Sources (AREA)
Description
本發明係有關於控制處理器之渦輪加速模式頻率的技術。
許多目前的處理器具有以一通用電壓及頻域操作的複數個核心。該處理器可實際消耗的尖峰電流消耗(current draw)係為每一核心上運行的負載以及啟動的核心數量之一函數。取決於啟動的核心之數量,該處理器據以運行的尖峰頻率會改變。啟動的核心之數量愈少,該處理器可據以運行的頻率愈高。使該核心以高速率啟動及關閉(或者使用不同數量的核心)的負載可使得該處理器以該速率改變頻率。
當一處理器執行一頻率轉換以適應頻率改變時,由於此類轉換會招致一閒置時間損失,能量效率以及效能會受衝擊。避免此損失之合適的機制目前尚不存在。
依據本發明之一實施例,係特地提出一種方法,其包含:在包括複數個核心之一多核心處理器的一邏輯中,於一評估間隔期間分析複數個電力狀態改變事件,以對多個N-核心渦輪加速頻率中的每一者決定一因應該等複數個電力狀態改變事件的頻率轉換之假定次數;至少部分基於該頻率轉換之假定次數,選擇該等N-核心渦輪加速頻
率其中一者作為該多核心處理器在一下一次操作間隔的一最高操作頻率,該被選擇的N-核心渦輪加速頻率小於該多核心處理器之一組態的最高操作頻率;及控制該等複數個核心在該下一次操作間隔以不高於該被選擇的N-核心渦輪加速頻率操作。
100‧‧‧方法
110-170‧‧‧步驟
200‧‧‧方法
210-260‧‧‧步驟
300‧‧‧表格
3101
‧‧‧1核心頻率
3102
‧‧‧2核心頻率
3103
‧‧‧3核心頻率
3104
‧‧‧4核心頻率
400‧‧‧處理器
410a-410n‧‧‧核心
415‧‧‧互連
420‧‧‧非核心邏輯
430‧‧‧共享快取
440‧‧‧集成記憶體控制器
450a-450n‧‧‧介面
455‧‧‧電力控制單元
457‧‧‧降級表格
459‧‧‧渦輪加速模式降級邏輯件
460‧‧‧系統記憶體
500‧‧‧處理器
510a-510n‧‧‧核心
520‧‧‧圖形引擎
530‧‧‧互連件
540a-540n‧‧‧低階快取單元
550‧‧‧系統代理元件
552‧‧‧顯示控制器
555‧‧‧電力控制單元
557‧‧‧降級表格
559‧‧‧渦輪加速模式降級邏輯件
570‧‧‧集成記憶體控制器
580a-580n‧‧‧介面
600‧‧‧多處理器系統
614‧‧‧輸入/輸出裝置
616‧‧‧第一匯流排
618‧‧‧匯流排橋樑
620‧‧‧第二匯流排
622‧‧‧鍵盤/滑鼠
624‧‧‧音訊輸入/輸出
626‧‧‧通訊裝置
628‧‧‧資料儲存單元
630‧‧‧碼
632‧‧‧記憶體
634‧‧‧記憶體
638‧‧‧高效能圖形引擎
650‧‧‧點對點互連
670‧‧‧第一處理器
672‧‧‧記憶體控制器集線器
674a‧‧‧第一處理器核心
674b‧‧‧第二處理器核心
676‧‧‧點對點介面
678‧‧‧點對點介面
680‧‧‧第二處理器
682‧‧‧記憶體控制器集線器
684a‧‧‧第一處理器核心
684b‧‧‧第二處理器核心
686‧‧‧點對點介面
688‧‧‧點對點介面
690‧‧‧晶片組
692‧‧‧點對點介面
694‧‧‧點對點介面
696‧‧‧介面
698‧‧‧點對點介面
圖1為依照本發明的一實施例之一方法的流程圖。
圖2為依照本發明的一實施例之一更新一渦輪加速降級表之一方法的流程圖。
圖3為依照本發明的一實施例之被致能核心隨時間之數量以及一渦輪加速降級表之一圖形說明。
圖4為依照本發明的一實施例之一處理器的方塊圖。
圖5為依照本發明的另一實施例之一處理器的方塊圖。
圖6為依照本發明的一個實施例之一系統的方塊圖。
實施例提供一渦輪加速降級機制,用以在造成大量核心喚醒事件並在運行時間期間使用不同數量核心之負載上使效能以及能量效率最大化。實施例可特別適合複數個核心分享一單一電壓及頻域之多核心處理器、或者包括各自在獨立域的核心之多核心處理器。此處使用的名詞”
域”是用來表示以同一電壓以及頻率點操作的硬體以及/或者邏輯之集合。如一範例,一多核心處理器可更包括例如固定函數單元、圖形引擎、等其他非核心的處理引擎。此類處理器可包括至少兩個獨立域,一個與該等核心相關(在此處以核心域稱之),一個與一圖形引擎相關(在此處以圖形域稱之)。雖然多域處理器的許多實例可被形成在一單一半導體晶粒上,其他實例可由其中不同域可存在於一單一封裝體的不同半導體晶粒上之一多晶片封裝體來實現。實施例同樣地適用於其他的處理器設計,例如包括形成於一單一半導體晶粒上且在單一域內操作的複數個核心之一多核心處理器。
根據一基於作業系統(OS)的機制,亦即進階組態與電源介面(ACPI)標準(例如,Rev.3.0b,於2006年10月10日發佈),一處理器可在不同的電力以及效能狀態或等級下操作。關於電力狀態,ACPI規定不同的電力消耗狀態,通常被稱為所謂的C1至Cn狀態。當一核心為啟動時,其在一所謂的C0狀態下運行,而當該核心為閒置時,其可被置於一核心低電力狀態,一所謂的非零C-狀態(例如,C1-C6狀態)。當一多核心處理器的所有核心都在一核心低電力狀態下時,該處理器可被置於一封裝低電力狀態,例如封裝C6低電力狀態。除了這些電力狀態之外,一處理器可進一步被組配以在複數個效能狀態中的一者下操作,亦即P0至Pn。一般而言,P1效能狀態可對應一作業系統可要求的最大保證效能。除了此P1狀態之外,作業系統可要求一更大
保證效能,亦即一P0狀態。此P0狀態可為一機會主義狀態,在此狀態下,當電力以及/或熱預算為可得時,處理器硬體可組配該處理器或者至少其部份在高於保證頻率下操作。在許多實例中,一處理器可包括複數個高於此P1頻率之所謂的筐頻率(bin frequency)。最高的此種頻率可對應於一最大渦輪加速模式頻率(P0),其為一域可操作的最高頻率。此最高渦輪加速模式頻率即是高於該P1頻率的複數個筐頻率中的最高端,且對應於一可達到的最大非保證最高效能等級。需注意的是,在此頻率下並無法保證該域是否超出了該處理器的電力或熱能規範。在許多情況下,處理器在生產中的裝置特性化可被用來設定一最高渦輪加速模式頻率,其可以各域做為基礎來設定。高至最高渦輪加速模式頻率的筐頻率可被儲存在處理器的一非依電性儲存器或其他機制內。需注意的是,不保證具有多於一域的處理器能夠同時在其等各自最高渦輪加速模式頻率下運行所有域。亦不保證在其他域均在其等各自的最高渦輪加速模式頻率下運行時,一給定域可在它的最高渦輪加速模式頻率下運行。
也就是說,平台電源以及電流遞送會限制一處理器可操作的最高渦輪加速模式頻率為一在C0狀態的核心數量之函數。在C0狀態的核心數量愈少,啟動的核心可運行的最高渦輪加速模式頻率便愈高。需注意的是,在電力可維持的最高渦輪加速模式頻率運行該等核心並非總是最佳的,因為這可能招致隨著額外核心進入及離開C0狀態之額
外的頻率轉換。由於每次的頻率轉換會使所有核心暫停一特定的閒置時間,這可能導致在核心未處理指令時消耗更多電力。然而,在低於電力可維持的最高渦輪加速模式頻率點運行核心將可能招致較少的額外頻率轉換但也會在一低於在其他狀況下可能的頻率點,因而會留下可用的效能頂部空間。
實施例決定該處理器可運行的最高頻率,同時使頻率轉換的次數最小化以提供最佳的整體效能以及能量效率。本發明實施例所實現的此平衡或者取捨因此與總是使一處理器在其能夠運行既定數量的啟動核心之最高頻率下操作的傳統方式形成對比。實施例因此提供一動態方式,其用以追蹤在負載的可組配時間間隔中所利用的核心的平均數量並控制該處理器操作於捨棄該處理器可運行的尖峰頻率以換取最小化頻率轉換次數之最佳化頻率,導致整體較高的淨效能以及較佳的能量效率。
有關本討論,如一電源控制單元(PCU)之一處理器的一電力控制器負責集合核心的喚醒或睡眠請求以及為一域指定操作電壓與頻率點。在一實施例中,該電源控制單元用以下的方式處理一核心的喚醒或睡眠事件。當一負載尋求將一核心置於睡眠狀態(例如,C6狀態)時,其例如經由對核心發布一監視器等待(MWAIT)指令而發布一低電力請求,該低電力請求導致令該電源控制單元使該核心能夠進入一給定的低電力狀態。該核心可被來自一計時器、來自其他核心或者來自一外部裝置的中斷指令喚醒離開此
低電力狀態。此等睡眠或喚醒請求被傳遞至該電源控制單元。如示例,每次一核心尋求進入C6狀態時或跳出至C0狀態時,一通知即被傳送至該電源控制單元。從該電源控制單元對不同核心的狀態的知悉,該電源控制單元計算啟動核心的數量(例如,在C0狀態的核心)並估計對於該數量的啟動核心之可能的尖峰電流消耗。
該電源控制單元接著比較此估計的尖峰電流消耗與可源自於該平台電源遞送網路的尖峰電流,並指定一操作頻率使得對於啟動核心的給定數量之估計的尖峰電流消耗低於該平台可維持的。結果,處理器對於較少的啟動核心數量可在一較高的頻率運行。通常,在一具有N個核心的系統內,會有N個頻率點限制該處理器在1至N個啟動電源狀態下的核心可操作的速度。這些相異的頻率點又稱為1核心渦輪加速頻率...N核心渦輪加速頻率,取決於啟動的核心之數量。因而,N核心至1核心渦輪加速頻率為高於一保證操作頻率的操作頻率,並可從例如對於N核心渦輪加速頻率之至少一高於P0的操作頻率之筐頻率(其可被稱為P0N頻率)延伸至例如對於1核心渦輪加速頻率的一最大融合單核心渦輪加速頻率(其可被稱為P01頻率,並可映射至ACPI P0P-狀態)。當注意的是,該用詞”N核心渦輪加速頻率”被用來描述當N個核心在一啟動狀態時的一渦輪加速頻率。N核心渦輪加速頻率可電性維持1個至N個核心啟動在C0狀態下的情況。
一般來說,實施例可使用一渦輪加速降級演算法
以限制啟動的處理器核心之數量發生改變時會被影響的頻率改變次數。為了實現此操作,該電源控制單元會被通知一電力狀態改變事件,且在每一次這樣的事件,該電源控制單元在事件後計算在一啟動狀態(例如,C0)的核心之數量。為了決定適當的頻率,實施例可維持對於一系列電力狀態改變事件所執行的頻率轉換之假定或潛在數量的一表格。該表格可包括複數個條目,當中該表格的每一條目對應至一N-核心渦輪加速頻率。此外,此等條目中的每一者可包含一計數器欄位,以儲存若該處理器在N-核心渦輪加速頻率下操作而在一評估間隔期間發生電力狀態事件時將發生之可能的頻率轉換的計數。因此,若該處理器在一給定的N-核心渦輪加速頻率下操作時,在由於啟動的處理器數量改變而發生頻率轉換的一評估間隔期間,對於每次電力狀態事件可更新該等表格條目的計數器欄位,例如遞增1。
在一評估間隔期間,此表格可被維持並針對所有電力狀態事件而被更新。在該間隔結束時,可例如藉由該電源控制單元來分析該表格可以被分析,以決定該處理器在下一個時間間隔期間操作的一適當的最高N核心渦輪加速頻率。在這時候,該表格的計數器欄位可被重設或者清除,而一新的評估間隔即可開始。
在一實施例中,為了決定將該處理器在下一個時間間隔期間操作的該適當的最高N核心渦輪加速頻率,對該等表格條目由上而下的搜尋可被執行,以尋找具有一計數
器欄位小於一臨界值(也就是一頻率轉換臨界)的一第一條目。因此,此臨界值可對應至在一操作間隔期間將可被允許的頻率轉換次數。依此方式,可降低執行一頻率轉換所招致的成本,該成本可包括激活未決操作的核心、將核心置於一睡眠狀態、以及採取行動以改變頻率。
在一實施例中,該表格可用以下方式來更新:假設在C0-狀態下(在電力狀態改變事件之後)的核心數量為3,而該處理器中的核心總數量為4,並進一步假設在電力狀態改變事件之前僅有1個核心在C0-狀態。若該處理器先前操作於1-核心渦輪加速頻率或2-核心渦輪加速頻率,該電源控制單元將必須執行一頻率轉換並將頻率降低最高至3-核心渦輪加速頻率,以支持3個在C0-狀態下的啟動的核心。因此,對於此操作範例,對於1-核心渦輪加速頻率以及2-核心渦輪加速頻率的該等表格條目便可被更新,例如遞增1。在另一實施例中,若執行一頻率轉換的成本會因已啟動在C0狀態下的核心數量而變動,對應於1-核心以及2-核心渦輪加速頻率的該等表格條目可被遞增一與轉換成本成比例的數值。相對的,對於3-核心渦輪加速頻率以及4-核心渦輪加速頻率的該等表格條目將不會被更新,因為並不需要頻率轉換以應付一有3個核心為啟動之狀態。
假設在另一情況下,若在C-狀態事件前有2個核心是啟動的而該處理器正操作於2-核心渦輪加速頻率,該電源控制單元將必須執行一頻率轉換,例如將頻率降低至3-核心渦輪加速頻率,以支持3個在C0-狀態下的核心。再
一次,對於1-核心渦輪加速頻率以及2-核心渦輪加速頻率的該等表格條目均可被更新。反而若在C-狀態事件前有3個核心是啟動的,即不需要頻率轉換來應付C-狀態事件,因此如上述的更新便會發生。最後,若在C-狀態事件前有4個核心是啟動的,該平台可支持3個在C0-狀態下的核心,這將代表該處理器是在一低於其可操作的最高頻率的頻率下操作。但是該表格的更新也將會與上述相同。
因此,該表格的該等條目本質上作為一在C-狀態事件前處理器在每一個N-核心渦輪加速頻率下操作的函數,來計算該電源控制單元為了支持C-狀態事件所必須執行的頻率轉換的一假定或潛在次數。在一實施例中,可組配該表格,使得該等條目的計數器值從1-核心渦輪加速頻率(最高渦輪加速頻率)至N-核心渦輪加速頻率(最低渦輪加速頻率)呈一遞減順序。當然,在其他實施例中不同的慣例以及計數機制是可能的,以至於計數以及排序可能不同。
因此,在每一次C-狀態事件時,該電源控制單元基於在C-狀態事件後在C0狀態下的核心數量來更新該表格。為了操作於最高能量效率以及效能效率點,該處理器可被控制以在最高可能頻率下操作並在同時最小化頻率轉換的次數。
為了實現此處理器操作頻率的控制,該電源控制單元可被以特定參數組配。也就是說,可定義一時間窗口對應於該時間期間,該電源控制單元在該期間監控該表格並決定該最大頻率以在隨後的時間窗口限制該處理器。在
一第一時間窗口結束時的該等表格數值可被用以決定對於立即接續該第一時間窗口之後的一第二時間窗口下該處理器之最大操作頻率。依次地,一第二參數(也就是一頻率轉換臨界)可被用以定義在特定的時間窗口中頻率轉換的期望最大次數。雖然本發明的範圍並非限制在這方面,當注意的是時間窗口以及頻率轉換臨界均為可調整的參數,並可以每一處理器為基礎而基於該處理器對準的負載及該處理器中核心的數量來設定。在一些實施例中,這些參數可被儲存於與該電源控制單元相關聯的一非依電性記憶體中。
一旦評估時間窗口期滿,該電源控制單元存取該渦輪模式降級表格並執行例如一由上而下的搜尋來決定該處理器在下一個評估時間窗口期間可操作的最高渦輪模式頻率,其中頻率轉換的估計數量小於特定的頻率轉換臨界。該電源控制單元將此渦輪模式頻率套用為下一個評估時間窗口中將操作的最高頻率。於是,於下一個評估時間窗口期間從作業系統或者其他排程機制所傳入之對於渦輪模式的請求被限定在認定的渦輪模式頻率。此時,該表格被重設,且上述流程在每個評估時間窗口均可被重複。
現在參照圖1,所示為依照本發明一實施例的一方法之一流程圖。如圖1所示,方法100可被例如一電源控制單元的一邏輯執行。此邏輯可被組配來接收並處理從該處理器的不同核心傳來的電源狀態改變請求。除此之外,此邏輯更可制衡該請求的資訊以及在執行該請求後在一啟
動電源狀態下的核心的數量,以決定對於每一N-核心渦輪加速頻率的一假定頻率轉換是否會發生。如將可見的,此決定可被用來更新一渦輪模式降級表格。
此方法100可藉由接收一輸入的電源狀態改變事件(方塊110)開始。舉例來說,因應一中斷或其他原因,在一低電源狀態的一核心可請求被回復至一啟動電源狀態,或者在一啟動電源狀態的一核心可請求被置於一低電源狀態。因應接收到該請求,該邏輯可發動欲被執行的作業使得給定核心的電源狀態改變。
此外如圖1可見,在方塊120亦即一渦輪模式降級表格的一表格可被更新。更精確的,可基於在電源狀態改變事件後被致能的處理器核心之數量以及頻率轉換之假定次數而更新此表格的計數器值。也就是說,如上所述對於與N-核心渦輪加速頻率中的一者相關聯的每一條目,該邏輯可決定若該處理器在該核心渦輪加速頻率下操作時,一頻率轉換是否需要被執行以適應更新後的啟動核心之數量。若一頻率轉換會需要時,對每一條目所做的更新可為將該條目的一計數器欄位的值遞增1,否則不更新該條目。需注意的是,若以接納較多數量的啟動核的降低頻率之方式的頻率轉換發生時,才會發生遞增。若反之,則在電源狀態改變事件後較少數量的核心被致能,對該表格的更新不會發生,因為不需要執行頻率轉換以維持在電力以及/或熱能規範之內。
仍然參照圖1,接著可決定一間隔是否完結(方塊
130)。此對應於一評估間隔的間隔可在大約10到50毫秒之間的等級。如果該間隔尚未完結,則控制傳回先前討論的方塊110。
否則,控制傳至方塊140,其中對於該處理器的最高操作頻率可從該表格中獲得。更精確地,用於下一間隔的該處理器的最高操作頻率可被設定為具有小於一臨界值的一計數器值的一關聯條目之最高N-核心渦輪加速頻率。如一示例,假設一臨界值50,代表該處理器被組配在一操作間隔期間執行不多於50次的頻率轉換。於是,該表格中具有小於50的一計數器欄位值的一條目即可被選擇。存在複數個此種條目時,與該最高N-核心渦輪加速頻率相關聯的條目可被選擇。接下來,控制傳至方塊150,其中此最高操作頻率可被儲存至一組配暫存器中。當注意的是,可位在該電源控制單元中的此組配暫存器因而作用為該處理器的例如混合P0頻率之一組配最高頻率的一替換值。在不同實施例中,需注意所有的N-核心渦輪加速頻率可例如基於該處理器的示性測試而被混合在該處理器中。
這些配合圖1討論的操作因而在每一評估間隔期間被執行,以得到並設定對於下一操作間隔的一最高操作頻率。在不同實施例中,該評估間隔以及該操作間隔的長度可為共同延伸的。
更如圖1所示,基於此最高操作頻率,該電源控制單元可因此據以控制該處理器在下一操作間隔期間的操作頻率。精確地,在此下一操作間隔期間,在菱形160可決
定該電源控制單元是否已經接收到對於該處理器的至少一核心的渦輪加速模式請求。若是,控制傳至方塊170,其中該電源控制單元可設定此核心頻率(假設獨立的核心域)為該最高操作頻率,該最高操作頻率如上討論可低於該處理器的一混合最高操作頻率。因此,雖然一負載並未執行在該混合最高操作頻率,由於與較多次數的頻率轉換相關聯的負荷可被避免,仍可增進效能而可能增進負載效能。雖然在圖1的實施例中是以此特定實作例說明,當理解的是本發明的範圍並不限定在這方面。
現在參照圖2,所示為依照本發明一實施例之更新一渦輪加速降級表格及決定一最高操作頻率的方法的進一步細節之流程圖。同樣可被該電源控制單元邏輯所執行的方法200藉由決定一電源狀態改變事件(菱形210)是否被接收而開始。若是,控制傳至方塊220,其中在該事件後的啟動核心之數量可被計算。接著控制傳至方塊230,其中對於與不同的N-核心渦輪加速頻率相關聯的條目,以一頻率轉換的次數估計可更新該渦輪加速降級表格。此種更新可與前面討論的相同。
從菱形210若無電源狀態改變事件被接收以及從方塊230,控制傳至方塊240,其中可決定自用以決定適當頻率的最後一次表格搜尋後經過的時間是否超越例如對應於評估間隔的一時間窗口。若是,控制傳至方塊250,其中該表格可被搜尋以決定與該最高N-核心渦輪加速頻率相關聯且具有小於一頻率轉換臨界值的一計數器值的該條目。
因此,於該表格中存在小於此臨界值之計數器值的複數個條目的情況,與該最高N-核心渦輪加速頻率相關聯的該條目可被選擇。當注意在不同的實作例下,與該N-核心渦輪加速頻率相關聯的表格條目可有一為0的值,其中N為在處理器中所支援的核心之數量。這是因為若該N-核心渦輪加速頻率可承受在該處理器中最大的啟動核心之數量,其即可承受等於或者小於此最大值的任意多個啟動核心。控制接著傳至方塊260,其中在下一操作間隔期間,該處理器可被控制操作在一對應於此N-核心渦輪加速頻率的一最高操作頻率。雖然在圖2的實施例中是以此特定實作例說明,當理解的是本發明的範圍並不限定在這方面。
為了更進一步例示說明依照本發明一實施例對一表格的更新如何被執行,參照圖3。在圖3中,係顯示被致能的核心數量隨時間的改變之一圖形例示說明,以及一表格的條目以及其對應的更新。更精確地,在圖3的實施例中,假設存在一4-核心處理器。如同所見的,隨著時間,不同數量的核心被致能以進入一啟動(例如C0)狀態。接著,可存在一包括複數個條目3101
-3104
的表格310。每一表格條目310均與一對應的N-核心渦輪加速頻率相關聯。除此之外,每一條目可包括一計數器欄位。如同所見的,在一評估間隔開始的一初始時間T1,每一條目的計數器欄位3201
-3204
可被設定為0。接著在時間點T2-T6,若因一電源狀態改變事件,將會需要用於對應N-核心渦輪加速頻率的一頻率轉換,給定的條目可被更新。如同所見的,也就是
該最高渦輪加速頻率(其可對應於一混合P0最大渦輪加速頻率)的該1-核心渦輪加速頻率將會需要最多次數的頻率轉換。相反的,在該等可能的渦輪加速頻率中最低的該4-核心渦輪加速頻率下,該處理器將不需要任何頻率轉換。實施例可利用此資訊以選擇對於低於一臨界值的一操作間隔的一渦輪加速頻率。需了解的是,儘管在圖3的實施例中係顯示此高階且用於少數電源狀態轉換事件,本發明的範圍並不限定在這方面。
現在參照圖4,所示為依照本發明一實施例的一處理器之一方塊圖。如圖4所示,處理器400可為一多核心處理器,包括複數個核心410a
-410n
。在一實施例中,每一個這樣的核心均可在一獨立的電力域,並且可被組配在一獨立電壓以及/或頻率上操作並且於可用的頂部空間存在時進入渦輪加速模式。各個核心可經由一互連415連接至一系統代理器或者連接至包括各種元件的非核心420。如所見,該非核心420可包括可為低階快取的一共享快取430。除此之外,該非核心可包括一集成記憶體控制器440、各種介面450、以及一電力控制單元455。
在不同的實施例中,電力控制單元455可包括一渦輪加速模式降級邏輯459,其可為用於分析在一評估間隔中之可能的頻率轉換並限制一最大操作頻率以降低因應不同啟動核心數量造成之頻率轉換次數的邏輯。為此,邏輯459可耦接至一降級表格457,其可包括可依上述討論由該邏輯更新的條目。
繼續參照圖4,處理器400可例如經由一記憶體匯流排與一系統記憶體460通訊。除此之外,藉由介面450,可與例如周邊裝置、大量儲存裝置、等等之不同的晶片外元件產生連結。即使在圖4的實施例中是以此特定實作例說明,本發明的範圍並不限定在這方面。
現在參照圖5,所示為依照本發明另一實施例的一處理器之一方塊圖。如圖5之實施例所示,處理器500包括複數個域。更精確地,一核心域510可包括複數個核心5100
-510n
,一圖形域520可包括一或多個圖形引擎,並且亦可存在一系統代理器域550。在不同的實施例中,系統代理器域550可執行在一固定頻率並且在所有時間下可保持於電源開啟以處理電力控制事件以及電力管理,如此使得域510以及520能被控制以動態地進入或離開低電力狀態。域510以及520中的每一者可在不同的電壓及/或電力下操作。當注意的是,即使僅顯示3個域,當理解本發明的範圍並不限定在這方面,且在其他實施例中可存在更多的域。舉例來說,可存在複數個核心域,其等各自包括至少一核心。
一般來說,每一核心510更可包括除了各種執行單元以及額外處理元件之外的低階快取。依次,該等不同核心可互相耦接以及耦接至由複數個單元的低階快取5400
-540n
形成的共享快取記憶體。在不同實施例中,低階快取540可由該等核心和圖形引擎以及不同的媒體處理電路系統共享。如所見,一環形互連530因此將該等核心耦接
在一起,並提供該核心、圖形域520以及系統代理器電路系統550之間的互連。在一實施例中,互連530可為核心域的一部分。然而在其他實施例環形互連可在其自己的域中。
更如所見,系統代理器域550可包括顯示控制器552,其可提供一相關顯示器的控制並且提供介面至該相關顯示器。更如所見,系統代理器域550可包括一電力控制單元555,其可包括一依照本發明一實施例之渦輪加速模式降級559以基於儲存於降級表格557中的假定頻率轉換次數資訊來限制一核心的最高操作頻率。在一實施例中,此邏輯可執行上述圖1及圖2的演算方法。
更如圖5所見,處理器500更可包括可提供一介面給一系統記憶體的一集成記憶體控制器(IMC)570,系統記憶體例如為一動態隨機存取記憶體(DRAM)。可存在複數個介面5800
-580n
以使得該處理器以及其他電路系統之間能夠互連。舉例來說,在一實施例中可提供至少一直接媒體介面(DMI)介面以及一或多個特快周邊組件互連(PCI ExpressTM
(PCleTM
))介面。更進一步地,為了提供例如額外的處理器或者其他電路系統之其他代理器之間的溝通,亦可提供依照Intel®快速通道互連(QPI)協定的一或多個介面。雖然在圖5的實施例中係顯示為此高階,當理解的是本發明的範圍並不限定在這方面。
實施例可施行於許多不同系統類別中。現在參照圖6,所示為依照本發明一實施例的一系統之一方塊圖。如圖6所示,多處理器系統600為一點對點互連系統,並包括
一第一處理器670以及經由一點對點互連650耦接的一第二處理器680。如圖6所示,處理器670及680中的每一者可為多核心處理器,包括第一以及第二處理器核心(亦即,處理器核心674a及674b和處理器核心684a及684b),雖然於該等處理器中潛在地可存在多更多的核心。該等處理器中的每一者可包括一電源控制單元或其他邏輯以執行對一最高操作頻率的動態控制以減少頻率轉換事件,如此處所述。
仍然參照圖6,第一處理器670更包括一記憶體控制器集線器(MCH)672以及點對點(P-P)介面676和678。類似地,第二處理器680包括一記憶體控制器集線器682以及點對點介面686和688。如圖6所示,該等記憶體控制器集線器672及682將該等處理器耦接至各別的記憶體,也就是一記憶體632及一記憶體634,其等可為本地附接至該等各自處理器的系統記憶體(例如,動態隨機存取記憶體)的部分。第一處理器670以及第二處理器680可分別經由點對點介面652及654耦接至一晶片組690。如圖6所示,晶片組690包括點對點介面694及698。
除此之外,晶片組690包括藉由一點對點介面639將晶片組690與一高效能圖形引擎638耦接的一介面692。依次,晶片組690可經由一介面696而耦接至一第一匯流排616。如圖6所示,不同的輸入/輸出(I/O)裝置614可被耦接至第一匯流排616,以及可將第一匯流排616耦接至一第二匯流排620的一匯流排橋接器618。於一個實施例中,不同的裝置可被耦接至第二匯流排620,例如包括一鍵盤/滑鼠
622、通訊裝置626、以及例如磁碟驅動器或者可包括碼630的其他大量儲存裝置之一資料儲存單元628。更進一步地,一音訊輸入/輸出624可被耦接至第二匯流排620。實施例可併入其他類型的系統,包括例如一智慧型手機、平板式電腦、輕省筆電、超輕薄筆電、等等的行動裝置。
實施例可以碼來施行,也可被儲存於存有指令的一非過渡性儲存媒介,該等指令可被用來編程一系統以執行該等指令。該儲存媒介可包括,但不限於,包括軟碟、光碟、固態硬碟(SSDs)、光碟唯讀記憶體(CD-ROMs)、可抹寫光碟(CD-RWs)、以及磁光碟之任何類型的磁碟,例如唯讀記憶體(ROMs)、如動態隨機存取記憶體(DRAMs)的隨機存取記憶體(RAMs)、靜態隨機存取記憶體(SRAMs)、可抹拭可程式唯讀記憶體(EPROMs)、快閃記憶體、電子可抹拭可程式唯讀記憶體(EEPROMs)之半導體裝置,磁性或光學卡,或者任意其他類型適於儲存電子指令的媒介。
即使本發明已被利用關於一有限數量的實施例描述,熟習技術之人當能理解從中產生的眾多改變與修飾。附加的申請專利範圍是有意包含所有如此的改變與修飾當作落於本發明的真實精神以及範圍之中。
100‧‧‧方法
110-170‧‧‧步驟
Claims (21)
- 一種用以控制處理器之渦輪加速模式頻率的方法,其包含:在包括複數個核心之一多核心處理器的一邏輯中,於一評估間隔期間分析複數個電力狀態改變事件,以對多個N-核心渦輪加速頻率中的每一者決定因應該等複數個電力狀態改變事件的一頻率轉換之假定次數;至少部分地基於該頻率轉換之假定次數,選擇該等N-核心渦輪加速頻率其中一者作為該多核心處理器在一下一次操作間隔的一最高操作頻率,該被選擇的N-核心渦輪加速頻率小於該多核心處理器之一組態的最高操作頻率;及控制該等複數個核心在該下一次操作間隔以不高於該被選擇的N-核心渦輪加速頻率操作。
- 如申請專利範圍第1項之方法,其更包含在該下一操作間隔期間從一排程器接收針對該多核心處理器之一第一核心的一渦輪加速模式請求,以及控制該第一核心以該被選擇的N-核心渦輪加速頻率操作。
- 如申請專利範圍第1項之方法,其更包含,當該多核心處理器正以與一表的一第一條目相關的一N-核心渦輪加速頻率操作時,若因應該電力狀態改變事件而將執行一假定頻率轉換,則同時在該電力狀態改變事件時更新該表的該第一條目。
- 如申請專利範圍第3項之方法,其更包含基於該表格選 擇該最高操作頻率,以及將該最高操作頻率儲存於該多核心處理器的一組態暫存器中。
- 如申請專利範圍第4項之方法,其中選擇該最高操作頻率之步驟包含選擇該最高操作頻率為與該表中具有一小於一臨界值的一計數器值之一條目相關聯的該N-核心渦輪加速頻率。
- 如申請專利範圍第3項之方法,其更包含當一在一電力狀態改變事件之後於啟動狀態的複數個核心之數量大於N時,更新相關於該N-核心渦輪加速頻率之該表的該第一條目。
- 如申請專利範圍第6項之方法,其中更新該第一條目之步驟包括遞增該第一條目。
- 如申請專利範圍第3項之方法,其更包含當一在該電力狀態改變事件之後於放動狀態的複數個核心之數量小於或等於N+1時,不更新相關於一N+1-核心渦輪加速頻率之該表的一第二條目。
- 如申請專利範圍第3項之方法,其更包含,若該多核心處理器正以與該電力狀態改變事件之前的複數個條目中的每一者相關的該N-核心渦輪加速頻率操作,當因應該電力狀態改變事件而將執行一假定頻率轉換時,則同時因應該電力狀態改變事件而更新該表的該等複數個條目。
- 一種能夠控制其渦輪加速模式頻率的處理器,其包含:複數個核心,其用以獨立執行指令;及一電力控制器,其用以控制該處理器將操作之頻 率,該電力控制器係用以限制該處理器之一最高操作頻率小於一組態的最高操作頻率,以致使因應電力狀態改變事件的頻率轉換發生次數減少;其中該電力控制器係用以於一評估間隔期間分析複數個電力狀態改變事件,以對多個N-核心渦輪加速頻率中的每一者決定一頻率轉換之假定次數,至少部分地基於該頻率轉換之假定次數,選擇該等N-核心渦輪加速頻率其中一者作為在下一次操作間隔的一最高操作頻率,該被選擇的N-核心渦輪加速頻率小於該組態的最高操作頻率,及控制該等複數個核心在該下一次操作間隔以不高於該被選擇的N-核心渦輪加速頻率操作。
- 如申請專利範圍第10項之處理器,其中該電力控制器係用以存取包括複數個條目的一表,該等條目的每一者係與一N-核心渦輪加速頻率相關並用以儲存若該處理器係以該N-核心渦輪加速頻率操作時對應於在一評估間隔期間頻率轉換的潛在次數之一計數器值。
- 如申請專利範圍第11項之處理器,其中該電力控制器於該評估間隔期間分析複數個電力狀態改變事件,以決定該頻率轉換之潛在次數。
- 如申請專利範圍第11項之處理器,其中該電力控制器限制該最高操作頻率為與該表中具有小於一臨界值的一計數器值之一條目相關的一N-核心渦輪加速頻率。
- 如申請專利範圍第13項之處理器,其中當複數個條目具有小於該臨界值的一計數器值時,該電力控制器將選擇與該等複數個條目相關之最高的N-核心渦輪加速頻率。
- 如申請專利範圍第13項之處理器,其中該電力控制器從一排程器接收一渦輪加速模式請求,並且使該處理器以該N-核心渦輪加速頻率操作。
- 如申請專利範圍第10項之處理器,其中當該處理器的N個核心在一啟動狀態時,該處理器因應該最高操作頻率限制而在一渦輪加速模式期間以不高於一N+1-核心渦輪加速頻率操作。
- 一種包含機器可存取的儲存媒體之物件,該機器可存取的儲存媒體包括被執行時致使一多核心處理器的一控制器執行下列動作的指令:因應具有複數個核心之一多核心處理器的至少一個核心的一電力狀態改變事件,而決定該多核心處理器於該電力狀態改變事件之後將在一啟動狀態的核心的數量;以及至少部分地基於一頻率轉換是否在該多核心處理器係以一N-核心渦輪加速頻率操作時被執行,來決定是否更新與該N-核心渦輪加速頻率相關的一渦輪加速降級表之一第一條目。
- 如申請專利範圍第17項之物件,其更包含被執行時若該頻率轉換將被執行可使該控制器能夠更新該第一條目之指令。
- 如申請專利範圍第17項之物件,其更包含被執行時可使該控制器能夠於具有複數個電力狀態改變事件的評估間隔期間維持並更新該渦輪加速降級表之指令。
- 如申請專利範圍第19項之物件,其更包含被執行時可使該控制器能夠在該評估間隔之後存取該渦輪加速降級表以辨識該渦輪加速降級表中具有小於一頻率轉換臨界值的一計數器值且相關於一最大N-核心渦輪加速頻率之一條目、並且能夠限制該多核心處理器之一最高操作頻率至該最大N-核心渦輪加速頻率之指令。
- 如申請專利範圍第20項之物件,其中當該多核心處理器之X個核心在一啟動狀態時,該處理器因應該最高操作頻率而將以不大於一X+1-核心渦輪加速頻率操作,其中X小於該多核心處理器的核心的數量。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/285,414 US8943340B2 (en) | 2011-10-31 | 2011-10-31 | Controlling a turbo mode frequency of a processor |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201333662A TW201333662A (zh) | 2013-08-16 |
TWI477945B true TWI477945B (zh) | 2015-03-21 |
Family
ID=48173690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101135915A TWI477945B (zh) | 2011-10-31 | 2012-09-28 | 用以控制處理器之渦輪加速模式頻率的方法、及能夠控制其之渦輪加速模式頻率的處理器 |
Country Status (3)
Country | Link |
---|---|
US (3) | US8943340B2 (zh) |
TW (1) | TWI477945B (zh) |
WO (1) | WO2013066539A1 (zh) |
Families Citing this family (110)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8271812B2 (en) | 2010-04-07 | 2012-09-18 | Apple Inc. | Hardware automatic performance state transitions in system on processor sleep and wake events |
US8943334B2 (en) | 2010-09-23 | 2015-01-27 | Intel Corporation | Providing per core voltage and frequency control |
US8533512B2 (en) * | 2011-02-10 | 2013-09-10 | International Business Machines Corporation | Dynamic power and performance calibration of data processing systems |
US8793515B2 (en) | 2011-06-27 | 2014-07-29 | Intel Corporation | Increasing power efficiency of turbo mode operation in a processor |
US9074947B2 (en) | 2011-09-28 | 2015-07-07 | Intel Corporation | Estimating temperature of a processor core in a low power state without thermal sensor information |
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 |
US8943340B2 (en) | 2011-10-31 | 2015-01-27 | Intel Corporation | Controlling a turbo mode frequency of a processor |
US9052901B2 (en) | 2011-12-14 | 2015-06-09 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including configurable maximum processor current |
US9372524B2 (en) | 2011-12-15 | 2016-06-21 | Intel Corporation | Dynamically modifying a power/performance tradeoff based on processor utilization |
US8645361B2 (en) * | 2012-01-20 | 2014-02-04 | Microsoft Corporation | Using popular queries to decide when to federate queries |
WO2013137862A1 (en) | 2012-03-13 | 2013-09-19 | Intel Corporation | Dynamically controlling interconnect frequency in a processor |
US9436245B2 (en) | 2012-03-13 | 2016-09-06 | Intel Corporation | Dynamically computing an electrical design point (EDP) for a multicore processor |
WO2013137859A1 (en) | 2012-03-13 | 2013-09-19 | Intel Corporation | Providing energy efficient turbo operation of a processor |
WO2013147849A1 (en) | 2012-03-30 | 2013-10-03 | Intel Corporation | Dynamically measuring power consumption in a processor |
WO2013162589A1 (en) | 2012-04-27 | 2013-10-31 | Intel Corporation | Migrating tasks between asymmetric computing elements of a multi-core processor |
US9280194B2 (en) | 2012-06-25 | 2016-03-08 | Intel Corporation | Dynamic link width modulation |
US8984313B2 (en) | 2012-08-31 | 2015-03-17 | Intel Corporation | Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator |
US9075556B2 (en) | 2012-12-21 | 2015-07-07 | Intel Corporation | Controlling configurable peak performance limits of a processor |
US9158702B2 (en) | 2012-12-28 | 2015-10-13 | Intel Corporation | Apparatus and method for implementing a scratchpad memory using priority hint |
US9367114B2 (en) | 2013-03-11 | 2016-06-14 | Intel Corporation | Controlling operating voltage of a processor |
US9442559B2 (en) | 2013-03-14 | 2016-09-13 | Intel Corporation | Exploiting process variation in a multicore processor |
US9377841B2 (en) * | 2013-05-08 | 2016-06-28 | Intel Corporation | Adaptively limiting a maximum operating frequency in a multicore processor |
US9823719B2 (en) | 2013-05-31 | 2017-11-21 | Intel Corporation | Controlling power delivery to a processor via a bypass |
US9471088B2 (en) | 2013-06-25 | 2016-10-18 | Intel Corporation | Restricting clock signal delivery in a processor |
US9348401B2 (en) | 2013-06-25 | 2016-05-24 | Intel Corporation | Mapping a performance request to an operating frequency in a processor |
US9348407B2 (en) | 2013-06-27 | 2016-05-24 | Intel Corporation | Method and apparatus for atomic frequency and voltage changes |
US9377836B2 (en) | 2013-07-26 | 2016-06-28 | Intel Corporation | Restricting clock signal delivery based on activity in a processor |
US9495001B2 (en) | 2013-08-21 | 2016-11-15 | Intel Corporation | Forcing core low power states in a processor |
US10386900B2 (en) | 2013-09-24 | 2019-08-20 | Intel Corporation | Thread aware power management |
US9594560B2 (en) | 2013-09-27 | 2017-03-14 | Intel Corporation | Estimating scalability value for a specific domain of a multicore processor based on active state residency of the domain, stall duration of the domain, memory bandwidth of the domain, and a plurality of coefficients based on a workload to execute on the domain |
US9405345B2 (en) | 2013-09-27 | 2016-08-02 | Intel Corporation | Constraining processor operation based on power envelope information |
US10146282B2 (en) * | 2013-10-31 | 2018-12-04 | Advanced Micro Devices, Inc. | System and method for monitoring and controlling a performance state change |
US9494998B2 (en) | 2013-12-17 | 2016-11-15 | Intel Corporation | Rescheduling workloads to enforce and maintain a duty cycle |
US9323304B2 (en) * | 2013-12-18 | 2016-04-26 | NXGN Data, Inc. | Dynamic self-correcting power management for solid state drive |
US9459689B2 (en) | 2013-12-23 | 2016-10-04 | Intel Corporation | Dyanamically adapting a voltage of a clock generation circuit |
US9323525B2 (en) | 2014-02-26 | 2016-04-26 | Intel Corporation | Monitoring vector lane duty cycle for dynamic optimization |
US10108454B2 (en) | 2014-03-21 | 2018-10-23 | Intel Corporation | Managing dynamic capacitance using code scheduling |
US9665153B2 (en) | 2014-03-21 | 2017-05-30 | Intel Corporation | Selecting a low power state based on cache flush latency determination |
US10417149B2 (en) | 2014-06-06 | 2019-09-17 | Intel Corporation | Self-aligning a processor duty cycle with interrupts |
US9760158B2 (en) | 2014-06-06 | 2017-09-12 | Intel Corporation | Forcing a processor into a low power state |
US9501299B2 (en) * | 2014-06-16 | 2016-11-22 | Intel Corporation | Minimizing performance loss on workloads that exhibit frequent core wake-up activity |
US9513689B2 (en) | 2014-06-30 | 2016-12-06 | Intel Corporation | Controlling processor performance scaling based on context |
US9606602B2 (en) | 2014-06-30 | 2017-03-28 | Intel Corporation | Method and apparatus to prevent voltage droop in a computer |
KR102169692B1 (ko) * | 2014-07-08 | 2020-10-26 | 삼성전자주식회사 | 멀티-코어 프로세서를 포함하는 시스템 온 칩 및 그것의 동적 전력 관리 방법 |
US9575537B2 (en) | 2014-07-25 | 2017-02-21 | Intel Corporation | Adaptive algorithm for thermal throttling of multi-core processors with non-homogeneous performance states |
US9760136B2 (en) | 2014-08-15 | 2017-09-12 | Intel Corporation | Controlling temperature of a system memory |
US9671853B2 (en) | 2014-09-12 | 2017-06-06 | Intel Corporation | Processor operating by selecting smaller of requested frequency and an energy performance gain (EPG) frequency |
US10339023B2 (en) | 2014-09-25 | 2019-07-02 | Intel Corporation | Cache-aware adaptive thread scheduling and migration |
US9977477B2 (en) | 2014-09-26 | 2018-05-22 | Intel Corporation | Adapting operating parameters of an input/output (IO) interface circuit of a processor |
US9684360B2 (en) | 2014-10-30 | 2017-06-20 | Intel Corporation | Dynamically controlling power management of an on-die memory of a processor |
US9703358B2 (en) | 2014-11-24 | 2017-07-11 | Intel Corporation | Controlling turbo mode frequency operation in a processor |
US20160147280A1 (en) | 2014-11-26 | 2016-05-26 | Tessil Thomas | Controlling average power limits of a processor |
US10048744B2 (en) | 2014-11-26 | 2018-08-14 | Intel Corporation | Apparatus and method for thermal management in a multi-chip package |
US9710043B2 (en) | 2014-11-26 | 2017-07-18 | Intel Corporation | Controlling a guaranteed frequency of a processor |
US10877530B2 (en) | 2014-12-23 | 2020-12-29 | Intel Corporation | Apparatus and method to provide a thermal parameter report for a multi-chip package |
US20160224098A1 (en) | 2015-01-30 | 2016-08-04 | Alexander Gendler | Communicating via a mailbox interface of a processor |
US9639134B2 (en) | 2015-02-05 | 2017-05-02 | Intel Corporation | Method and apparatus to provide telemetry data to a power controller of a processor |
US9910481B2 (en) | 2015-02-13 | 2018-03-06 | Intel Corporation | Performing power management in a multicore processor |
US10234930B2 (en) | 2015-02-13 | 2019-03-19 | Intel Corporation | Performing power management in a multicore processor |
US9874922B2 (en) | 2015-02-17 | 2018-01-23 | Intel Corporation | Performing dynamic power control of platform devices |
US9842082B2 (en) | 2015-02-27 | 2017-12-12 | Intel Corporation | Dynamically updating logical identifiers of cores of a processor |
US9710054B2 (en) | 2015-02-28 | 2017-07-18 | Intel Corporation | Programmable power management agent |
US9760160B2 (en) * | 2015-05-27 | 2017-09-12 | Intel Corporation | Controlling performance states of processing engines of a processor |
US9710041B2 (en) | 2015-07-29 | 2017-07-18 | Intel Corporation | Masking a power state of a core of a processor |
US9568982B1 (en) | 2015-07-31 | 2017-02-14 | International Business Machines Corporation | Management of core power state transition in a microprocessor |
US9952651B2 (en) | 2015-07-31 | 2018-04-24 | International Business Machines Corporation | Deterministic current based frequency optimization of processor chip |
US9990024B2 (en) * | 2015-09-09 | 2018-06-05 | Qualcomm Incorporated | Circuits and methods providing voltage adjustment as processor cores become active based on an observed number of ring oscillator clock ticks |
US10001822B2 (en) | 2015-09-22 | 2018-06-19 | Intel Corporation | Integrating a power arbiter in a processor |
US9983644B2 (en) * | 2015-11-10 | 2018-05-29 | Intel Corporation | Dynamically updating at least one power management operational parameter pertaining to a turbo mode of a processor for increased performance |
KR102599653B1 (ko) * | 2015-11-20 | 2023-11-08 | 삼성전자주식회사 | 냉각 알고리즘을 수행하는 집적 회로와 이를 포함하는 모바일 장치 |
US9910470B2 (en) | 2015-12-16 | 2018-03-06 | Intel Corporation | Controlling telemetry data communication in a processor |
US20170185128A1 (en) * | 2015-12-24 | 2017-06-29 | Intel Corporation | Method and apparatus to control number of cores to transition operational states |
US10146286B2 (en) | 2016-01-14 | 2018-12-04 | Intel Corporation | Dynamically updating a power management policy of a processor |
US10073718B2 (en) | 2016-01-15 | 2018-09-11 | Intel Corporation | Systems, methods and devices for determining work placement on processor cores |
US10579125B2 (en) | 2016-02-27 | 2020-03-03 | Intel Corporation | Processors, methods, and systems to adjust maximum clock frequencies based on instruction type |
US10296067B2 (en) * | 2016-04-08 | 2019-05-21 | Qualcomm Incorporated | Enhanced dynamic clock and voltage scaling (DCVS) scheme |
US10289188B2 (en) | 2016-06-21 | 2019-05-14 | Intel Corporation | Processor having concurrent core and fabric exit from a low power state |
US10324519B2 (en) | 2016-06-23 | 2019-06-18 | Intel Corporation | Controlling forced idle state operation in a processor |
US10281975B2 (en) | 2016-06-23 | 2019-05-07 | Intel Corporation | Processor having accelerated user responsiveness in constrained environment |
US10379596B2 (en) | 2016-08-03 | 2019-08-13 | Intel Corporation | Providing an interface for demotion control information in a processor |
US10234920B2 (en) | 2016-08-31 | 2019-03-19 | Intel Corporation | Controlling current consumption of a processor based at least in part on platform capacitance |
US10379904B2 (en) | 2016-08-31 | 2019-08-13 | Intel Corporation | Controlling a performance state of a processor using a combination of package and thread hint information |
US10423206B2 (en) | 2016-08-31 | 2019-09-24 | Intel Corporation | Processor to pre-empt voltage ramps for exit latency reductions |
US10168758B2 (en) | 2016-09-29 | 2019-01-01 | Intel Corporation | Techniques to enable communication between a processor and voltage regulator |
CN108334405A (zh) * | 2017-01-20 | 2018-07-27 | 阿里巴巴集团控股有限公司 | 频率异构cpu,频率异构实现方法、装置及任务调度方法 |
US11182315B2 (en) | 2017-02-10 | 2021-11-23 | Intel Corporation | Apparatuses, methods, and systems for hardware control of processor performance levels |
US10429919B2 (en) | 2017-06-28 | 2019-10-01 | Intel Corporation | System, apparatus and method for loose lock-step redundancy power management |
US11593544B2 (en) | 2017-08-23 | 2023-02-28 | Intel Corporation | System, apparatus and method for adaptive operating voltage in a field programmable gate array (FPGA) |
US10620266B2 (en) | 2017-11-29 | 2020-04-14 | Intel Corporation | System, apparatus and method for in-field self testing in a diagnostic sleep state |
US10725955B2 (en) * | 2017-12-08 | 2020-07-28 | Arm Limited | Power control of inter-domain transaction bridge |
US10620682B2 (en) | 2017-12-21 | 2020-04-14 | Intel Corporation | System, apparatus and method for processor-external override of hardware performance state control of a processor |
US10606338B2 (en) | 2017-12-29 | 2020-03-31 | Intel Corporation | Energy-aware power sharing control |
US10620969B2 (en) | 2018-03-27 | 2020-04-14 | Intel Corporation | System, apparatus and method for providing hardware feedback information in a processor |
US10739844B2 (en) | 2018-05-02 | 2020-08-11 | Intel Corporation | System, apparatus and method for optimized throttling of a processor |
US10955899B2 (en) | 2018-06-20 | 2021-03-23 | Intel Corporation | System, apparatus and method for responsive autonomous hardware performance state control of a processor |
CN112074793B (zh) | 2018-06-21 | 2024-10-29 | 惠普发展公司,有限责任合伙企业 | 增加cpu时钟速度以改善系统性能 |
US10976801B2 (en) | 2018-09-20 | 2021-04-13 | Intel Corporation | System, apparatus and method for power budget distribution for a plurality of virtual machines to execute on a processor |
US10860083B2 (en) | 2018-09-26 | 2020-12-08 | Intel Corporation | System, apparatus and method for collective power control of multiple intellectual property agents and a shared power rail |
US20190171263A1 (en) * | 2018-10-22 | 2019-06-06 | Intel Corporation | Processor computing power and power for thermal energy management solutions of a computing platform |
US11656676B2 (en) | 2018-12-12 | 2023-05-23 | Intel Corporation | System, apparatus and method for dynamic thermal distribution of a system on chip |
US11216276B2 (en) * | 2018-12-27 | 2022-01-04 | Intel Corporation | Controlling power state demotion in a processor |
US11256657B2 (en) | 2019-03-26 | 2022-02-22 | Intel Corporation | System, apparatus and method for adaptive interconnect routing |
US11442529B2 (en) | 2019-05-15 | 2022-09-13 | Intel Corporation | System, apparatus and method for dynamically controlling current consumption of processing circuits of a processor |
US11157329B2 (en) | 2019-07-26 | 2021-10-26 | Intel Corporation | Technology for managing per-core performance states |
US11698812B2 (en) | 2019-08-29 | 2023-07-11 | Intel Corporation | System, apparatus and method for providing hardware state feedback to an operating system in a heterogeneous processor |
US11366506B2 (en) | 2019-11-22 | 2022-06-21 | Intel Corporation | System, apparatus and method for globally aware reactive local power control in a processor |
US11132201B2 (en) | 2019-12-23 | 2021-09-28 | Intel Corporation | System, apparatus and method for dynamic pipeline stage control of data path dominant circuitry of an integrated circuit |
US11556342B1 (en) * | 2020-09-24 | 2023-01-17 | Amazon Technologies, Inc. | Configurable delay insertion in compiled instructions |
US12189415B2 (en) | 2021-09-08 | 2025-01-07 | International Business Machines Corporation | Providing deterministic frequency and voltage enhancements for a processor |
US11921564B2 (en) | 2022-02-28 | 2024-03-05 | Intel Corporation | Saving and restoring configuration and status information with reduced latency |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050046400A1 (en) * | 2003-05-21 | 2005-03-03 | Efraim Rotem | Controlling operation of a voltage supply according to the activity of a multi-core integrated circuit component or of multiple IC components |
US20110093733A1 (en) * | 2009-10-20 | 2011-04-21 | Ezekiel John Joseph Kruglick | Power Channel Monitor For A Multicore Processor |
Family Cites Families (121)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5163153A (en) | 1989-06-12 | 1992-11-10 | Grid Systems Corporation | Low-power, standby mode computer |
US6158012A (en) | 1989-10-30 | 2000-12-05 | Texas Instruments Incorporated | Real-time power conservation and thermal management for computers |
US5287292A (en) | 1992-10-16 | 1994-02-15 | Picopower Technology, Inc. | Heat regulator for integrated circuits |
US5522087A (en) | 1994-03-22 | 1996-05-28 | Verifone Inc. | System for selectively operating in different modes depending upon receiving signal from a host computer within a time window upon power up |
US5590341A (en) | 1994-09-30 | 1996-12-31 | Intel Corporation | Method and apparatus for reducing power consumption in a computer system using ready delay |
US5621250A (en) | 1995-07-31 | 1997-04-15 | Ford Motor Company | Wake-up interface and method for awakening an automotive electronics module |
US5931950A (en) | 1997-06-17 | 1999-08-03 | Pc-Tel, Inc. | Wake-up-on-ring power conservation for host signal processing communication system |
US6823516B1 (en) | 1999-08-10 | 2004-11-23 | Intel Corporation | System and method for dynamically adjusting to CPU performance changes |
US7010708B2 (en) | 2002-05-15 | 2006-03-07 | Broadcom Corporation | Method and apparatus for adaptive CPU power management |
US7539885B2 (en) | 2000-01-13 | 2009-05-26 | Broadcom Corporation | Method and apparatus for adaptive CPU power management |
JP2001318742A (ja) | 2000-05-08 | 2001-11-16 | Mitsubishi Electric Corp | コンピュータシステムおよびコンピュータ読み取り可能な記録媒体 |
KR100361340B1 (ko) | 2000-05-15 | 2002-12-05 | 엘지전자 주식회사 | 씨피유 클럭 제어 방법 |
US6792392B1 (en) | 2000-06-30 | 2004-09-14 | Intel Corporation | Method and apparatus for configuring and collecting performance counter data |
US6748546B1 (en) | 2000-09-26 | 2004-06-08 | Sun Microsystems, Inc. | Method and apparatus for reducing power consumption |
US7000130B2 (en) | 2000-12-26 | 2006-02-14 | Intel Corporation | Method and apparatus for thermal throttling of clocks using localized measures of activity |
US6829713B2 (en) | 2000-12-30 | 2004-12-07 | Intel Corporation | CPU power management based on utilization with lowest performance mode at the mid-utilization range |
US7058824B2 (en) | 2001-06-15 | 2006-06-06 | Microsoft Corporation | Method and system for using idle threads to adaptively throttle a computer |
US20030061383A1 (en) | 2001-09-25 | 2003-03-27 | Zilka Anthony M. | Predicting processor inactivity for a controlled transition of power states |
US7111179B1 (en) | 2001-10-11 | 2006-09-19 | In-Hand Electronics, Inc. | Method and apparatus for optimizing performance and battery life of electronic devices based on system and application parameters |
US6996728B2 (en) | 2002-04-26 | 2006-02-07 | Hewlett-Packard Development Company, L.P. | Managing power consumption based on utilization statistics |
US7076671B2 (en) | 2002-08-12 | 2006-07-11 | Hewlett-Packard Development Company, L.P. | Managing an operating frequency of processors in a multi-processor computer system |
US6908227B2 (en) | 2002-08-23 | 2005-06-21 | Intel Corporation | Apparatus for thermal management of multiple core microprocessors |
US7051227B2 (en) | 2002-09-30 | 2006-05-23 | Intel Corporation | Method and apparatus for reducing clock frequency during low workload periods |
US6898689B2 (en) | 2002-11-15 | 2005-05-24 | Silicon Labs Cp, Inc. | Paging scheme for a microcontroller for extending available register space |
US7043649B2 (en) | 2002-11-20 | 2006-05-09 | Portalplayer, Inc. | System clock power management for chips with multiple processing modules |
US6971033B2 (en) | 2003-01-10 | 2005-11-29 | Broadcom Corporation | Method and apparatus for improving bus master performance |
KR20050115227A (ko) | 2003-01-23 | 2005-12-07 | 유니버시티 오브 로체스터 | 다중 클록 도메인 마이크로프로세서 |
JP4061492B2 (ja) | 2003-02-10 | 2008-03-19 | ソニー株式会社 | 情報処理装置および消費電力制御方法 |
US7093147B2 (en) | 2003-04-25 | 2006-08-15 | Hewlett-Packard Development Company, L.P. | Dynamically selecting processor cores for overall power efficiency |
US7272732B2 (en) | 2003-06-30 | 2007-09-18 | Hewlett-Packard Development Company, L.P. | Controlling power consumption of at least one computer system |
TW200502847A (en) | 2003-07-08 | 2005-01-16 | Benq Corp | Control device and method for reducing number of interrupts in a processor |
US7146514B2 (en) | 2003-07-23 | 2006-12-05 | Intel Corporation | Determining target operating frequencies for a multiprocessor system |
US7272730B1 (en) | 2003-07-31 | 2007-09-18 | Hewlett-Packard Development Company, L.P. | Application-driven method and apparatus for limiting power consumption in a processor-controlled hardware platform |
US7194643B2 (en) | 2003-09-29 | 2007-03-20 | Intel Corporation | Apparatus and method for an energy efficient clustered micro-architecture |
US7770034B2 (en) | 2003-12-16 | 2010-08-03 | Intel Corporation | Performance monitoring based dynamic voltage and frequency scaling |
JP2005284596A (ja) | 2004-03-29 | 2005-10-13 | Sony Corp | 情報処理装置および方法、並びにプログラム |
US7467059B2 (en) | 2004-06-28 | 2008-12-16 | Intel Corporation | Extended thermal management |
US7353409B2 (en) | 2004-06-29 | 2008-04-01 | International Business Machines Corporation | System and method to maintain data processing system operation in degraded system cooling condition |
US7214910B2 (en) | 2004-07-06 | 2007-05-08 | International Business Machines Corporation | On-chip power supply regulator and temperature control system |
US7966511B2 (en) | 2004-07-27 | 2011-06-21 | Intel Corporation | Power management coordination in multi-core processors |
US20070156992A1 (en) | 2005-12-30 | 2007-07-05 | Intel Corporation | Method and system for optimizing latency of dynamic memory sizing |
US7451333B2 (en) | 2004-09-03 | 2008-11-11 | Intel Corporation | Coordinating idle state transitions in multi-core processors |
US9001801B2 (en) | 2004-09-07 | 2015-04-07 | Broadcom Corporation | Method and system for low power mode management for complex Bluetooth devices |
US7941585B2 (en) | 2004-09-10 | 2011-05-10 | Cavium Networks, Inc. | Local scratchpad and data caching system |
US7596464B2 (en) | 2004-09-29 | 2009-09-29 | Intel Corporation | Determining the thermal influence of components within a system and usage of a matrix for power and thermal management |
US7426648B2 (en) | 2004-09-30 | 2008-09-16 | Intel Corporation | Global and pseudo power state management for multiple processing elements |
JP2006107127A (ja) | 2004-10-05 | 2006-04-20 | Nec Electronics Corp | 半導体集積回路装置 |
US7434073B2 (en) | 2004-11-29 | 2008-10-07 | Intel Corporation | Frequency and voltage scaling architecture |
US7502948B2 (en) | 2004-12-30 | 2009-03-10 | Intel Corporation | Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores |
US8041967B2 (en) | 2005-02-15 | 2011-10-18 | Hewlett-Packard Development Company, L.P. | System and method for controlling power to resources based on historical utilization data |
KR101108397B1 (ko) * | 2005-06-10 | 2012-01-30 | 엘지전자 주식회사 | 멀티-코어 프로세서의 전원 제어 장치 및 방법 |
US7454632B2 (en) | 2005-06-16 | 2008-11-18 | Intel Corporation | Reducing computing system power through idle synchronization |
US7430673B2 (en) | 2005-06-30 | 2008-09-30 | Intel Corporation | Power management system for computing platform |
US8301868B2 (en) | 2005-09-23 | 2012-10-30 | Intel Corporation | System to profile and optimize user software in a managed run-time environment |
US20070079294A1 (en) | 2005-09-30 | 2007-04-05 | Robert Knight | Profiling using a user-level control mechanism |
WO2007044905A2 (en) | 2005-10-11 | 2007-04-19 | Fyrestorm, Inc. | Model predictive thermal management |
JP4621113B2 (ja) | 2005-10-28 | 2011-01-26 | ルネサスエレクトロニクス株式会社 | 半導体集積回路装置 |
US20070106827A1 (en) | 2005-11-08 | 2007-05-10 | Boatright Bryan D | Centralized interrupt controller |
US7349762B2 (en) | 2005-11-10 | 2008-03-25 | Kabushiki Kaisha Toshiba | Systems and methods for thermal management |
US7263457B2 (en) | 2006-01-03 | 2007-08-28 | Advanced Micro Devices, Inc. | System and method for operating components of an integrated circuit at independent frequencies and/or voltages |
KR101229508B1 (ko) | 2006-02-28 | 2013-02-05 | 삼성전자주식회사 | 복수의 파워도메인을 포함하는 반도체 집적 회로 |
US20070245163A1 (en) | 2006-03-03 | 2007-10-18 | Yung-Hsiang Lu | Power management in computer operating systems |
US7437270B2 (en) | 2006-03-30 | 2008-10-14 | Intel Corporation | Performance state management |
US7596430B2 (en) | 2006-05-03 | 2009-09-29 | International Business Machines Corporation | Selection of processor cores for optimal thermal performance |
US7752468B2 (en) | 2006-06-06 | 2010-07-06 | Intel Corporation | Predict computing platform memory power utilization |
US7650518B2 (en) * | 2006-06-28 | 2010-01-19 | Intel Corporation | Method, apparatus, and system for increasing single core performance in a multi-core microprocessor |
US7694161B2 (en) | 2006-06-30 | 2010-04-06 | Intel Corporation | Uncore thermal management |
US7529956B2 (en) | 2006-07-17 | 2009-05-05 | Microsoft Corporation | Granular reduction in power consumption |
TWI344793B (en) | 2006-07-24 | 2011-07-01 | Ind Tech Res Inst | Power aware method and apparatus of video decoder on a multi-core platform |
US7930564B2 (en) | 2006-07-31 | 2011-04-19 | Intel Corporation | System and method for controlling processor low power states |
US8762097B2 (en) | 2006-08-04 | 2014-06-24 | Apple Inc. | Method and apparatus for a thermal control system based on virtual temperature sensor |
US7752474B2 (en) | 2006-09-22 | 2010-07-06 | Apple Inc. | L1 cache flush when processor is entering low power mode |
US7949887B2 (en) | 2006-11-01 | 2011-05-24 | Intel Corporation | Independent power control of processing cores |
US8397090B2 (en) | 2006-12-08 | 2013-03-12 | Intel Corporation | Operating integrated circuit logic blocks at independent voltages with single voltage supply |
TWI342498B (en) | 2007-01-12 | 2011-05-21 | Asustek Comp Inc | Multi-processor system and performance enhancement method thereof |
US7730340B2 (en) | 2007-02-16 | 2010-06-01 | Intel Corporation | Method and apparatus for dynamic voltage and frequency scaling |
US8510581B2 (en) | 2007-03-26 | 2013-08-13 | Freescale Semiconductor, Inc. | Anticipation of power on of a mobile device |
JP2008257578A (ja) | 2007-04-06 | 2008-10-23 | Toshiba Corp | 情報処理装置、スケジューラおよび情報処理置のスケジュール制御方法 |
US8015427B2 (en) | 2007-04-23 | 2011-09-06 | Netapp, Inc. | System and method for prioritization of clock rates in a multi-core processor |
US20080307240A1 (en) | 2007-06-08 | 2008-12-11 | Texas Instruments Incorporated | Power management electronic circuits, systems, and methods and processes of manufacture |
US7971074B2 (en) | 2007-06-28 | 2011-06-28 | Intel Corporation | Method, system, and apparatus for a core activity detector to facilitate dynamic power management in a distributed system |
US8225315B1 (en) | 2007-07-23 | 2012-07-17 | Oracle America, Inc. | Virtual core management |
US8078890B2 (en) | 2007-09-11 | 2011-12-13 | Dell Products L.L.P. | System and method for providing memory performance states in a computing system |
US20090150696A1 (en) | 2007-12-10 | 2009-06-11 | Justin Song | Transitioning a processor package to a low power state |
US8024590B2 (en) | 2007-12-10 | 2011-09-20 | Intel Corporation | Predicting future power level states for processor cores |
US7966506B2 (en) | 2007-12-12 | 2011-06-21 | Intel Corporation | Saving power in a computer system |
US8442697B2 (en) | 2007-12-18 | 2013-05-14 | Packet Digital | Method and apparatus for on-demand power management |
GB2455744B (en) | 2007-12-19 | 2012-03-14 | Advanced Risc Mach Ltd | Hardware driven processor state storage prior to entering a low power mode |
KR101459140B1 (ko) | 2007-12-26 | 2014-11-07 | 엘지전자 주식회사 | 전원관리 제어 장치 및 방법 |
US8156362B2 (en) | 2008-03-11 | 2012-04-10 | Globalfoundries Inc. | Hardware monitoring and decision making for transitioning in and out of low-power state |
US20090235108A1 (en) | 2008-03-11 | 2009-09-17 | Gold Spencer M | Automatic processor overclocking |
US20090271646A1 (en) | 2008-04-24 | 2009-10-29 | Vanish Talwar | Power Management Using Clustering In A Multicore System |
US7716006B2 (en) | 2008-04-25 | 2010-05-11 | Oracle America, Inc. | Workload scheduling in multi-core processors |
US8112647B2 (en) | 2008-08-27 | 2012-02-07 | Globalfoundries Inc. | Protocol for power state determination and demotion |
US8954977B2 (en) | 2008-12-09 | 2015-02-10 | Intel Corporation | Software-based thread remapping for power savings |
US8255722B2 (en) | 2009-03-09 | 2012-08-28 | Atmel Corporation | Microcontroller with clock generator for supplying activated clock signal to requesting module to conserve power |
US8589629B2 (en) | 2009-03-27 | 2013-11-19 | Advanced Micro Devices, Inc. | Method for way allocation and way locking in a cache |
US8074131B2 (en) | 2009-06-30 | 2011-12-06 | Intel Corporation | Generic debug external connection (GDXC) for high integration integrated circuits |
US8661274B2 (en) | 2009-07-02 | 2014-02-25 | Qualcomm Incorporated | Temperature compensating adaptive voltage scalers (AVSs), systems, and methods |
US8495629B2 (en) | 2009-09-24 | 2013-07-23 | International Business Machines Corporation | Virtual machine relocation system and associated methods |
US8700943B2 (en) | 2009-12-22 | 2014-04-15 | Intel Corporation | Controlling time stamp counter (TSC) offsets for mulitple cores and threads |
US8412971B2 (en) | 2010-05-11 | 2013-04-02 | Advanced Micro Devices, Inc. | Method and apparatus for cache control |
US8942932B2 (en) | 2010-08-31 | 2015-01-27 | Advanced Micro Devices, Inc. | Determining transistor leakage for an integrated circuit |
US8601288B2 (en) | 2010-08-31 | 2013-12-03 | Sonics, Inc. | Intelligent power controller |
US8495395B2 (en) | 2010-09-14 | 2013-07-23 | Advanced Micro Devices | Mechanism for controlling power consumption in a processing node |
US8943334B2 (en) | 2010-09-23 | 2015-01-27 | Intel Corporation | Providing per core voltage and frequency control |
US9317082B2 (en) | 2010-10-13 | 2016-04-19 | Advanced Micro Devices, Inc. | Controlling operation of temperature sensors |
US8793512B2 (en) | 2010-10-29 | 2014-07-29 | Advanced Micro Devices, Inc. | Method and apparatus for thermal control of processing nodes |
US8589556B2 (en) | 2010-11-05 | 2013-11-19 | International Business Machines Corporation | Allocation of energy budgets to individual partitions |
US8870453B2 (en) | 2010-11-09 | 2014-10-28 | Shockwatch, Inc. | System, method and computer program product for monitoring temperature |
US8949637B2 (en) | 2011-03-24 | 2015-02-03 | Intel Corporation | Obtaining power profile information with low overhead |
WO2012134431A1 (en) | 2011-03-25 | 2012-10-04 | Research In Motion Limited | Dynamic power management of cache memory in a multi-core processing system |
US8769316B2 (en) | 2011-09-06 | 2014-07-01 | Intel Corporation | Dynamically allocating a power budget over multiple domains of a processor |
US8954770B2 (en) | 2011-09-28 | 2015-02-10 | Intel Corporation | Controlling temperature of multiple domains of a multi-domain processor using a cross domain margin |
US9074947B2 (en) | 2011-09-28 | 2015-07-07 | Intel Corporation | Estimating temperature of a processor core in a low power state without thermal sensor information |
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 |
US8832478B2 (en) | 2011-10-27 | 2014-09-09 | Intel Corporation | Enabling a non-core domain to control memory bandwidth in a processor |
US8943340B2 (en) | 2011-10-31 | 2015-01-27 | Intel Corporation | Controlling a turbo mode frequency of a processor |
US9158693B2 (en) | 2011-10-31 | 2015-10-13 | Intel Corporation | Dynamically controlling cache size to maximize energy efficiency |
US8984311B2 (en) | 2011-12-30 | 2015-03-17 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including dynamic C0-state cache resizing |
US8984313B2 (en) | 2012-08-31 | 2015-03-17 | Intel Corporation | Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator |
-
2011
- 2011-10-31 US US13/285,414 patent/US8943340B2/en not_active Expired - Fee Related
-
2012
- 2012-09-28 WO PCT/US2012/057740 patent/WO2013066539A1/en active Application Filing
- 2012-09-28 TW TW101135915A patent/TWI477945B/zh not_active IP Right Cessation
-
2013
- 2013-03-01 US US13/782,539 patent/US9292068B2/en active Active
-
2014
- 2014-12-10 US US14/565,723 patent/US9618997B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050046400A1 (en) * | 2003-05-21 | 2005-03-03 | Efraim Rotem | Controlling operation of a voltage supply according to the activity of a multi-core integrated circuit component or of multiple IC components |
US20110093733A1 (en) * | 2009-10-20 | 2011-04-21 | Ezekiel John Joseph Kruglick | Power Channel Monitor For A Multicore Processor |
Also Published As
Publication number | Publication date |
---|---|
US20130111226A1 (en) | 2013-05-02 |
US20130179705A1 (en) | 2013-07-11 |
US20150095673A1 (en) | 2015-04-02 |
US9618997B2 (en) | 2017-04-11 |
US8943340B2 (en) | 2015-01-27 |
TW201333662A (zh) | 2013-08-16 |
WO2013066539A1 (en) | 2013-05-10 |
US9292068B2 (en) | 2016-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI477945B (zh) | 用以控制處理器之渦輪加速模式頻率的方法、及能夠控制其之渦輪加速模式頻率的處理器 | |
US10613876B2 (en) | Methods and apparatuses for controlling thread contention | |
US9904346B2 (en) | Methods and apparatus to improve turbo performance for events handling | |
US20190121423A1 (en) | Dynamically Controlling Cache Size To Maximize Energy Efficiency | |
US9026816B2 (en) | Method and system for determining an energy-efficient operating point of a platform | |
KR101476568B1 (ko) | 코어 마다의 전압 및 주파수 제어 제공 | |
US20120284729A1 (en) | Processor state-based thread scheduling | |
US20130262902A1 (en) | Power efficient processor architecture | |
US20090320031A1 (en) | Power state-aware thread scheduling mechanism | |
US20140176581A1 (en) | Controlling configurable peak performance limits of a processor | |
WO2014042749A1 (en) | Distributing power to heterogenous compute elements of a processor | |
TWI641943B (zh) | 控制電源供應單元於閒置狀態期間的功率消耗之技術 | |
EP2972826B1 (en) | Multi-core binary translation task processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |