TWI595353B - 用於控制處理器核心之電力模式的基於延遲電力模式單元以及相關方法及系統 - Google Patents

用於控制處理器核心之電力模式的基於延遲電力模式單元以及相關方法及系統 Download PDF

Info

Publication number
TWI595353B
TWI595353B TW104109610A TW104109610A TWI595353B TW I595353 B TWI595353 B TW I595353B TW 104109610 A TW104109610 A TW 104109610A TW 104109610 A TW104109610 A TW 104109610A TW I595353 B TWI595353 B TW I595353B
Authority
TW
Taiwan
Prior art keywords
power mode
processor core
power
delay
thread
Prior art date
Application number
TW104109610A
Other languages
English (en)
Other versions
TW201544947A (zh
Inventor
蘇瑞序 庫瑪 凡庫瑪漢堤
彼得 吉恩 薩斯嵩
桑傑 巴哈葛萬 帕堤爾
Original Assignee
高通公司
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 高通公司 filed Critical 高通公司
Publication of TW201544947A publication Critical patent/TW201544947A/zh
Application granted granted Critical
Publication of TWI595353B publication Critical patent/TWI595353B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • 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/3243Power saving in microcontroller unit
    • 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
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4893Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
    • 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

Description

用於控制處理器核心之電力模式的基於延遲電力模式單元以及相關方法及系統
本發明之技術大體上係關於處理器核心,且特定言之係關於控制處理器核心之電力模式。
基於處理器之電腦系統可包括各自包括用於指令執行之一或多個處理器核心的一或多個中央處理單元(CPU)。每一處理器核心包括用於經由多個管線級處理指令之硬體資源。舉例而言,在管線中處理指令可包括提取指令及解碼指令,隨後將該指令發送至執行單元,諸如算術邏輯單元。另外,處理器核心之硬體資源可分成被稱為「執行緒」(亦被稱作「硬體執行緒」)之獨立部分。執行緒為處理器核心提供同時並行處理多個指令的能力。更具體來說,處理器核心內之一執行緒可處理一指令,同時同一處理器核心內之另一執行緒處理不同指令。
就此而言,在處理器核心內處理指令有助於對應CPU之總電力消耗。致力於省電,CPU可採用經組態以取決於處理器核心之活動控制處理器核心之電力位準的電力控制單元。舉例而言,電力控制單元可在至少一個執行緒處於作用中狀態下時提供標稱電力位準至處理器核 心,以提供充足電力來驅動處理器核心內之硬體資源來處理指令。然而,若處理器核心中無執行緒處於作用中狀態下,則電力控制單元可使處理器核心電力萎縮以省電。以此方式,藉由在處理器核心具有作用中狀態下之執行緒時提供標稱電力至處理器核心及在所有執行緒處於非作用中時使處理器核心電力萎縮來節省處理器核心及其對應CPU之電力消耗。
在實施方式中揭示之態樣包括用於控制處理器核心之電力模式的基於延遲電力模式單元。亦揭示相關方法及系統。在本文中之態樣中,本文揭示之電力模式單元亦經組態以能夠在處理器核心具有擱置中狀態下之一或多個執行緒且無作用中狀態下之執行緒時降低或萎縮提供至處理器核心之電力,而不是該電力模式單元僅能夠在無執行緒處於作用中時使處理器核心電力萎縮來省電。
當執行緒中之指令的處理由等待自處理器核心之外部擷取資料以用於該指令而無需執行緒以其他方式處理另一指令構成時,執行緒在處理器核心中處於擱置中狀態。舉例而言,正由執行緒處理之指令的運算元可為位於處理器核心外部之記憶體中的資料。若處理器核心在執行緒處於擱置中狀態下且等待來自處理器核心外部之請求時並不需要如此多的電力來操作,則亦可在等待週期之延遲期間降低由處理器核心消耗之電力。以此方式,即使當執行緒處於擱置中狀態下時亦可在處理器核心中省電。能夠另外在執行緒處於擱置中狀態下時(相對於僅在所有執行緒處於非作用中時)省電的中央處理單元(CPU)可降低處理器核心及其對應CPU中之總電力消耗。
就此而言,在一個態樣中,提供一種用於控制處理器核心之電力模式的基於延遲電力模式單元。基於延遲電力模式單元包含電力模式輸入,該電力模式輸入經組態以接收關於供應至處理器核心以用於 處理器核心外部之資料存取之電力位準的電力模式資訊。基於延遲電力模式單元進一步包含經組態以接收關於處理器核心中之執行緒之狀態的工作負荷資訊的執行緒工作負荷輸入。基於延遲電力模式單元經組態以產生電力模式設定來將處理器核心設置成當(1)工作負荷資訊指示處理器核心具有在擱置中狀態下之一或多個執行緒且無在作用中狀態下之執行緒且(2)電力模式資訊指示對應於降低電力模式之在擱置中狀態下之一或多個執行緒的當前資料存取延遲時在降低電力模式下操作。值得注意的是,基於擱置中狀態下之一或多個執行緒之當前資料存取延遲調節降低電力模式允許處理器核心在執行緒受限於等待長延遲資料時省電。基於延遲電力模式單元亦可經進一步組態以向電力模式輸出提供電力模式設定,以向用於控制由處理器核心使用之電力的電力控制單元提供電力模式設定。
在另一態樣中,提供一種用於控制處理器核心之電力模式的基於延遲電力模式裝置。該基於延遲電力模式裝置包含用於接收關於供應至處理器核心以用於處理器核心外部之資料存取的電力位準的電力模式資訊的構件。該基於延遲電力模式裝置亦包含用於接收關於處理器核心中之執行緒之狀態的工作負荷資訊的構件。該基於延遲電力模式裝置亦包含用於產生電力模式設定來將處理器核心設置成當工作負荷資訊指示處理器核心具有在擱置中狀態下之一或多個執行緒且無在作用中狀態下之執行緒且電力模式資訊指示對應於降低電力模式之在擱置中狀態下之一或多個執行緒的當前資料存取延遲時在降低電力模式下操作的構件。該基於延遲電力模式裝置亦可進一步包含一構件,該構件用於提供電力模式設定至用於控制由處理器核心使用之電力的構件。
在另一態樣中,提供一種用於使用基於延遲判定控制處理器核心之電力模式的方法。該方法包含接收關於供應至處理器核心以用於 處理器核心外部之資料存取之電力位準的電力模式資訊。該方法進一步包含接收關於處理器核心中之執行緒之狀態的工作負荷資訊。該方法進一步包含產生電力模式設定來將處理器核心設置成當(1)工作負荷資訊指示處理器核心具有在擱置中狀態下之一或多個執行緒且無在作用中狀態下之執行緒且(2)電力模式資訊指示對應於降低電力模式之在擱置中狀態下之一或多個執行緒的當前資料存取延遲時在降低電力模式下操作。該方法亦可進一步包含向用於控制由處理器核心使用之電力的電力控制單元提供電力模式設定。
在另一態樣中,其上儲存有電腦可執行指令之非暫時性電腦可讀媒體,該等指令在由處理器執行時引起處理器接收關於供應至處理器核心以用於處理器核心外部之資料存取之電力位準的電力模式資訊。該等電腦可執行指令進一步引起處理器接收關於處理器核心中之執行緒之狀態的工作負荷資訊。該等電腦可執行指令進一步引起處理器產生電力模式設定來將處理器核心設置成當(1)工作負荷資訊指示處理器核心具有在擱置中狀態下之一或多個執行緒且無在作用中狀態下之執行緒且(2)電力模式資訊指示對應於降低電力模式之在擱置中狀態下之一或多個執行緒的當前資料存取延遲時在降低電力模式下操作。該等電腦可執行指令可進一步引起處理器向用於控制由處理器核心使用之電力的電力控制單元提供電力模式設定。
10‧‧‧中央處理單元(CPU)子系統
12‧‧‧基於延遲電力模式單元
14‧‧‧處理器核心
16‧‧‧電力模式輸入
18‧‧‧電力模式資訊
20‧‧‧執行緒工作負荷輸入
22‧‧‧工作負荷資訊
24‧‧‧電力模式設定
26‧‧‧電力模式輸出
28‧‧‧電力控制單元
28(0)‧‧‧電力控制單元
28(1)‧‧‧電力控制單元
30‧‧‧記憶體
32‧‧‧邏輯
34‧‧‧中斷
36‧‧‧中斷輸出
37‧‧‧單元記憶體
38‧‧‧例示性處理程序
40‧‧‧區塊
42‧‧‧區塊
44‧‧‧區塊
46‧‧‧區塊
48‧‧‧區塊
50‧‧‧區塊
52‧‧‧執行緒活動圖表
54‧‧‧電力位準活動圖表
55(0)‧‧‧電力整體
55(1)‧‧‧電力整體
56‧‧‧例示性處理程序
58‧‧‧區塊
60‧‧‧執行緒活動圖表
62‧‧‧對應電力位準活動圖表
64‧‧‧執行緒活動圖表
66‧‧‧對應電力位準活動圖表
68‧‧‧基於處理器之系統
70‧‧‧中央處理單元(CPU)
72‧‧‧處理器
74‧‧‧快取記憶體
76‧‧‧系統匯流排
78‧‧‧記憶體控制器
80‧‧‧記憶體系統
82‧‧‧輸入器件
84‧‧‧輸出器件
86‧‧‧網路介面器件
88‧‧‧顯示控制器
90‧‧‧網路
92‧‧‧記憶體單元
92(0-N)‧‧‧記憶體單元
94‧‧‧顯示器
96‧‧‧視訊處理器
LH‧‧‧高活動等級
LL‧‧‧低活動等級
P‧‧‧電力位準
P0‧‧‧電力位準
PC‧‧‧電力位準
PN‧‧‧電力位準
PR‧‧‧電力位準
t0‧‧‧時間
t1‧‧‧時間
t2‧‧‧時間
t3‧‧‧時間
t4‧‧‧時間
t5‧‧‧時間
t6‧‧‧時間
t7‧‧‧時間
t8‧‧‧時間
t9‧‧‧時間
t10‧‧‧時間
t11‧‧‧時間
t12‧‧‧時間
t13‧‧‧時間
t14‧‧‧時間
t15‧‧‧時間
X(0)-X(N)‧‧‧執行緒
圖1為採用基於延遲電力模式單元之例示性處理器子系統之方塊圖,該基於延遲電力模式單元經組態以藉由在處理器核心具有在擱置中狀態下之一或多個執行緒且無在作用中狀態下之執行緒時降低供應至處理器核心之電力位準來控制處理器核心之電力模式;圖2為說明圖1中之基於延遲電力模式單元控制處理器核心之電力模式之例示性處理程序的流程圖,該控制包括在處理器核心具有在 擱置中狀態下之一或多個執行緒且無在作用中狀態下之執行緒時降低供應至處理器核心之電力位準;圖3A為說明處理器核心之例示性執行緒活動及電力位準活動以及由圖1中之基於延遲電力模式單元基於執行緒處於作用中、非作用中還是擱置中狀態下控制處理器核心之對應電力模式的圖式;圖3B為說明作為採用圖1中之基於延遲電力模式單元之結果的圖3A中之處理器核心之例示性電力降低的圖式;圖4為說明圖1中之基於延遲電力模式單元控制處理器核心之電力模式的例示性處理程序的流程圖,其中可基於資料存取延遲之持續時間產生與較低電力模式或較高電力模式相關聯的電力模式設定;圖5為說明處理器核心之例示性執行緒活動及電力位準活動以及由圖1中之基於延遲電力模式單元控制的當執行緒經排程以在處理器核心外部之資料存取之一定義臨限時間內變為作用中時處理器核心之對應電力模式的圖式;圖6為說明處理器核心之例示性執行緒活動及電力位準活動以及由圖1中之基於延遲電力模式單元控制的在處理器核心內之兩個執行緒在擱置中、作用中及非作用中狀態之間轉變時處理器核心之對應電力模式的圖式;及圖7為例示性基於處理器之系統之方塊圖,該系統可包括含有一或多個處理器核心及圖1中之基於延遲電力模式單元的中央處理單元(CPU)。
現在參考圖式,描述本發明之若干例示性態樣。詞語「例示性」在本文中用以意謂「充當一實例、個例或說明」。不必將本文中描述為「例示性」之任何態樣解釋為較佳或優於其他態樣。
本文揭示之態樣包括用於控制處理器核心之電力模式的基於延 遲電力模式單元。亦揭示相關方法及系統。就此而言,圖1說明採用用於控制處理器核心14之電力模式之例示性基於延遲電力模式單元12的例示性中央處理單元(CPU)子系統10。處理器核心14具有各自經組態以提供同時處理之複數個執行緒X(0)-X(N),其中『N+1』等於執行緒之數目。然而,處理器核心14可包括僅一個(1)執行緒。如下文更詳細論述,圖1中之基於延遲電力模式單元12經組態以能夠在處理器核心14中之執行緒X(0)-X(N)中之至少一者處於擱置中狀態下且無執行緒X(0)-X(N)處於作用中時降低或萎縮提供給處理器核心14的電力。以此方式,即使當執行緒X(0)-X(N)處於擱置中狀態下時(相對於僅在處理器核心14中之執行緒X(0)-X(N)處於非作用中時),亦可在處理器核心14中省電。
當執行緒X中之指令的處理由等待自處理器核心14外部擷取資料以用於該指令而無需執行緒X以其他方式處理另一指令構成時,圖1中之處理器核心14中之執行緒X處於擱置中狀態下。另外,當執行緒X並非等待自處理器核心14外部擷取資料且執行緒X正以其他方式處理指令時,處理器核心14中之執行緒X處於作用中狀態下。當執行緒X既不在作用中狀態下,亦不在擱置中狀態下時,執行緒X處於非作用中狀態下。舉例而言,正藉由處理器核心14中之執行緒X處理之指令的運算元可為位於處理器核心14外部之記憶體中之資料。若處理器核心14在執行緒X處於擱置中狀態下且等待來自處理器核心14外部之請求時並不需要如此多的電力來操作,則在等待週期之延遲期間亦可降低由處理器核心14消耗之電力。以此方式,即使當執行緒X(0)-X(N)處於擱置中狀態下時亦可在處理器核心14中省電。採用基於延遲電力模式單元12來另外在執行緒X(0)-X(N)處於擱置中狀態下時(相對於僅在所有執行緒X(0)-X(N)處於非作用中時)省電可降低處理器核心14及對應CPU子系統10中之總電力消耗。
繼續參考圖1,在論述基於延遲電力模式單元12控制處理器核心14之電力模式以省電之實例之前,首先描述基於延遲電力模式單元12及CPU子系統10之組件。在此態樣中,基於延遲電力模式單元12包括電力模式輸入16。電力模式輸入16經組態以接收關於供應至處理器核心14之電力位準的電力模式資訊18。在此實例中,電力模式資訊18包括用於處理器核心14外部之資料存取之電力位準。然而,電力模式資訊18亦可包括用於其他類型之資料存取的電力位準。基於延遲電力模式單元12亦包括經組態以接收關於處理器核心14中之執行緒X(0)-X(N)之狀態的工作負荷資訊22的執行緒工作負荷輸入20。舉例而言,工作負荷資訊22可包括指示處理器核心14之一或多個執行緒X(0)-X(N)在擱置中狀態下且無執行緒X(0)-X(N)在作用中狀態下、執行緒X(0)-X(N)中之至少一者在作用中狀態下、還是所有執行緒X(0)-X(N)皆為非作用中的資訊。基於延遲電力模式單元12經組態以產生電力模式設定24來基於電力模式資訊18及工作負荷資訊22將處理器核心14設置成在降低或較高電力模式下操作。基於延遲電力模式單元12經進一步組態以向電力模式輸出26提供電力模式設定24,以向電力控制單元28提供電力模式設定24,用以控制由處理器核心14使用之電力。在此實例中,提供兩個電力控制單元28(0)、28(1)。第一電力控制單元28(0)用於控制提供給記憶體30之電力。第二電力控制單元28(1)用於控制提供給處理器核心14中之邏輯32的電力以用於執行或支援其中之處理。
另外,在此態樣中,基於延遲電力模式單元12經組態以在中斷輸出36上產生中斷34來讓處理器核心14準備好在較高電力模式下操作。替代地,基於延遲電力模式單元12可經組態以在電力模式設定24之所儲存先前個例與較高電力模式相關聯時放棄在中斷輸出36上產生中斷34。舉例而言,電力模式設定24之所儲存先前個例可儲存在基於 延遲電力模式單元12內之單元記憶體37中。
圖2說明圖1中之基於延遲電力模式單元12用於控制處理器核心14之電力模式的例示性處理程序38。參考圖2,基於延遲電力模式單元12首先接收關於供應至處理器核心14以用於處理器核心14外部之資料存取之電力位準的電力模式資訊18(區塊40)。基於延遲電力模式單元12隨後接收表示處理器核心14中之執行緒X(0)-X(N)之狀態的工作負荷資訊22(區塊42)。基於延遲電力模式單元12可在區塊42中接收工作負荷資訊22,隨後或同時在區塊40中接收電力模式資訊18。另外,一旦基於延遲電力模式單元12接收到電力模式資訊18及工作負荷資訊22兩者,基於延遲電力模式單元12就判定以下各者:(1)工作負荷資訊22是否指示處理器核心14之一或多個執行緒X(0)-X(N)在擱置中狀態下且無執行緒X(0)-X(N)在作用中狀態下;及(2)電力模式資訊18是否指示該一或多個執行緒X(0)-X(N)的當前資料存取延遲在對應於降低電力模式之擱置中狀態下(區塊44)。
繼續參考圖2,若區塊44中之兩個狀況存在,則此意謂處理器核心14並無作用中之任何執行緒X(0)-X(N)。另外,此亦意謂處理器核心14並無不久可變為作用中之處於擱置中狀態下之任何執行緒X。由此,在此情境下,可降低提供給處理器核心14之電力以省電。就此而言,基於延遲電力模式單元12產生電力模式設定24來將處理器核心14設置成在降低電力模式下操作(區塊46)。基於延遲電力模式單元12提供指示降低電力模式之電力模式設定24至用於控制由處理器核心14使用之電力的電力控制單元28(0)、28(1)(區塊48)。
然而,若圖2之區塊44中之兩個狀況不存在,則處理器核心14可能需要較高電力位準以用於處理指令。舉例而言,可能需要較高電力位準以供處理器核心14中之執行緒X有效地處理指令。在此情境下,基於延遲電力模式單元12產生電力模式設定24來將處理器核心14設置 成在較高電力模式(相對於降低電力模式)下操作(區塊50)。基於延遲電力模式單元12提供電力模式設定24至用於控制由處理器核心14使用之電力的電力控制單元28(0)、28(1)(區塊48)。可不斷重複圖2中之處理程序38以允許基於延遲電力模式單元12來控制處理器核心14之電力位準。
由此,總而言之,藉由採用圖2中之處理程序38之圖1中之基於延遲電力模式單元12,基於延遲電力模式單元12使得若正處理之所有執行緒X(0)-X(N)在擱置中狀態下,則即使當正處理執行緒X(0)-X(N)時,亦實現處理器核心14中之電力節省。
為提供對圖1中之基於延遲電力模式單元12在執行緒X(0)-X(N)處於擱置中狀態下且無執行緒X(0)-X(N)處於作用中時降低提供給處理器核心14之電力的進一步解釋,提供圖3A。圖3A說明例示性執行緒活動圖表52及展示基於延遲電力模式單元12對處理器核心14電力位準之效應的對應電力位準活動圖表54。
參考圖3A,執行緒活動圖表52展示在時間t0處處於非作用中狀態下之處理器核心14中之第一執行緒X(0),如藉由低活動等級LL所說明。為了清楚起見,執行緒活動圖表52上之低活動等級LL可表示執行緒X(0)處於非作用中或擱置中狀態下,而高活動等級LH表示執行緒X(0)處於作用中狀態下。另外,處理器核心14中之所有其他執行緒X(1)-X(N)(未示出)在圖3A中處於非作用中。因為所有執行緒X(0)-(N)處於非作用中,處理器核心14處於其中在時間t0處電力位準P等於PC(例如,電力萎縮位準)的降低電力模式下,如電力位準活動圖表54中所示。如本文所使用,使處理器核心14電力萎縮在於將供應至處理器核心14之電力降低至將資料保留在記憶體30及邏輯32中所需的最小位準。雖然在此實例中PC大於零電力位準P0,但一些態樣可具有等於P0之PC。另外,在時間t1處,執行緒X(0)變成作用中,如藉由高活動 等級LH所說明。作為回應,基於延遲電力模式單元12產生電力模式設定24來將處理器核心14設置成以較高電力模式操作。基於延遲電力模式單元12亦回應於產生對應於較高電力模式之電力模式設定24而在中斷輸出36上產生中斷34。中斷34提示處理器核心14在準備執行緒相關活動時在時間t1-2期間進行「喚醒」程序。另外,電力模式設定24引起電力控制單元28(0)、28(1)供應標稱電力至處理器核心14,從而在時間t1處將電力位準P變成PN
繼續參考圖3A,在時間t3處,作為指令之處理的一部分,執行緒X(0)起始儲存在處理器核心14外部之資料的資料存取。由此,執行緒X(0)在時間t3處變成擱置中狀態,如藉由執行緒活動圖表52中之低活動等級LL所示。因為所有其他執行緒X(1)-X(N)仍處於非作用中,故工作負荷資訊22指示處理器核心14具有在擱置中狀態下之一或多個執行緒且無在作用中狀態下之執行緒。在此實例中,電力模式資訊18指示執行緒X(0)之對應於降低電力模式之當前資料存取延遲。因此,基於延遲電力模式單元12產生電力模式設定24來將處理器核心14設置成降低電力模式。電力控制單元28(0)、28(1)供應降低電力位準至處理器核心14,從而引起電力位準P在時間t3處降至PC,因為處理器核心14並不需要與執行緒處於作用中時相比一樣多的電力來操作。由此,即使執行緒X(0)處於擱置中狀態下而非非作用中,基於延遲電力模式單元12亦使得處理器核心14能夠在時間t3處開始在降低電力模式下操作。
繼續參考圖3A,處理器核心14在時間t4處接收自處理器核心14外部請求以用於擱置中執行緒X(0)的資料,從而引起執行緒X(0)變為作用中,如藉由高活動等級LH所說明。此引起基於延遲電力模式單元12產生電力模式設定24來將處理器核心14設置成在較高電力模式下操作。電力模式設定24引起電力控制單元28(0)、28(1)供應標稱電力至 處理器核心14,從而引起電力位準P在時間t4處升至PN。另外,基於延遲電力模式單元12亦產生中斷34,從而提示處理器核心14在時間t4-5期間進行喚醒程序。由此,基於延遲電力模式單元12使得處理器核心14能夠在執行緒X(0)變成擱置中時之時間t3處開始以PC操作,直至在執行緒X(0)接收所請求資料時之時間t4為止。
就此而言,繼續參考圖3A,時間t3-4對應於與處理器核心14外部之資料存取相關聯的將執行緒X(0)置於擱置中狀態下的資料存取延遲。由此,處理器核心14在時間t3-4期間保持在具有設置為PC之電力位準P的降低電力模式下,藉此貫穿彼時間框在處理器核心14內省電。圖3B中說明在執行緒X(0)處於擱置中狀態下時藉由將電力位準P降低至PC而在處理器核心14中節省之電力之量。更具體而言,相較於當電力位準P在執行緒X(0)處於擱置中狀態下時保持在PN處時不省電,電力整體55(0)展示在時間t3-4期間在處理器核心14中節省PN-PC的總電力。
繼續參考圖3A,在時間t6處,執行緒X(0)起始儲存在處理器核心14外部之資料的資料存取,且由此執行緒X(0)變成擱置中狀態,如藉由低活動等級LL所說明。類似於在時間t3-4期間之先前資料存取,電力模式資訊18指示執行緒X(0)之對應於降低電力模式之當前資料存取延遲。因為所有其他執行緒X(1)-X(N)在執行緒X(0)處於擱置中時處於非作用中,故工作負荷資訊22指示處理器核心14具有在擱置中狀態下之一個執行緒且無在作用中狀態下之執行緒。基於電力模式資訊18及工作負荷資訊22,基於延遲電力模式單元12生成電力模式設定24來將處理器核心14設置成降低電力模式。由此,電力控制單元28(0)、28(1)供應降低電力位準至處理器核心14,從而引起電力位準P在時間t6處降至PR。接收自處理器核心14外部請求之資料後,執行緒X(0)在時間t7處變成作用中,如藉由高活動等級LH所說明。此引起基於延遲 電力模式單元12產生電力模式設定24來將處理器核心14設置成在較高電力模式下操作。另外,基於延遲電力模式單元12亦產生中斷34,從而提示處理器核心14在時間t7-8期間進行喚醒程序。電力模式設定24引起電力控制單元28(0)、28(1)供應標稱電力至處理器核心14,從而引起電力位準P在時間t7處升至PN
繼續參考圖3A,時間t6-7對應於與處理器核心14外部之資料存取相關聯的在時間t6處將執行緒X(0)置於擱置中狀態下的資料存取延遲。由此,處理器核心14在時間t6-7期間保持在具有設置為PR之電力位準P的降低電力模式下,藉此貫穿彼時間框在處理器核心14內省電。圖3B中說明在執行緒X(0)處於擱置中狀態下時藉由將電力位準P降低至PR而在處理器核心14中節省之電力之量。更具體而言,相較於在執行緒X(0)處於擱置中狀態下時電力節省缺乏使得電力位準P保持在PN處,電力整體55(1)展示在時間t6-7期間在處理器核心14中節省PN-PR的總電力。
值得注意的是,儘管處理器核心14在時間t3-4及時間t6-7期間在降低電力模式下操作,但電力位準PC在時間t3-4期間比在時間t6-7期間之電力位準PR低。在降低電力模式之獨立個例期間的電力位準P之此類差異係歸因於取決於對應資料存取延遲的電力位準P。舉例而言,與時間t3-4相關聯的資料存取延遲比與時間t6-7相關聯的資料存取延遲更長。處理器核心14在時間t3-4期間可以電力位準PC操作,因為在此類長資料存取延遲期間節省之電力比與自電力萎縮狀態喚醒處理器核心14相關聯的任何效能損失更重要。相反,在與關聯於時間t6-7之資料存取延遲一樣短之資料存取延遲期間藉由使處理器核心14電力萎縮而節省之電力可能不能調整此類效能損失。然而,相較於電力位準PC,自電力位準PR喚醒處理器核心14具有較小效能損失。由此,僅在時間t6-7期間將處理器核心14降低至電力位準PR可節省足以調整與自電力 位準PR喚醒處理器核心14相關聯的效能損失的電力。因此,基於延遲電力模式單元12經組態以產生對應於針對特定資料存取處理器核心14必須等待之時間量的電力模式設定24。
現參考圖1提供本文揭示之態樣的具體細節。在此態樣中,基於延遲電力模式單元12上之電力模式輸入16經組態以自處理器核心14內之記憶體30接收電力模式資訊18。替代地,電力模式資訊18可儲存在處理器核心14外部之另一記憶體中。如先前所描述,電力模式資訊18包括關於應將哪一電力模式供應至處理器核心14的資訊。更具體而言,電力模式資訊18可包括關於處理器核心14外部之資料存取的延遲及對應於該資料存取之電力模式的資訊。作為非限制性實例,電力模式資訊18可包括資料介面(自該資料介面請求資料)的識別符、對應於自資料介面存取資料的延遲及對應於特定資料介面的電力模式。以此方式,降低電力模式可與關聯於自處理器核心14外部之特定資料介面存取資料的延遲相關聯。作為非限制性實例,若此類資料存取具有相對長延遲,則自遵循二階(L2)快取未命中之較低等級記憶體存取資料可與降低電力模式相關聯。類似地,自具有相對長資料存取延遲的不可快取周邊裝置存取資料亦可對應於降低電力模式。
繼續參考圖1,基於延遲電力模式單元12經組態以藉助於執行緒工作負荷輸入20自處理器核心14內之邏輯32接收工作負荷資訊22。如先前所描述,工作負荷資訊22包括關於處理器核心14內之執行緒X(0)-X(N)之狀態的資訊。詳言之,工作負荷資訊22可包括指示處理器核心14之一或多個執行緒X(0)-X(N)在擱置中狀態下且無執行緒X(0)-X(N)在作用中狀態下、至少一個執行緒X在作用中狀態下、還是所有執行緒X(0)-X(N)皆為非作用中的資訊。由此,電力模式資訊18及工作負荷資訊22提供關於以下各者的細節:在擱置中狀態下之執行緒X(0)-X(N)中之一者是否具有與降低電力模式相關聯的一資料存取 延遲,及處理器核心14之當前活動是否能夠禁得起電力降低。
繼續參考圖1,在此態樣中,電力模式設定24可基於處理器核心14中存在之狀況而變化。舉例而言,基於延遲電力模式單元12經進一步組態以產生電力模式設定24來將處理器核心14設置成當工作負荷資訊22指示處理器核心14中之所有執行緒X(0)-X(N)處於非作用中時在降低電力模式下操作。詳言之,若無執行緒X(0)-X(N)處於擱置中或作用中狀態下,則處理器核心14能夠禁得起降低電力模式,因為處理器核心14內之記憶體30及邏輯32在無執行緒X(0)-(N)正在處理指令時並不需要滿電力。另外,基於延遲電力模式單元12亦經組態以產生電力模式設定24來將處理器核心14設置成在其中之狀況不滿足降低電力模式時在較高電力模式下操作。更具體而言,產生之電力模式設定24將在電力模式資訊18指示在擱置中狀態下之執行緒X(0)-X(N)中之一者的資料存取延遲並不對應於降低電力模式時反映較高電力模式。類似地,若工作負荷資訊22指示處理器核心14之至少一個執行緒X在作用中狀態下時,電力模式設定24將設置處理器核心14為在較高電力模式下運行。由此,基於延遲電力模式單元12經組態以根據處理器核心14之當前需求產生電力模式設定24。
繼續參考圖1,在此態樣中,基於延遲電力模式單元12亦經組態以在產生之電力模式設定24指示較高電力模式時通知處理器核心14。詳言之,處理器核心14可能需要採取某些步驟以便自降低電力模式轉變至較高電力模式,通常被稱作「喚醒」處理器核心14。由此,基於延遲電力模式單元12經組態以回應於產生電力模式設定24來將處理器核心14設置成在較高電力模式下操作而在中斷輸出36上產生中斷34。將中斷34提供至處理器核心14中之邏輯32,以通知處理器核心14準備在較高電力模式下操作。替代地,基於延遲電力模式單元12可經組態以回應於產生電力模式設定24來將處理器核心14設置成在降低電力模 式下操作而產生中斷34。以此方式,可將中斷34提供至處理器核心14中之邏輯32,使得邏輯32可採取步驟來自較高電力模式轉變至降低電力模式。
繼續參考圖1,在此態樣中,基於延遲電力模式單元12安置於處理器核心14內。然而,在其他態樣中,基於延遲電力模式單元12可以其他方式安置於處理器核心14外部且產生省電益處。由此,無論基於延遲電力模式單元12在CPU子系統10中之位置如何,若正處理之所有執行緒X(0)-X(N)處於擱置中狀態下,則即使當正處理執行緒X(0)-X(N)時,基於延遲電力模式單元12亦可協助在處理器核心14中省電。
除考慮執行緒狀態及任何對應資料存取延遲之外,基於延遲電力模式單元12可在產生電力模式設定24時考慮執行緒X(0)-X(N)之將來活動之計時。舉例而言,若執行緒X(0)-X(N)中之一者經排程以在同一或另一執行緒X(0)-X(N)變成擱置中狀態之後的相對短時間內變為作用中,則在此類短時段中降低電力所需之額外負荷可能比任何電力節省更重要。就此而言,圖4說明圖1中之基於延遲電力模式單元12用於部分基於執行緒X(0)-X(N)中之一者可遵循資料存取請求變為作用中之速度來控制處理器核心14之電力模式的例示性處理程序56。
繼續參考圖4,區塊40、區塊42、區塊44、區塊46、區塊48及區塊50中之步驟與先前在圖2中所描述相同。然而,若區塊44中之兩個狀況存在,則基於延遲電力模式單元12作出額外判定而非產生用於降低電力模式之電力模式設定24。詳言之,基於延遲電力模式單元12判定工作負荷資訊22是否指示處理器核心14具有經排程以在處理器核心14外部之資料存取起始後的定義臨限值時間內變為作用中的執行緒X(區塊58)。舉例而言,第一執行緒X(0)可轉變至擱置中狀態,而無其他執行緒X(1)-X(N)處於作用中狀態下。若第二執行緒X(1)經排程以在第一執行緒X(0)轉變至擱置中狀態之後不久變為作用中,則處理 器核心14可能低效地進入僅具有之降低電力模式以在一旦第二執行緒X(1)處於作用中狀態下時進入較高電力模式。由此,定義臨限時間可表示最小持續時間,其中處理器核心14需要具有在擱置中狀態下之一或多個執行緒X(0)-X()且無在作用中狀態下之執行緒X(0)-X(N)以便調整進入降低電力模式。與喚醒處理器核心14相關聯的效能損失可為判定此類計時之重要因素。
以此方式,繼續參考圖4,若在區塊58處執行緒X經排程以在定義臨限時間內變為作用中,則基於延遲電力模式單元12經組態以產生用於較高電力模式之電力模式設定24(區塊50)。相反,若在區塊58處無執行緒X(0)-X(N)經排程以在定義臨限時間內變為作用中,則基於延遲電力模式單元12經組態以產生用於該降低電力模式之電力模式設定24(區塊46)。在區塊46或區塊50處產生電力模式設定24後,基於延遲電力模式單元12經組態以在區塊48處提供電力模式設定24至用於控制由處理器核心14使用之電力的電力控制單元28(0)、28(1)。藉由採用該處理程序56,基於延遲電力模式單元12使得若正處理之所有執行緒X(0)-X(N)處於擱置中狀態下且對應資料存取延遲調整處理器核心14進入降低電力模式,則即使在正處理執行緒X(0)-X(N)時亦能夠在處理器核心14中節省電力。
就此而言,圖5說明當執行緒X(0)經排程以在處理器核心14外部之資料存取之定義臨限時間內變為作用中,而所有其他執行緒X(1)-X(N)(未示出)保持非作用中時,圖1中之處理器核心14之執行緒活動圖表60及對應電力位準活動圖表62。直至時間t6之執行緒活動圖表60及電力位準活動圖表62的轉變及相關計時等同於圖3A中直至時間t6之執行緒活動圖表52及電力位準活動圖表54的轉變及相關計時。
然而在圖5中的時間t6處,執行緒X(0)起始儲存在處理器核心14外部之資料的資料存取,且由此執行緒X(0)變成擱置中狀態,如藉由 低活動等級LL所說明。然而,儘管執行緒X(0)處於擱置中狀態下而無其他執行緒處於作用中狀態下,但執行緒X(0)經排程以在時間t9處變為作用中,如藉由高活動等級LH所說明。另外,時間t9發生在處理器核心14之定義臨限時間內。結果,電力模式設定24繼續對應於較高電力模式,而並非基於延遲電力模式單元12產生電力模式設定24來將處理器核心14設置成在降低電力模式下操作。由此,若時間t9不在定義臨限時間內,則電力位準P在時間t6-9期間保持在PN處,而不是降至PC或PR。另外,當執行緒X(0)在時間t9處變成作用中(如藉由高活動等級LH所說明)時,電力位準P保持在PN處。值得注意的是,因為處理器核心14在時間t6-9期間保持在PN處,故處理器核心14確實不需要時間來在執行緒X(0)在時間t9處變成作用中後完成其喚醒程序。以此方式,將基於延遲電力模式單元12組態成在執行緒經排程以在處理器核心14外部之資料存取之起始後的定義臨限時間內變為作用中時產生用於較高電力模式之電力模式設定24可減少處理時間並且省電。
另外,圖6說明當兩個執行緒在擱置中、作用中及非作用中狀態之間變化時圖1中之處理器核心14的執行緒活動圖表64及對應電力位準活動圖表66。以此方式,執行緒活動圖表64說明第一執行緒X(0)及第二執行緒X(1)之活動,而所有其他執行緒X(2)-X(N)(未示出)保持非作用。
繼續參考圖6,執行緒活動圖表64展示在時間t10處在非作用中狀態下之第一執行緒X(0)及第二執行緒X(1),如藉由低活動等級LL所說明。因此,電力位準活動圖表66展示在時間t10處電力位準P處於PC。另外,第一執行緒X(0)及第二執行緒(1)兩者在時間t11處變為作用中,如藉由高活動等級LH所示。此引起基於延遲電力模式單元12產生電力模式設定24來將處理器核心14設置成較高電力模式。較高電力模式引起電力控制單元28(0)、28(1)供應標稱電力至處理器核心14,此情況 又引起電力位準P在時間t11處升至PN。在時間t12處,第一執行緒X(0)及第二執行緒X(1)兩者轉變成擱置中狀態,如藉由低活動等級LL所示。然而,當電力模式資訊18指示直至執行緒X(1)經排程在時間t15處變為作用中為止對應於用於第二執行緒X(1)之降低電力模式的當前資料存取延遲時,第一執行緒X(0)經排程在時間t13處再次變為作用中,如藉由高活動等級LH所示。時間t13發生在用於處理器核心14之定義臨限時間內,導致基於延遲電力模式單元12產生電力模式設定24來在時間t12處將處理器核心14設置成較高電力模式。由此,電力位準P在時間t12-14期間保持在PN處。值得注意的是,儘管電力模式設定24之先前個例與較高電力模式相關聯,但在此態樣中,基於延遲電力模式單元12經組態以在時間t12處產生與較高電力模式相關聯的電力模式設定24。然而,當電力模式設定24之所儲存先前個例分別與較高電力模式或降低電力模式相關聯時,基於延遲電力模式單元12之其他態樣可放棄產生電力模式設定24來將處理器核心14設置成較高電力模式或降低電力模式。舉例而言,電力模式設定24之所儲存先前個例可儲存在基於延遲電力模式單元12內之單元記憶體37中。
繼續參考圖6,第一執行緒X(0)完成其指令之處理且在時間t14處變成非作用中,如藉由低活動等級LL所說明。然而,第二執行緒X(1)在時間t14處保持在擱置中狀態下,且經排程以在時間t15處變為作用中,如藉由高活動等級LH所示。在此實例中,第二執行緒X(1)具有與降低電力模式相關聯的剩餘資料存取延遲。另外,在時間t15處,經排程變為作用中之唯一執行緒為第二執行緒X(1),該時間t15並非在處理器核心14之定義臨限時間內。由此,基於延遲電力模式單元12經組態以產生電力模式設定24來將處理器核心14設置成在時間t14處在降低電力模式下操作。結果,電力位準P在時間t14-15期間經設置成PC。第二執行緒X(1)在時間t15處變成作用中狀態,如藉由高活動等級LH所示。 基於延遲電力模式單元12產生為較高電力模式的電力模式設定24,導致電力位準P在時間t15處返回至PN。以此方式,基於延遲電力模式單元12使得處理器核心14即使在多個執行緒在擱置中、作用中及非作用中狀態之間變化時亦能夠省電。
根據本文揭示之態樣的用於控制處理器核心之電力模式的基於延遲電力模式單元以及相關方法及系統可提供於或整合至任何基於處理器之器件中。實例包括(但不限於)機上盒、娛樂單元、導航器件、通信器件、固定位置資料單元、行動位置資料單元、行動電話、蜂巢式電話、電腦、攜帶型電腦、桌上型電腦、個人數位助理(PDA)、監視器、電腦監視器、電視、調諧器、無線電、衛星無線電、音樂播放器、數位音樂播放器、攜帶型音樂播放器、數位視訊播放器、視訊播放器、數位視訊光碟(DVD)播放器及攜帶型數位視訊播放器。
就此而言,圖7說明可採用圖1中所說明之基於延遲電力模式單元12的基於處理器之系統68之實例。在此實例中,基於處理器之系統68包括一或多個CPU 70,其各自包括一或多個處理器72。CPU 70可具有耦接至處理器72以用於快速存取暫時儲存之資料的快取記憶體74。CPU 70耦接至系統匯流排76且可使包括於基於處理器之系統68中之主控器件與受控器件相互耦接。眾所周知,CPU 70藉由經由系統匯流排76交換位址、控制及資料資訊而與該等其他器件通信。舉例而言,CPU 70可將匯流排異動請求傳達至作為受控器件之實例的記憶體控制器78。儘管圖7中未說明,但可提供多個系統匯流排76,其中每一系統匯流排76構成不同網狀架構。
其他主控器件及受控器件可連接至系統匯流排76。如圖7中所說明,作為實例,該等器件可包括記憶體系統80、一或多個輸入器件82、一或多個輸出器件84、一或多個網路介面器件86及一或多個顯示控制器88。該(該等)輸入器件82可包括任何類型之輸入器件,包含(但 不限於)輸入鍵、開關、語音處理器等。輸出器件84可包括任何類型的輸出器件,包括(但不限於)音訊、視訊、其他視覺指示器等。該(該等)網路介面器件86可為任何經組態以允許至網路90及來自網路90之資料交換的器件。網路90可為任何類型之網路,包括(但不限於)有線或無線網路、專用或公用網路、區域網路(LAN)、廣泛區域網路(WLAN)及網際網路。網路介面器件86可經組態以支援任何類型之所要通信協定。記憶體系統80可包括一或多個記憶體單元92(0-N)。
CPU 70亦可經組態以經由系統匯流排76存取顯示控制器88來控制發送至一或多個顯示器94之資訊。該(該等)顯示控制器88將資訊發送至待經由一或多個視訊處理器96顯示之該(該等)顯示器94,該視訊處理器將待顯示之資訊處理成適合於顯示器94的格式。顯示器94可包括任何類型之顯示器,包括(但不限於)陰極射線管(CRT)、液晶顯示器(LCD)、電漿顯示器等。
熟習此項技術者將進一步瞭解,結合本文所揭示之態樣所描述的各種說明性邏輯區塊、模組、電路及演算法可實施為電子硬體、儲存於記憶體中或另一電腦可讀媒體中且由處理器或其他處理器件執行之指令或此兩者之組合。作為實例,本文中所描述之主控器件及受控器件可用於任何電路、硬體組件、積體電路(IC)或IC晶片中。本文中所揭示之記憶體可為任何類型及大小之記憶體,且可經組態以儲存所要的任何類型之資訊。為了清楚地說明此可互換性,上文已大體上關於功能性描述了各種說明性組件、區塊、模組、電路及步驟。如何實施此功能性取決於特定應用、設計選項及/或強加於整個系統之設計約束。對於每一特定應用而言,熟習此項技術者可以變化之方式實施所描述之功能性,但不應將該等實施決策解釋為導致脫離本發明之範疇。
可藉由處理器、數位信號處理器(DSP)、特殊應用積體電路 (ASIC)、場可程式化閘陣列(FPGA)或經設計以執行本文中所描述功能的其他可程式化邏輯器件、離散閘或電晶體邏輯、離散硬體組件,或其任何組合來實施或執行結合本文中所揭示之態樣而描述的各種說明性邏輯區塊、模組及電路。處理器可為微處理器,但在替代方案中,處理器可為任何習知之處理器、控制器、微控制器或狀態機。處理器亦可實施為計算器件之組合,例如,DSP與微處理器之組合、複數個微處理器、結合DSP核心之一或多個微處理器,或任何其他此組態。
本文中所揭示之態樣可體現於硬體及儲存於硬體中之指令中,且可駐留於(例如)隨機存取記憶體(RAM)、快閃記憶體、唯讀記憶體(ROM)、電可程式化ROM(EPROM)、電可抹除可程式化ROM(EEPROM)、暫存器、硬碟、可卸除式磁碟、CD-ROM或此項技術中已知的任何其他形式之電腦可讀媒體中。例示性儲存媒體耦接至處理器,使得處理器可自儲存媒體讀取資訊並將資訊寫入至儲存媒體。在替代方案中,儲存媒體可與處理器成一體式。處理器及儲存媒體可駐留於ASIC中。該ASIC可駐留於遠端台中。在替代方案中,處理器及儲存媒體可作為離散組件而駐留於遠端台、基地台或伺服器中。
亦應注意,描述本文中在任何例示性態樣中所描述之操作步驟以提供實例及論述。可以不同於所說明之序列的眾多不同序列執行所描述之操作。此外,描述於單一操作步驟中之操作可實際上以數個不同步驟執行。另外,可組合例示性態樣中所論述之一或多個操作步驟。應理解,如熟習此項技術者將容易地顯而易見,流程圖圖式中所說明之操作步驟可經受眾多不同修改。熟習此項技術者亦將理解,可使用多種不同技術及技藝中之任一者來表示資訊及信號。舉例而言,可由電壓、電流、電磁波、磁場或磁粒子、光場或光粒子或其任何組合表示在貫穿以上描述中可能提及的資料、指令、命令、資訊、信 號、位元、符號及晶片。
提供本發明之先前描述以使得任何熟習此項技術者能夠製造或使用本發明。對本發明之各種修改對於熟習此項技術者而言將為顯而易見的,且可在不脫離本發明之精神或範疇的情況下將本文中所定義之一般原理應用於其他變體。由此,本發明並不意欲限於本文中所描述之實例及設計,而應符合與本文中所揭示之原理及新穎特徵相一致的最廣泛範疇。
10‧‧‧中央處理單元(CPU)子系統
12‧‧‧基於延遲電力模式單元
14‧‧‧處理器核心
16‧‧‧電力模式輸入
18‧‧‧電力模式資訊
20‧‧‧執行緒工作負荷輸入
22‧‧‧工作負荷資訊
24‧‧‧電力模式設定
26‧‧‧電力模式輸出
28‧‧‧電力控制單元
28(0)‧‧‧電力控制單元
28(1)‧‧‧電力控制單元
30‧‧‧記憶體
32‧‧‧邏輯
34‧‧‧中斷
36‧‧‧中斷輸出
37‧‧‧單元記憶體
X(0)-X(N)‧‧‧執行緒

Claims (30)

  1. 一種用於控制一處理器核心之一電力模式的基於延遲電力模式單元,其包含:一電力模式輸入,其經組態以接收關於供應至一處理器核心以用於該處理器核心外部之一資料存取的一電力位準的電力模式資訊,其中該電力模式資訊包含:自至少一資料介面存取資料之一資料存取延遲;及對應於該至少一資料介面之一電力模式;及一執行緒工作負荷輸入,其經組態以接收關於該處理器核心中之執行緒之一狀態的工作負荷資訊;該基於延遲電力模式單元經組態以產生一電力模式設定以在下列狀況時將該處理器核心設置成在一降低電力模式下操作:當該工作負荷資訊指示該處理器核心之一或多個執行緒在擱置中狀態下且無執行緒在作用中狀態下,且該電力模式資訊指示該一或多個執行緒之各者的該資料存取延遲及對應於該至少一資料介面之該電力模式在對應於該降低電力模式的擱置中狀態下。
  2. 如請求項1之基於延遲電力模式單元,其經進一步組態以向一電力模式輸出提供該電力模式設定,以向用於控制由該處理器核心使用之電力的一電力控制單元提供該電力模式設定。
  3. 如請求項1之基於延遲電力模式單元,其中該降低電力模式包含一電力萎縮位準。
  4. 如請求項3之基於延遲電力模式單元,其中該降低電力模式進一步包含低於一標稱電力位準且高於該電力萎縮位準之一降低電力位準。
  5. 如請求項1之基於延遲電力模式單元,其經進一步組態以產生該電力模式設定來將該處理器核心設置成當該電力模式資訊指示不對應於該降低電力模式之一資料存取延遲時在一較高電力模式下操作。
  6. 如請求項5之基於延遲電力模式單元,其經進一步組態以:追蹤該處理器核心外部之該資料存取的起始;及產生該電力模式設定以將該處理器核心設置成當該工作負荷資訊指示該處理器核心具有經排程以在該處理器核心外部的該資料存取之該起始後的一定義臨限時間內變為作用中的一執行緒時在該較高電力模式下操作。
  7. 如請求項5之基於延遲電力模式單元,其經進一步組態以:不產生該電力模式設定來將該處理器核心設置成當該電力模式設定之一所儲存先前個例將該處理器核心設置成在該降低電力模式下操作時在該降低電力模式下操作;及不產生該電力模式設定來將該處理器核心設置成當該電力模式設定之該所儲存先前個例將該處理器核心設置成在該較高電力模式下操作時在該較高電力模式下操作。
  8. 如請求項1之基於延遲電力模式單元,其經進一步組態以產生該電力模式設定來將該處理器核心設置成當該工作負荷資訊指示該處理器核心的至少一個執行緒在作用中狀態下時在一較高電力模式下操作。
  9. 如請求項8之基於延遲電力模式單元,其經進一步組態以回應於產生該電力模式設定來將該處理器核心設置成在該較高電力模式下操作,產生指示該電力模式設定經設置成該較高電力模式的一中斷至該處理器核心。
  10. 如請求項1之基於延遲電力模式單元,其經進一步組態以產生該 電力模式設定來將該處理器核心設置成當該工作負荷資訊指示該處理器核心中之所有執行緒處於非作用中時在該降低電力模式下操作。
  11. 如請求項1之基於延遲電力模式單元,其中該基於延遲電力模式單元係安置於該處理器核心外部。
  12. 如請求項1之基於延遲電力模式單元,其中該基於延遲電力模式單元係安置於該處理器核心內。
  13. 如請求項1之基於延遲電力模式單元,其中該資料存取包含:由一二階(L2)快取未命中導致之來自一記憶體的一負荷;或來自一不可快取周邊裝置的一負荷。
  14. 如請求項1之基於延遲電力模式單元,其經整合至一積體電路(IC)中。
  15. 如請求項1之基於延遲電力模式單元,其整合至選自由以下各者組成之群組的一器件中:一機上盒、一娛樂單元、一導航器件、一通信器件、一固定位置資料單元、一行動位置資料單元、一行動電話、一蜂巢式電話、一電腦、一攜帶型電腦、一桌上型電腦、一個人數位助理(PDA)、一監視器、一電腦監視器、一電視、一調諧器、一無線電、一衛星無線電、一音樂播放器、一數位音樂播放器、一攜帶型音樂播放器、一數位視訊播放器、一視訊播放器、一數位視訊光碟(DVD)播放器及一攜帶型數位視訊播放器。
  16. 一種用於控制一處理器核心之一電力模式的基於延遲電力模式裝置,其包含:用於接收關於供應至一處理器核心以用於該處理器核心外部之一資料存取之一電力位準的電力模式資訊的構件,其中該電力模式資訊包含: 自至少一資料介面存取資料之一資料存取延遲;及對應於該至少一資料介面之一電力模式;用於接收關於該處理器核心中之執行緒之一狀態的工作負荷資訊的構件;及用於產生一電力模式設定的構件,其用以在下列狀況時將該處理器核心設置成在一降低電力模式下操作:當該工作負荷資訊指示該處理器核心之一或多個執行緒在擱置中狀態下且無執行緒在作用中狀態下,且該電力模式資訊指示該一或多個執行緒之各者的該資料存取延遲及對應於該至少一資料介面之該電力模式在對應於該降低電力模式的擱置中狀態下。
  17. 如請求項16之基於延遲電力模式裝置,其進一步包含一構件,該構件用於提供該電力模式設定至用於控制由該處理器核心使用之電力的一構件。
  18. 一種用於使用一基於延遲判定控制一處理器核心之一電力模式的方法,其包含:接收關於供應至一處理器核心以用於該處理器核心外部之一資料存取之一電力位準的電力模式資訊,其中該電力模式資訊包含:自至少一資料介面存取資料之一資料存取延遲;及對應於該至少一資料介面之一電力模式;接收關於該處理器核心中之執行緒之一狀態的工作負荷資訊;及產生一電力模式設定,其用以在下列狀況時將該處理器核心設置成在一降低電力模式下操作:當該工作負荷資訊指示該處理器核心之一或多個執行緒在擱置中狀態下且無執行緒在作用中狀態下,且該電力模式資訊指示該一或多個執行緒之各者的 該資料存取延遲及對應於該至少一資料介面之該電力模式在對應於該降低電力模式的擱置中狀態下。
  19. 如請求項18之方法,其進一步包含向用於控制由該處理器核心使用之電力的一電力控制單元提供該電力模式設定。
  20. 如請求項18之方法,其中該降低電力模式包含一電力萎縮位準。
  21. 如請求項20之方法,其中該降低電力模式進一步包含低於一標稱電力位準且高於該電力萎縮位準之一降低電力位準。
  22. 如請求項18之方法,其進一步包含產生該電力模式設定來將該處理器核心設置成當該電力模式資訊指示不對應於該降低電力模式之一資料存取延遲時在一較高電力模式下操作。
  23. 如請求項22之方法,其進一步包含:追蹤該處理器核心外部之該資料存取的起始;及產生該電力模式設定以將該處理器核心設置成當該工作負荷資訊指示該處理器核心具有經排程以在該處理器核心外部之該資料存取之該起始後的一定義臨限時間內變為作用中的一執行緒時在該較高電力模式下操作。
  24. 如請求項18之方法,其進一步包含產生該電力模式設定來將該處理器核心設置成當該工作負荷資訊指示該處理器核心之至少一執行緒在作用中狀態下時在一較高電力模式下操作。
  25. 如請求項24之方法,其進一步包含回應於產生該電力模式設定來將該處理器核心設置成在該較高電力模式下操作,產生指示該電力模式設定經設置成該較高電力模式的一中斷至該處理器核心。
  26. 如請求項18之方法,其進一步包含產生該電力模式設定來將該處理器核心設置成當該工作負荷資訊指示該處理器核心中之所 有執行緒處於非作用中時在該降低電力模式下操作。
  27. 一種非暫時性電腦可讀媒體,其上儲存有當由一處理器執行時引起該處理器執行以下操作的電腦可執行指令:接收關於供應至一處理器核心以用於該處理器核心外部之一資料存取之一電力位準的電力模式資訊,其中該電力模式資訊包含:自至少一資料介面存取資料之一資料存取延遲;及對應於該至少一資料介面之一電力模式;接收關於該處理器核心中之執行緒之一狀態的工作負荷資訊;及產生一電力模式設定,其用以在下列狀況時將該處理器核心設置成在一降低電力模式下操作:當該工作負荷資訊指示該處理器核心之一或多個執行緒在擱置中狀態下且無執行緒在作用中狀態下,且該電力模式資訊指示該一或多個執行緒之各者的該資料存取延遲及對應於該至少一資料介面之該電力模式在對應於該降低電力模式的擱置中狀態下。
  28. 如請求項27之非暫時性電腦可讀媒體,其中該等電腦可執行指令在由該處理器執行時進一步引起該處理器向用於控制由該處理器核心使用之電力的一電力控制單元提供該電力模式設定。
  29. 如請求項27之非暫時性電腦可讀媒體,其中該等電腦可執行指令在由該處理器執行時進一步引起該處理器產生該電力模式設定來將該處理器核心設置成當該電力模式資訊指示不對應於該降低電力模式之一資料存取延遲時在一較高電力模式下操作。
  30. 如請求項27之非暫時性電腦可讀媒體,其中該等電腦可執行指令在由該處理器執行時進一步引起該處理器產生該電力模式設定來將該處理器核心設置成當該工作負荷資訊指示該處理器核 心之至少一執行緒在作用中狀態下時在一較高電力模式下操作。
TW104109610A 2014-04-22 2015-03-25 用於控制處理器核心之電力模式的基於延遲電力模式單元以及相關方法及系統 TWI595353B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US14/258,541 US9552033B2 (en) 2014-04-22 2014-04-22 Latency-based power mode units for controlling power modes of processor cores, and related methods and systems

Publications (2)

Publication Number Publication Date
TW201544947A TW201544947A (zh) 2015-12-01
TWI595353B true TWI595353B (zh) 2017-08-11

Family

ID=52829351

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104109610A TWI595353B (zh) 2014-04-22 2015-03-25 用於控制處理器核心之電力模式的基於延遲電力模式單元以及相關方法及系統

Country Status (8)

Country Link
US (1) US9552033B2 (zh)
EP (1) EP3134805B1 (zh)
JP (1) JP6151465B1 (zh)
KR (1) KR101826088B1 (zh)
CN (1) CN106233225B (zh)
BR (1) BR112016024712A2 (zh)
TW (1) TWI595353B (zh)
WO (1) WO2015164011A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10317974B2 (en) * 2016-04-08 2019-06-11 Intel Corporation Power supply unit (PSU) switching
US10459517B2 (en) * 2017-03-31 2019-10-29 Qualcomm Incorporated System and methods for scheduling software tasks based on central processing unit power characteristics
US10726879B2 (en) * 2017-12-08 2020-07-28 Samsung Electronics Co., Ltd. Low-power data transfer from buffer to flash memory
US20220129171A1 (en) * 2020-10-23 2022-04-28 Pure Storage, Inc. Preserving data in a storage system operating in a reduced power mode
US11899944B2 (en) 2021-03-18 2024-02-13 Micron Technology, Inc. Strategic power mode transition in a multi-memory device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050289377A1 (en) * 2004-06-28 2005-12-29 Ati Technologies Inc. Apparatus and method for reducing power consumption in a graphics processing device
US20090172434A1 (en) * 2007-12-31 2009-07-02 Kwa Seh W Latency based platform coordination
TW201337769A (zh) * 2004-03-31 2013-09-16 Coware Inc 用於管理多核心架構之資源的方法和設備
TW201405272A (zh) * 2012-06-29 2014-02-01 Intel Corp 有效整合的切換式電壓調節器

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6233690B1 (en) 1998-09-17 2001-05-15 Intel Corporation Mechanism for saving power on long latency stalls
US7363474B2 (en) * 2001-12-31 2008-04-22 Intel Corporation Method and apparatus for suspending execution of a thread until a specified memory access occurs
US7653906B2 (en) * 2002-10-23 2010-01-26 Intel Corporation Apparatus and method for reducing power consumption on simultaneous multi-threading systems
US20060200684A1 (en) * 2005-03-01 2006-09-07 Vasudev Bibikar Power mode change voltage control in computerized system
US7627770B2 (en) * 2005-04-14 2009-12-01 Mips Technologies, Inc. Apparatus and method for automatic low power mode invocation in a multi-threaded processor
US8214662B2 (en) * 2007-04-09 2012-07-03 Panasonic Corporation Multiprocessor control unit, control method performed by the same, and integrated circuit
GB2465599B8 (en) * 2008-11-24 2010-11-10 1E Ltd Power management of computers.
JP4858862B2 (ja) * 2009-06-24 2012-01-18 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置
US8190939B2 (en) * 2009-06-26 2012-05-29 Microsoft Corporation Reducing power consumption of computing devices by forecasting computing performance needs
US9235251B2 (en) 2010-01-11 2016-01-12 Qualcomm Incorporated Dynamic low power mode implementation for computing devices
US8850236B2 (en) 2010-06-18 2014-09-30 Samsung Electronics Co., Ltd. Power gating of cores by an SoC
US8862917B2 (en) 2011-09-19 2014-10-14 Qualcomm Incorporated Dynamic sleep for multicore computing devices
US20130275791A1 (en) 2012-04-12 2013-10-17 Qualcomm Incorporated Method and System for Tracking and Selecting Optimal Power Conserving Modes of a PCD
US9015510B2 (en) 2012-06-29 2015-04-21 Intel Corporation Optimizing energy efficiency using device idle duration information and latency tolerance based on a pre-wake configuration of a platform associated to the device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201337769A (zh) * 2004-03-31 2013-09-16 Coware Inc 用於管理多核心架構之資源的方法和設備
US20050289377A1 (en) * 2004-06-28 2005-12-29 Ati Technologies Inc. Apparatus and method for reducing power consumption in a graphics processing device
US20090172434A1 (en) * 2007-12-31 2009-07-02 Kwa Seh W Latency based platform coordination
TW201405272A (zh) * 2012-06-29 2014-02-01 Intel Corp 有效整合的切換式電壓調節器

Also Published As

Publication number Publication date
US20150301573A1 (en) 2015-10-22
KR101826088B1 (ko) 2018-02-06
WO2015164011A1 (en) 2015-10-29
CN106233225B (zh) 2017-10-10
JP2017519274A (ja) 2017-07-13
BR112016024712A2 (pt) 2017-08-15
JP6151465B1 (ja) 2017-06-21
CN106233225A (zh) 2016-12-14
EP3134805B1 (en) 2019-07-31
EP3134805A1 (en) 2017-03-01
KR20160145595A (ko) 2016-12-20
TW201544947A (zh) 2015-12-01
US9552033B2 (en) 2017-01-24

Similar Documents

Publication Publication Date Title
TWI595353B (zh) 用於控制處理器核心之電力模式的基於延遲電力模式單元以及相關方法及系統
TWI489277B (zh) 混合直寫式/回寫式快取策略管理器及相關系統及方法
US8656196B2 (en) Hardware automatic performance state transitions in system on processor sleep and wake events
US9104499B2 (en) System for minimizing resource latency between processor application states in a portable computing device by scheduling resource state set transitions
US8954980B2 (en) Conserving power through work load estimation for a portable computing device using scheduled resource set transitions
US10539997B2 (en) Ultra-low-power design memory power reduction scheme
US20140317427A1 (en) Dynamic clock voltage scaling (dcvs) based on application performance in a system-on-a-chip (soc), and related methods and processor-based systems
TW201643607A (zh) 用於計算裝置內多個soc之操作狀態間協調之方法及系統
JP2018527676A (ja) メモリ状態遷移タイマを動的に調整するためのシステムおよび方法
US9223384B2 (en) Synthesizing intermediate performance levels in integrated circuits, and related processor systems, methods, and computer-readable media
US20120291043A1 (en) Minimizing Resource Latency Between Processor Application States In A Portable Computing Device By Using A Next-Active State Set
US20140095911A1 (en) Controlling Power Consumption By Power Management Link
TWI515554B (zh) 供電限制
US20160224053A1 (en) Timer-based processing unit operational scaling employing timer resetting on idle process scheduling
JP2015158751A (ja) 描画方法、描画装置及びプログラム
US11467621B2 (en) Computer processing unit intra-frame clock and voltage scaling based on graphics application awareness
US11630502B2 (en) Hierarchical state save and restore for device with varying power states
JP2008139913A (ja) 電力制御装置および電力制御方法

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees