TWI690799B - 用於在等待事件期間之處理器節電之方法、電腦系統及電腦程式產品 - Google Patents
用於在等待事件期間之處理器節電之方法、電腦系統及電腦程式產品 Download PDFInfo
- Publication number
- TWI690799B TWI690799B TW107100717A TW107100717A TWI690799B TW I690799 B TWI690799 B TW I690799B TW 107100717 A TW107100717 A TW 107100717A TW 107100717 A TW107100717 A TW 107100717A TW I690799 B TWI690799 B TW I690799B
- Authority
- TW
- Taiwan
- Prior art keywords
- processor
- power mode
- parameter
- instructions
- low power
- Prior art date
Links
Images
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/3234—Power saving characterised by the action undertaken
-
- 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/16—Constructional details or arrangements
- G06F1/20—Cooling means
- G06F1/206—Cooling means comprising thermal management
-
- 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
- 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
- G06F1/3209—Monitoring remote activity, e.g. over telephone lines or network connections
-
- 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
-
- 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)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Power Sources (AREA)
- Executing Machine-Instructions (AREA)
- Microcomputers (AREA)
Abstract
實施例係有關一種最佳化一電氣器件中之電力消耗之方法。該方法包括:由一處理器接收進入一等待狀態之指令;及由該處理器識別與進入一等待狀態之該等指令相關聯之一參數。該方法繼續以下操作:由該處理器基於該參數而起始進入一低功率模式之指令;由該處理器基於該參數而起始結束一低功率模式之指令;及經由一使用者介面而向一使用者提供該處理器之一當前狀態之通知。該參數包括執行階段資訊、指令資訊及經排程操作。
Description
本發明大體上係關於縮減及控制一電腦系統或處理器中之熱耗散以及電力消耗,該電腦系統或處理器含有在操作時消耗電力之積體電路(integrated circuit;IC)中存在的許多電晶體。
通常,電氣器件使用時脈閘控及循環操縱以在操作時縮減電力消耗。隨著IC大小減小及電路密度增大,對應電力消耗及熱耗散要求亦增大。非常需要最小化電力消耗,尤其是在電路及耗電邏輯區塊處於等待狀態時。
實施例係有關一種最佳化一電氣器件中之電力消耗之方法。該方法包括:由一處理器接收進入一等待狀態之指令;及由該處理器識別與進入一等待狀態之該等指令相關聯之一參數。該方法亦包括:由該處理器基於該參數而起始進入一低功率模式之指令;由該處理器基於該等參數而起始結束該低功率模式之指令;及經由一使用者介面而向一使用者提供該處理器之一當前狀態之通知。
實施例亦有關一種系統,其包括:一記憶體,其具有電腦可讀指令;及一處理器,其用於執行該等電腦可讀指令。該等電腦可讀指令包括:接收進入一等待狀態之指令;及識別與進入一等待狀態之該等指令相關聯之
一參數。該等電腦可讀指令亦包括:基於該參數而起始進入一低功率模式之指令;由該處理器基於該等參數而起始結束該低功率模式之指令;及經由一使用者介面而向一使用者提供該處理器之一當前狀態之通知。
實施例亦有關一種電腦程式產品,其包括含有程式指令之一電腦可讀儲存媒體,其中該電腦可讀儲存媒體並非一暫時性信號本身。該等程式指令可由一電腦處理器執行且致使該電腦處理器執行一方法。該方法包括:由一處理器接收進入一等待狀態之指令;及由該處理器識別與進入一等待狀態之該等指令相關聯之一參數。該方法亦包括:基於該參數而起始進入一低功率模式之指令;由該處理器基於該等參數而起始結束該低功率模式之指令;及經由一使用者介面而向一使用者提供該處理器之一當前狀態之通知。
100:流程圖/程序
102:區塊
104:區塊
106:區塊
108:區塊
110:區塊
112:區塊
114:區塊
116:區塊
118:區塊
120:區塊
122:區塊
124:區塊
126:區塊
128:區塊
130:區塊
200:指令集
202:作業碼欄位
204:分支欄位
206:選項欄位
208:遮罩欄位
210:時間欄位
212:提示欄位
214:保留欄位
300:SDI欄位(資料表)
302:睡眠作業(Op)碼
304:參數
306:狀態
308:演算法
310:演算法
312:演算法
314:演算法
316:演算法
318:演算法
400:替代指令集
402:等待大於臨限值之時間
404:永遠等待
406:等待尋找新工作之資源
408:等待慢資源
410:等待多個事件發生
412:「始終節電」命令
414:等待「晶片外」信號
500:電腦系統
502:處理器
504:通信基礎結構(匯流排)
506:顯示介面
508:顯示單元
510:主記憶體
512:次要記憶體
514:硬碟機
516:可抽換式儲存磁碟機
518:可抽換式儲存單元
520:可抽換式儲存單元
522:介面
524:通信介面
526:通信路徑
600:電腦程式產品
602:電腦可讀儲存媒體
604:程式指令
在本說明書完結時,在申請專利範圍中特別地指出且清楚地界定本發明之主題。前述及其他特徵及優點自結合隨附圖式所採取之以下詳細描述顯而易見,圖式中:圖1描繪根據本發明之一或多個實施例的展示用以控制電力消耗之節電事件程序的流程圖;圖2描繪根據本發明之一或多個實施例的經編碼等待事件指令集;圖3描繪根據本發明之一或多個實施例的等待事件指令集之睡眠決策索引欄位;圖4描繪根據本發明之一或多個實施例的藉由觸發事件之發生而觸發之替代指令的圖表;圖5描繪根據本發明之一或多個實施例的電腦系統之高階方塊圖;及
圖6描繪根據本發明之一或多個實施例的包括電腦可讀儲存媒體及程式指令之電腦程式產品。
本文中參考相關圖式來描述本發明之各個實施例。可在不脫離本發明之範疇的情況下設計出替代實施例。應注意,在以下描述及圖式中之元件之間闡述各種連接及位置關係(例如,上方、下方、鄰近等等)。除非另有指定,否則此等連接及/或位置關係可為直接或間接的,且本發明在此方面並不意欲為限制性的。因此,實體之耦接可指直接或間接耦接,且實體之間的位置關係可為直接或間接位置關係。作為間接位置關係之實例,本描述中對在層「B」上方形成層「A」之參考包括一或多個中間層(例如,層「C」)在層「A」與層「B」之間的情形,只要層「A」及層「B」之相關特性及功能性未被中間層實質上改變即可。
以下定義及縮寫將用於解譯申請專利範圍及本說明書。如本文中所使用,術語「包含」、「包括」、「具有」、「含有」或其任何其他變化意欲涵蓋非獨占的包括。舉例而言,包含一元件清單之組成物、混合物、程序、方法、物品或裝置未必僅限於彼等元件,而是可包括未明確地列出或為此組成物、混合物、程序、方法、物品或裝置所固有之其他元件。
另外,術語「例示性」在本文中用以意謂「充當實例、例項或說明」。未必應將本文中被描述為「例示性」之任何實施例或設計認作比其他實施例或設計較佳或有利。術語「一或多個」應被理解為包括大於或等於一之任何整數,亦即,一、二、三、四等等。術語「複數個」應被理解為包括大於或等於二之任何整數,亦即,二、三、四、五等等。術語「連接」可包括間接「連接」及直接「連接」。
本說明書中對「一個實施例」、「一實施例」、「一實例實施例」等等之參考指示所描述之實施例可包括一特定特徵、結構或特性,但每一實施例可包括該特定特徵、結構或特性。此外,此等片語未必係指同一實施例。另外,在結合一實施例來描述一特定特徵、結構或特性時,應認為,無論是否予以明確地描述,結合其他實施例來實現此特徵、結構或特性皆在熟習此項技術者之認識範圍內。
出於下文中之描述之目的,術語「上部」、「下部」、「右側」、「左側」、「垂直」、「水平」、「頂部」、「底部」及其衍生詞應與所描述之結構及方法相關,如在繪圖中所定向。術語「上覆」、「在……頂上」、「在……頂部上」、「定位於……上」或「定位於……頂上」意謂諸如第一結構之第一元件存在於諸如第二結構之第二元件上,其中諸如界面結構之介入元件可存在於第一元件與第二元件之間。術語「直接接觸」意謂第一元件(諸如第一結構)及第二元件(諸如第二結構)彼此連接而在該兩個元件之界面處無任何中間層。
現在轉至本發明之概觀,本文中所描述之方法及器件包括用以控制電力消耗之節電事件程序。本發明包括已經處於等待狀態之電腦系統(處理器),其將進入低功率(節電)狀態之指令發送至處理器之元件,因此節約電力且縮減熱產生。為了使節電狀態開始,處理器必須首先處於等待狀態。處理器取決於當前工作負荷及程式流程而進入等待狀態,且不取決於電力消耗參數。
現在轉至本發明之實施例之更詳細的描述,圖1描繪根據本發明之一或多個實施例的展示用以控制電力消耗之節電程序的流程圖100。程序100包括:處理器執行「等待」指令(進入等待狀態)102;進行是否滿足在等
待狀態下繼續之條件之決策區塊104;若不滿足區塊104之條件,則在區塊106處進行使程式執行繼續之程序;若滿足區塊104之條件,則在區塊108處進行停止程式執行之步驟;及在區塊110處監測低功率模式進入條件。流程圖100繼續以下操作:在區塊112處進行基於睡眠作業碼(圖2中進一步所描述)及當前狀態而進入低功率模式之決策;在區塊114處進行判定等待指令是否已結束之決策區塊;若區塊112處之決策為「是」,則在區塊116處進行使經選擇功能單元關機之程序;在區塊118處進行用於監測低功率模式結束條件之程序;及在區塊120處進行基於睡眠作業碼(圖2中所論述)及當前狀態而判定是否結束低功率模式之決策區塊。流程圖100繼續以下操作:在區塊122處進行基於來自區塊120之「否」回應而詢問等待指令是否已結束之決策區塊;若決策區塊120處之回覆為「是」,則在區塊124處進行重新啟動已斷電功能單元之程序;進行詢問等待指令是否已結束之決策區塊126;若對決策區塊126之回覆為「否」,則在區塊128處進行監測等待指令結束之程序;及若對決策區塊126之回覆為「是」,則在區塊130處進行恢復程式執行之程序。
一旦處理器在區塊108處處於等待狀態,處理器就在區塊112處進行進入節電狀態或低功率模式之決策。此係由處理器在區塊116處發送使經選擇電路系統及邏輯區塊斷電或縮減經選擇電路系統及邏輯區塊之電力消耗之指令而實現。如區塊116處所展示之進入節電狀態之決策係基於如圖3中所描述之若干參數。不論處理器是否決策進入節電狀態,處理器皆繼續在等待狀態下操作。處理器具有獨立於在節電狀態下操作而進入等待狀態之能力。然而,僅在處理器已經處於等待狀態時,處理器才可進入節電狀態。此外,在處理器結束等待狀態時,節電狀態亦結束。流程圖100繼續區塊
112,其包括電腦系統監測系統參數以判定繼續抑或結束等待狀態。該程序繼續區塊116,其中使經預選擇電路系統及邏輯區塊關機或指示經預選擇電路系統及邏輯區塊進入節電狀態。流程圖100亦包括決策區塊120,其中處理器決策繼續節電狀態抑或結束節電狀態。區塊120處之此決策包括分析區塊118處之電腦系統參數。處理器繼續在區塊120處啟用節電狀態直至經監測參數集合在區塊118處改變狀態之時間,例如當觸發事件離開時,當處理器發送結束節電狀態之指令時,或當處理器在區塊122處結束等待狀態時。一旦在區塊120處進行結束低功率狀態之決策,該程序就在區塊124處重新啟動已斷電功能單元,且接著在區塊126處監測結束等待狀態之命令。一旦在區塊126處接收到結束等待狀態之命令,程式執行就在130處恢復且該程序在區塊102處重新啟動。
圖2描繪根據本發明之一或多個實施例的經編碼等待事件指令集200。實例指令集200具有複數個欄位,其被標記為作業碼欄位202、分支欄位204、選項欄位206、遮罩欄位208、時間欄位210、提示欄位(亦被稱作睡眠決策索引(sleep decision index;SDI))212,及保留欄位214。作業碼欄位202唯一地識別指令集200內之等待事件指令集。可存在等待事件之若干變化,包括參考暫存器之一些運算元,以及接收及處理立即運算元之一些運算元。分支欄位204指定每當出現錯誤時程式就應分支至的位置。一個實例錯誤為逾時事件。分支欄位204亦可包括絕對或相對定址。選項欄位206編碼所等待之觸發事件集合將被處置的方式。在一些實施例中,需要等待一段時間直至表示可用資源之位元被設定或清除。在一些實施例中,需要等待直至表示某一資源之全部位元或僅單一位元改變狀態。一些資源可由單一位元表示且不需要如下文進一步所描述之遮罩。在彼等實施例中,
可簡明地在選項欄位206中表示此等資源。同時,遮罩欄位208編碼豐富的資源。作為一實例,輸入/輸出(input/output;IO)控制器可具有同時未完成的多個直接記憶體存取(Direct Memory Access;DMA)操作。若每一DMA操作被編碼為單一位元,則可針對第一及第三DMA操作存在等待。同時,第二DMA操作被忽略。遮罩欄位208亦可被編碼有「101b」遮罩(「b」表示二進位遮罩)。遮罩欄位208之使用不會阻斷操作;更確切地,其識別將不會在結束等待狀態之決策中考慮之彼等操作。等待事件指令200亦包括時間欄位210,其編碼使處理器等待之最大時間間隔。在系統已等待使觸發事件發生之設定時間量時,其接著將參考分支欄位204運算元。分支欄位204運算元接著將用以載入程式計數器。在一些實施例中,為零之程式計數器可被編碼為永遠等待。又在一些實施例中,時間欄位210亦可被設定為0以便永遠等待。SDI欄位212包括用以選擇包括但不限於「始終節電」、「永不節電」等等之選項的位元。SDI欄位212用以控制節電狀態之進入及結束,且含有軟體開發者意欲向硬體傳遞且在圖3中更詳細地論述之額外資訊。
圖3描繪根據本發明之一或多個實施例的等待事件指令集之睡眠決策索引(SDI)欄位300。SDI欄位(資料表)300為圖2之等待事件指令200之一個欄位。SDI資料表300包括睡眠作業(operation;Op)碼302、參數304及狀態306。該等資料表項目中之每一者控制與SDI資料表300項目相關聯之狀態機。特定SDI資料表300項目中之資訊控制何時進入節電狀態及何時結束節電狀態。程式設計師在等待事件指令200中設定SDI資料表300之值。程式設計師亦針對SDI資料表300之每一項目組態睡眠作業碼302及參數304。給定SDI資料表300項目可在適當時由多於一個等待事件指令參考。
睡眠作業碼302指定哪一演算法應被應用。一些實例演算法包括但不限於以下者:無操作(no operations;NOP)308,其中器件出於任何原因而不進入節電狀態,且包括參數(無)及狀態(無)。另一實例演算法為時間延遲310,其中若先前連續N個等待狀態已花費長於指定臨限參數,則SDI欄位300發送進入節電狀態之指令。參數包括操作數目及臨限值。狀態包括先前連續操作之當前數目超過臨限值。另一實例演算法包括超過平均臨限值312。此SDI欄位具有睡眠作業碼302,其指定在等待事件時間之指數移動平均值超過臨限值的情況下進入節電狀態。該指數移動平均值被定義為:「last_measured_wait_time*a+(1-a)*previous_calculated_exponential_average」 方程式1
參數包括加權參數「a」及臨限值。狀態包括先前計算出的平均值。另一實例演算法包括另一時間延遲314,其中在預定時間(先前等待持續時間-K個計時器刻度)之後結束節電狀態。在此值<=0時,器件不會進入節電狀態且無限期地維持其目前狀態。參數包括值「K」,而狀態包括先前等待持續時間。另一實例演算法包括在先前連續N個操作之數目不超過預定臨限值316的情況下不進入節電狀態。參數包括操作數目N及臨限值。狀態包括連續操作之當前數目小於臨限值。最後,另一實例演算法包括在指數移動平均值小於臨限值318的情況下不進入節電狀態。參數包括加權參數「a」及預定臨限值。狀態包括先前計算出的平均值。此等各者僅僅為可能演算法之樣本且並非限制性的。取決於正使用之系統及操作員或程式設計師之需要,其他實施例係可能的。SDI欄位300演算法308、310、312、314、316及318可由處理元件微碼實施或在硬體狀態機上實施。可在作用中等待狀態間隔中之任何時間點發生節電狀態之進入及結束。其他演算法係可能
的,且並不限於上文所描述之實施例。
圖4描繪根據本發明之一或多個實施例的藉由觸發事件之發生而觸發之替代指令集400的流程圖。選項遮罩欄位、時間欄位及SDI欄位運算元全部編碼由硬體使用以節約電力且縮減熱產生之資訊。資訊中之一些係隱含的,且一些係明確的(例如SDI欄位運算元)。將觸發進入節電狀態之若干觸發事件包括:等待大於臨限值之時間402;永遠等待404;等待被視為尋找新工作之應用程式之資源406;等待過慢的資源408;等待多個事件發生410;使用「始終節電」命令412;及等待「晶片外」信號414。不同條件可不同地觸發進入節電狀態。作為一實例,「永遠等待406」觸發事件可能對處理器電路系統中之一些或全部進行時脈閘控。替代地,等待高速匯流排可能僅調節處理器之時脈速度。可設置一些條件以不觸發節電事件,諸如等待已經發生之事件、等待小於設定臨限值之時間,或等待「永不節電」命令生效之時。當前實施例為等待事件指令。然而,其他實施例亦係可能的。此等實施例包括但不限於:系統呼叫;其他軟體建構,諸如互斥(允許多個程式執行緒共用相同資源之程式物件,諸如檔案存取);鎖定;條件變數等等。此等及其他實施例可實施等效功能,且可使用更多指令來如此進行。
圖5描繪可用以實施一或多個實施例之電腦系統500的高階方塊圖。更具體言之,電腦系統500可用以實施能夠執行本文中所描述之方法的系統之硬體組件。儘管展示一個例示性電腦系統500,但電腦系統500包括通信路徑526,其將電腦系統500連接至額外系統(未描繪)且可包括一或多個廣域網路(wide area network;WAN)及/或區域網路(local area network;LAN),諸如網際網路、企業內部網路,及/或無線通信網路。電腦系統500及額外
系統經由通信路徑526而通信,例如,以在電腦系統500與額外系統之間傳達資料。
電腦系統500包括一或多個處理器,諸如處理器502。處理器502連接至通信基礎結構504(例如,通信匯流排、跨接叉線,或網路)。電腦系統500可包括顯示介面506,其轉遞來自通信基礎結構504(或來自未展示之圖框緩衝器)之圖形、文字內容及其他資料以供在顯示單元508上顯示。電腦系統500亦包括主記憶體510,較佳地為隨機存取記憶體(random access memory;RAM),且亦可包括次要記憶體512。次要記憶體512可包括例如硬碟機514及/或可抽換式儲存磁碟機516,可抽換式儲存磁碟機516表示例如軟碟機、磁帶機或光碟機。硬碟機514可呈固態磁碟機(solid state drive;SSD)、傳統磁碟機或該兩者之混合的形式。亦可存在次要記憶體512內所含有之多於一個硬碟機514。可抽換式儲存磁碟機516以一般技術者所熟知之方式自可抽換式儲存單元518進行讀取及/或向可抽換式儲存單元518進行寫入。可抽換式儲存單元518表示例如軟碟、光碟(compact disc/optical disc)、磁帶等等,其係藉由可抽換式儲存磁碟機516進行讀取及寫入。應瞭解,可抽換式儲存單元518包括電腦可讀媒體,電腦可讀媒體中儲存有電腦軟體及/或資料。
在替代實施例中,次要記憶體512可包括用於允許將電腦程式或其他指令載入至電腦系統中之其他相似構件。此等構件可包括例如可抽換式儲存單元520及介面522。此等構件之實例可包括程式封裝及封裝介面(諸如在視訊遊戲器件中所發現之程式封裝及封裝介面)、可抽換式記憶體晶片(諸如EPROM、安全數位卡(SD卡)、精巧快閃記憶卡(CF卡)、通用串列匯流排(universal serial bus;USB)記憶體,或PROM)及關聯通訊端,以及允許
將軟體及資料自可抽換式儲存單元520傳送至電腦系統500之其他可抽換式儲存單元520及介面522。
電腦系統500亦可包括通信介面524。通信介面524允許在電腦系統與外部器件之間傳送軟體及資料。通信介面524之實例可包括數據機、網路介面(諸如乙太網路卡)、通信埠,或PC卡槽及卡、通用串列匯流排埠(USB),及其類似者。經由通信介面524而傳送之軟體及資料可呈信號之形式,該等信號可為例如能夠由通信介面524接收之電子、電磁、光學或其他信號。此等信號經由通信路徑(亦即,通道)526而提供至通信介面524。通信路徑526攜載信號,且可使用電線或纜線、光纖、電話線、蜂巢式電話連結、RF連結及/或其他通信通道予以實施。
在本描述中,術語「電腦程式媒體」、「電腦可用媒體」及「電腦可讀媒體」用以係指諸如主記憶體510及次要記憶體512、可抽換式儲存磁碟機516以及安裝於硬碟機514中之硬碟的媒體。電腦程式(亦被稱為電腦邏輯控制)儲存於主記憶體510及/或次要記憶體512中。電腦程式亦可經由通信介面524予以接收。此等電腦程式在執行時使電腦系統能夠執行本文中所論述之特徵。詳言之,電腦程式在執行時使處理器502執行電腦系統之特徵。因此,此等電腦程式表示電腦系統之控制器。因此,自前述詳細描述可看出,一或多個實施例提供技術效益及優點。
現在參看圖6,整體上展示根據一實施例之電腦程式產品600,其包括電腦可讀儲存媒體602及程式指令604。
實施例可為系統、方法,及/或電腦程式產品。電腦程式產品可包括電腦可讀儲存媒體(或多個媒體),其上具有用於致使處理器實行本發明之實施例之態樣的電腦可讀程式指令。
電腦可讀儲存媒體可為有形器件,其可保持及儲存指令以供指令執行器件使用。電腦可讀儲存媒體可為例如但不限於電子儲存器件、磁性儲存器件、光學儲存器件、電磁儲存器件、半導體儲存器件,或前述各者之任何合適組合。電腦可讀儲存媒體之更特定實例之非窮盡性清單包括以下各者:攜帶型電腦磁片;硬碟;隨機存取記憶體(RAM);唯讀記憶體(read-only memory;ROM);可擦除可程式化唯讀記憶體(EPROM或快閃記憶體);靜態隨機存取記憶體(static random access memory;SRAM);攜帶型光碟唯讀記憶體(portable compact disc read-only memory;CD-ROM);數位多功能光碟(digital versatile disk;DVD);記憶卡;軟碟;經機械編碼器件,諸如記錄有指令之凹槽中之打孔卡片或凸起結構;及前述各者之任何合適組合。如本文中所使用,電腦可讀儲存媒體不應被認作暫時性信號本身,諸如無線電波或其他自由傳播電磁波、傳播通過波導或其他傳輸媒體之電磁波(例如,傳遞通過光纜之光脈衝),或傳輸通過電線之電信號。
本文中所描述之電腦可讀程式指令可自電腦可讀儲存媒體下載至各別運算/處理器件,或經由例如網際網路、區域網路、廣域網路及/或無線網路之網路下載至外部電腦或外部儲存器件。網路可包含銅傳輸纜線、光學傳輸光纖、無線傳輸、路由器、防火牆、交換器、閘道器電腦,及/或邊緣伺服器。每一運算/處理器件中之網路配接卡或網路介面自網路接收電腦可讀程式指令且轉遞電腦可讀程式指令以供儲存於各別運算/處理器件內之電腦可讀儲存媒體中。
用於實行實施例之電腦可讀程式指令可包括以一或多種程式設計語言之任何組合而撰寫之組譯器指令、指令集架構(instruction-set-architecture;ISA)指令、機器指令、機器相依指令、微碼、
韌體指令、狀態設定資料或原始程式碼或物件碼,該一或多種程式設計語言包括諸如Smalltalk、C++或其類似者之物件導向式程式設計語言,及諸如「C」程式設計語言或相似程式設計語言之習知程序性程式設計語言。電腦可讀程式指令可完全地在操作員電腦上執行,部分地在操作員電腦上執行,作為單機套裝軟體而執行,部分地在操作員電腦上且部分地在遠端電腦上執行,或完全地在遠端電腦或伺服器上執行。在後種情形中,遠端電腦可經由包括區域網路(LAN)或廣域網路(WAN)的任何類型之網路而連接至操作員電腦,或可對外部電腦進行連接(例如經由使用網際網路服務提供者之網際網路)。在一些實施例中,包括例如可程式化邏輯電路系統、場可程式化閘陣列(field-programmable gate array;FPGA)或可程式化邏輯陣列(programmable logic array;PLA)之電子電路系統可藉由利用電腦可讀程式指令之狀態資訊以個人化電子電路系統而執行電腦可讀程式指令,以便執行本發明之實施例。
本文中參考根據各個實施例之方法、裝置(系統)及電腦程式產品的流程圖說明及/或方塊圖而描述各個實施例之態樣。應理解,可由電腦可讀程式指令實施流程圖說明及/或方塊圖中之每一區塊,以及流程圖說明及/或方塊圖中之區塊組合。
可將此等電腦可讀程式指令提供至一般用途電腦、特殊用途電腦或其他可程式化資料處理裝置之處理器以產生一機器,使得經由該電腦或其他可程式化資料處理裝置之處理器而執行之指令產生用於實施一或多個流程圖及/或方塊圖區塊中指定之功能/動作的構件。亦可將此等電腦可讀程式指令儲存於電腦可讀儲存媒體中,該等指令可指導電腦、可程式化資料處理裝置及/或其他器件以特定方式起作用,使得儲存有指令之電腦可讀儲存
媒體包含一製品,該製品包括實施一或多個流程圖及/或方塊圖區塊中指定之功能/動作之態樣的指令。
亦可將電腦可讀程式指令載入至電腦、其他可程式化資料處理裝置或其他器件上,以致使在該電腦、其他可程式化裝置或其他器件上執行一系列操作步驟以產生一電腦實施程序,使得在該電腦、其他可程式化裝置或其他器件上執行之指令實施一或多個流程圖及/或方塊圖區塊中指定之功能/動作。
諸圖中之流程圖及方塊圖說明根據本發明之各個實施例之系統、方法及電腦程式產品之可能實施方案的架構、功能性及操作。就此而言,流程圖或方塊圖中之每一區塊可表示指令之模組、程式段或部分,其包含用於實施指定邏輯功能之一或多個可執行指令。在一些替代實施方案中,區塊中所提及之功能可不按諸圖中所提及之次序發生。舉例而言,取決於所涉及之功能性,連續地展示之兩個區塊事實上可實質上同時執行,或該等區塊有時可以相反次序執行。亦應注意,可由執行指定功能或動作或實行特殊用途硬體與電腦指令之組合的基於特殊用途硬體之系統實施方塊圖及/或流程圖說明之每一區塊,以及方塊圖及/或流程圖說明中之區塊組合。
本文中所使用之術語係僅出於描述特定實施例之目的且並不意欲為限制性的。如本文中所使用,單數形式「一」及「該」意欲亦包括複數形式,除非上下文另有清晰指示。應進一步理解,術語「包含」在本說明書中使用時指定所陳述特徵、整數、步驟、操作、元件及/或組件之存在,但並不排除一或多個其他特徵、整數、步驟、操作、元件組件及/或其群組之存在或添加。
以下申請專利範圍中之所有構件或步驟加功能元件之對應結構、材
料、動作及等效者意欲包括用於結合如特定地所主張之其他所主張元件來執行功能的任何結構、材料或動作。本文中所呈現之描述係出於說明及描述之目的,但並不意欲為窮盡性的或受到限制。在不脫離本發明之實施例之範疇及精神的情況下,許多修改及變化對於一般技術者而言將顯而易見。選擇及描述實施例以便最好地闡釋操作原理及實務應用,且使其他一般技術者能夠針對如適於所預期之特定用途的具有各種修改之各個實施例理解本發明之實施例。
在一些實施例中,各種功能或動作可在給定位置處進行及/或結合一或多個裝置或系統之操作而進行。在一些實施例中,給定功能或操作之一部分可在第一器件或位置處執行,且該功能或操作之剩餘部分可在一或多個額外器件或位置處執行。
以下申請專利範圍中之所有構件或步驟加功能元件之對應結構、材料、動作及等效者意欲包括用於結合如特定地所主張之其他所主張元件來執行功能的任何結構、材料或動作。已出於說明及描述之目的而呈現本發明,但本發明並不意欲為窮盡性的或限於所描述之形式。在不脫離本發明之範疇及精神的情況下,許多修改及變化對於一般技術者而言將顯而易見。選擇及描述實施例以便最好地闡釋本發明之原理及實務應用,且使其他一般技術者能夠針對如適於所預期之特定用途的具有各種修改之各個實施例理解本發明。
諸圖中之流程圖及方塊圖說明根據本發明之各個實施例之系統及方法之可能實施方案的功能性及操作。在一些替代實施方案中,區塊中所提及之功能可不按諸圖中所提及之次序發生。舉例而言,取決於所涉及之功能性,連續地展示之兩個區塊事實上可實質上同時執行,或該等區塊有時
可以相反次序執行。可以不同次序執行該等動作,或可添加、刪除或修改動作。又,術語「耦接」描述在兩個元件之間具有信號路徑且並不暗示該等元件之間的直接連接,其中在該等元件間無介入元件/連接。所有此等變化被視為本發明之一部分。
術語「約」、「實質上」、「大致」及其變化意欲包括與在本申請案申請時可用的設備上代管之特定量之量測相關聯的誤差程度。舉例而言,「約」可包括給定值之±8%或5%或2%的範圍。
本文中所使用之術語係僅出於描述特定實施例之目的且並不意欲限制本發明。如本文中所使用,單數形式「一」及「該」意欲亦包括複數形式,除非上下文另有清晰指示。應進一步理解,術語「包含」在本說明書中使用時指定所陳述特徵、整數、步驟、操作、元件及/或組件之存在,但並不排除一或多個其他特徵、整數、步驟、操作、元件組件及/或其群組之存在或添加。
雖然已結合僅有限數目個實施例而詳細地描述本發明,但應容易理解,本發明並不限於此等所描述實施例。更確切地,可修改本發明以併有迄今為止未描述之任何數目個變化、更改、取代或等效配置,但該等變化、更改、取代或等效配置與本發明之精神及範疇相稱。另外,雖然已描述本發明之各個實施例,但應理解,本發明之態樣可包括所描述實施例中之僅一些。因此,本發明不應被視為受到前述描述限制,而僅受到所附申請專利範圍之範疇限制。
100:流程圖/程序
102:區塊
104:區塊
106:區塊
108:區塊
110:區塊
112:區塊
114:區塊
116:區塊
118:區塊
120:區塊
122:區塊
124:區塊
126:區塊
128:區塊
130:區塊
Claims (20)
- 一種最佳化一電氣器件中之電力消耗之方法,該方法包含:由一處理器接收進入一等待狀態之指令,其中該指令包含一睡眠決策索引,該睡眠決策索引包含一睡眠作業碼、一參數和該處理器之一狀態;由該處理器監測由該睡眠決策索引所指定之一參數;由該處理器基於該參數達到該睡眠決策索引所指定之一值的決策,而起始進入一低功率模式之指令,其中該值基於先前事件或者狀態的歷史而被決策,並且其中該決策是基於將由該睡眠作業碼所指定的一演算法運用到該參數;由該處理器基於該參數而起始結束該低功率模式之指令;及經由一使用者介面而向一使用者提供該處理器之一當前狀態之通知。
- 如請求項1之方法,其中該參數包括執行階段資訊、指令資訊及經排程操作。
- 如請求項1之方法,其中該參數包括基於先前事件或狀態之一歷史而動態地改變臨限值。
- 如請求項1之方法,其中將進入及結束該低功率模式之該等指令發送至該電氣器件中之預定電路。
- 如請求項1之方法,其中該處理器含有基於所識別之該參數而進入及 結束該低功率模式之一預定指令集合。
- 如請求項1之方法,其中自一遠端位置存取該參數。
- 如請求項1之方法,其中進入及結束該低功率模式之該等指令包括將一事件之一啟動延遲一預定時間。
- 如請求項1之方法,其中進入該低功率模式之該等指令包括在一預定時間段之後排序一硬體器件以自該低功率模式轉變為例行操作。
- 如請求項1之方法,其中可將該參數作為該等指令之運算元而傳遞。
- 如請求項1之方法,其中進入及結束該低功率模式之該等指令包括在進入或結束該低功率模式之前將一延遲動作執行一預定時間量。
- 一種電腦系統,其包含:一記憶體,其具有電腦可讀指令;及一處理器,其用於執行該等電腦可讀指令,該等電腦可讀指令包括:用於接收進入一等待狀態之指令,其中該指令包含一睡眠決策索引,該睡眠決策索引包含一睡眠作業碼、一參數和該處理器之一狀態之指令;用於監測由該睡眠決策索引所指定之一參數之指令;用於基於該參數達到該睡眠決策索引所指定之一值的決策,而起始進入一低功率模式之指令,其中該值基於先前事件或者狀態的歷史而被決 策,並且其中該決策是基於將由該睡眠作業碼所指定的一演算法運用到該參數之指令;用於基於該參數而起始結束該低功率模式之指令之指令;及用於經由一使用者介面而向一使用者提供該處理器之一當前狀態之通知之指令。
- 如請求項11之系統,其中將進入及結束該低功率模式之該等指令發送至電氣器件中之預定電路。
- 如請求項11之系統,其中該處理器含有基於所識別之該參數而進入及結束該低功率模式之一預定指令集合。
- 如請求項11之系統,其中進入及結束該低功率模式之該等指令包括將一事件之一啟動延遲一預定時間。
- 如請求項11之系統,其中進入該低功率模式之該等指令包括在進入該低功率模式之前將一延遲動作執行一預定時間量。
- 一種電腦程式產品,其包含體現有程式指令之一電腦可讀儲存媒體,該等程式指令可由一電腦處理器執行以致使該電腦處理器執行一方法,該方法包含:由一處理器接收進入一等待狀態之指令,其中該指令包含一睡眠決策索引,該睡眠決策索引包含一睡眠作業碼、一參數和該處理器之一狀態; 由該處理器監測由該睡眠決策索引所指定之一參數;由該處理器基於該參數達到該睡眠決策索引所指定之一值的決策,而起始進入一低功率模式之指令,其中該值基於先前事件或者狀態的歷史而被決策,並且其中該決策是基於將由該睡眠作業碼所指定的一演算法運用到該參數;由該處理器基於該參數而起始結束該低功率模式之指令;及經由一使用者介面而向一使用者提供該處理器之一當前狀態之通知。
- 如請求項16之電腦程式產品,其中將進入及結束該低功率模式之該等指令發送至電氣器件中之預定電路。
- 如請求項16之電腦程式產品,其中該處理器含有基於所識別之該參數而進入及結束該低功率模式之一預定指令集合。
- 如請求項16之電腦程式產品,其中進入及結束該低功率模式之該等指令包括將一事件之一啟動延遲一預定時間。
- 如請求項16之電腦程式產品,其中進入該低功率模式之該等指令包括在進入該低功率模式之前將一延遲動作執行一預定時間量。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/419,574 | 2017-01-30 | ||
US15/419,574 US10627888B2 (en) | 2017-01-30 | 2017-01-30 | Processor power-saving during wait events |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201830197A TW201830197A (zh) | 2018-08-16 |
TWI690799B true TWI690799B (zh) | 2020-04-11 |
Family
ID=60888428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107100717A TWI690799B (zh) | 2017-01-30 | 2018-01-09 | 用於在等待事件期間之處理器節電之方法、電腦系統及電腦程式產品 |
Country Status (7)
Country | Link |
---|---|
US (1) | US10627888B2 (zh) |
JP (1) | JP6998385B2 (zh) |
CN (1) | CN110214299B (zh) |
DE (1) | DE112017005371B4 (zh) |
GB (1) | GB2573722B (zh) |
TW (1) | TWI690799B (zh) |
WO (1) | WO2018137870A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10445099B2 (en) * | 2016-04-19 | 2019-10-15 | Xiaolin Wang | Reconfigurable microprocessor hardware architecture |
JP2022064497A (ja) * | 2020-10-14 | 2022-04-26 | キオクシア株式会社 | メモリシステム |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200521709A (en) * | 2003-09-18 | 2005-07-01 | Vulcan Portals Inc | Method and apparatus for operating an electronic device in a low power mode |
US20060232809A1 (en) * | 2005-04-15 | 2006-10-19 | Eastman Kodak Company | RIP status monitor in a printer |
US20110154079A1 (en) * | 2009-12-18 | 2011-06-23 | Dixon Martin G | Instruction For Enabling A Procesor Wait State |
US20140304537A1 (en) * | 2013-04-09 | 2014-10-09 | International Business Machines Corporation | Method and apparatus for mitigating effects of memory scrub operations on idle time power savings modes |
TWI544324B (zh) * | 2014-09-29 | 2016-08-01 | 蘋果公司 | 用於控制一電腦系統中之操作狀態之低能量處理器 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2264794B (en) * | 1992-03-06 | 1995-09-20 | Intel Corp | Method and apparatus for automatic power management in a high integration floppy disk controller |
US6343363B1 (en) | 1994-09-22 | 2002-01-29 | National Semiconductor Corporation | Method of invoking a low power mode in a computer system using a halt instruction |
US7020788B2 (en) * | 2001-06-01 | 2006-03-28 | Microchip Technology Incorporated | Reduced power option |
JP4775278B2 (ja) * | 2007-02-14 | 2011-09-21 | セイコーエプソン株式会社 | 動作制御装置、電子機器、動作制御方法、および、プログラム |
US8006111B1 (en) * | 2007-09-21 | 2011-08-23 | Emc Corporation | Intelligent file system based power management for shared storage that migrates groups of files based on inactivity threshold |
US8112651B2 (en) * | 2008-09-25 | 2012-02-07 | Intel Corporation | Conserving power in a computer system |
US8156275B2 (en) | 2009-05-13 | 2012-04-10 | Apple Inc. | Power managed lock optimization |
JP2012232539A (ja) | 2011-05-09 | 2012-11-29 | Canon Inc | 印刷装置、データ処理装置、印刷装置の制御方法及びプログラム |
US8862917B2 (en) | 2011-09-19 | 2014-10-14 | Qualcomm Incorporated | Dynamic sleep for multicore computing devices |
JP2014073604A (ja) * | 2012-10-03 | 2014-04-24 | Canon Inc | 画像形成装置、画像形成装置の制御方法、及びプログラム |
US9110671B2 (en) * | 2012-12-21 | 2015-08-18 | Advanced Micro Devices, Inc. | Idle phase exit prediction |
US9632569B2 (en) * | 2014-08-05 | 2017-04-25 | Qualcomm Incorporated | Directed event signaling for multiprocessor systems |
-
2017
- 2017-01-30 US US15/419,574 patent/US10627888B2/en active Active
- 2017-12-21 CN CN201780084760.7A patent/CN110214299B/zh active Active
- 2017-12-21 JP JP2019539858A patent/JP6998385B2/ja active Active
- 2017-12-21 WO PCT/EP2017/084258 patent/WO2018137870A1/en active Application Filing
- 2017-12-21 GB GB1911911.4A patent/GB2573722B/en active Active
- 2017-12-21 DE DE112017005371.4T patent/DE112017005371B4/de active Active
-
2018
- 2018-01-09 TW TW107100717A patent/TWI690799B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200521709A (en) * | 2003-09-18 | 2005-07-01 | Vulcan Portals Inc | Method and apparatus for operating an electronic device in a low power mode |
US20060232809A1 (en) * | 2005-04-15 | 2006-10-19 | Eastman Kodak Company | RIP status monitor in a printer |
US20110154079A1 (en) * | 2009-12-18 | 2011-06-23 | Dixon Martin G | Instruction For Enabling A Procesor Wait State |
US20140304537A1 (en) * | 2013-04-09 | 2014-10-09 | International Business Machines Corporation | Method and apparatus for mitigating effects of memory scrub operations on idle time power savings modes |
TWI544324B (zh) * | 2014-09-29 | 2016-08-01 | 蘋果公司 | 用於控制一電腦系統中之操作狀態之低能量處理器 |
Also Published As
Publication number | Publication date |
---|---|
US10627888B2 (en) | 2020-04-21 |
CN110214299B (zh) | 2023-07-14 |
DE112017005371B4 (de) | 2021-08-26 |
WO2018137870A1 (en) | 2018-08-02 |
JP2020505696A (ja) | 2020-02-20 |
TW201830197A (zh) | 2018-08-16 |
CN110214299A (zh) | 2019-09-06 |
GB2573722B (en) | 2022-01-26 |
GB2573722A (en) | 2019-11-13 |
DE112017005371T5 (de) | 2019-07-11 |
JP6998385B2 (ja) | 2022-01-18 |
US20180217655A1 (en) | 2018-08-02 |
GB201911911D0 (en) | 2019-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2513746B1 (en) | System and method for controlling central processing unit power with guaranteed transient deadlines | |
US9176572B2 (en) | System and method for controlling central processing unit power with guaranteed transient deadlines | |
US9733965B2 (en) | Closed-loop feedback mechanism for achieving optimum performance in a consolidated workload environment | |
KR101648978B1 (ko) | 저전력 멀티코어 시스템에서의 전력 제어 방법 및 장치 | |
US20120017074A1 (en) | Dynamic system mode switching | |
US20130074085A1 (en) | System and method for controlling central processing unit power with guaranteed transient deadlines | |
US8869154B1 (en) | Controlling processor usage on a computing device | |
US9798582B2 (en) | Low latency scheduling on simultaneous multi-threading cores | |
TWI690799B (zh) | 用於在等待事件期間之處理器節電之方法、電腦系統及電腦程式產品 | |
WO2014123587A1 (en) | System and method for controlling central processing unit power with guaranteed transient deadlines | |
US20200192447A1 (en) | Reset isolation bridge | |
KR20130051076A (ko) | 응용프로그램 스케줄링 방법 및 장치 | |
US8225080B2 (en) | Grid processing control apparatus | |
KR101578336B1 (ko) | 보장된 과도 데드라인들로 중앙 프로세싱 유닛 전력을 제어하기 위한 시스템 및 방법 | |
US10528387B2 (en) | Computer processing system with resource optimization and associated methods | |
Petrucci et al. | Dynamic configuration support for power-aware virtualized server clusters | |
JP5678347B2 (ja) | Itシステムの構成方法、そのコンピュータプログラムおよびitシステム | |
US20110265982A1 (en) | Controlling coolant flow to multiple cooling units in a computer system | |
KR20140139371A (ko) | 멀티 코어 시스템 반도체 제어 장치 및 방법 | |
WO2021068707A1 (zh) | 应用程序的控制方法、装置、电子设备及存储介质 | |
CN113360344A (zh) | 一种服务器监控方法、装置、设备及计算机可读存储介质 | |
TW201728123A (zh) | 避免伺服器系統中的廣播流量的傳輸死鎖的電腦可讀媒體、系統及方法 | |
KR20170101748A (ko) | 전자 장치 및 이의 부팅 방법 | |
WO2013179954A1 (ja) | 電子装置 | |
Wu et al. | A New Real-Time Process Monitor Method Based on MRC |