專利名稱:用于計算設(shè)備的電源管理的空閑檢測度量縮放的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算設(shè)備等的電源管理,且具體地涉及將空閑檢測度量用 于這樣的電源管理來確定計算設(shè)備上的組件何時要進入增強的省電狀態(tài)。 具體地,本發(fā)明涉及基于組件的當前電量狀態(tài)縮放空閑檢測度量以便增加 達到該增強的省電狀態(tài)的可能性。背景應(yīng)當理解,諸如個人計算機等計算設(shè)備對于其組件中的至少一些采用 了電源管理技術(shù)以便最小化在這樣的計算設(shè)備操作期間所利用的電量。如 可以理解的,將關(guān)于這樣的計算設(shè)備的電量使用最小化表示了良好的做法, 即使在電量使用不是特別的考慮事項時,諸如例如可以是使用外部供應(yīng)的 市電操作的臺式計算機等的情況。更重要地,將關(guān)于這樣的計算設(shè)備的電 量使用最小化在電量使用實際上是特別的考慮實現(xiàn)時可能至關(guān)重要,諸如 例如可以是使用內(nèi)部供應(yīng)的電池電源操作的膝上型計算機等的情況。通常,盡管電源管理可以被應(yīng)用于計算設(shè)備的任何組件,但計算設(shè)備 中的電源管理被應(yīng)用于該計算設(shè)備中尤其是高耗電者的一個或多個組件。 計算設(shè)備中的高耗電組件的示例包括處理器、存儲設(shè)備(例如硬盤驅(qū)動器) 和顯示器。特別是關(guān)于計算設(shè)備的處理器,電源管理以兩種形式出現(xiàn)。在第一種 形式中,并記住處理器根據(jù)具有設(shè)定頻率的時鐘來操作,通過降低時鐘的 頻率來節(jié)省電量。推測一下,雖然降低頻率以大致成反比的方式增加實際 的處理器使用率,但是這樣的實際的處理器使用率在任何特定時間可能不 是很高,且無論如何如果實際的處理器使用率突然增加,則可增加時鐘的 頻率。在第二種形式中,且記住處理器和/或其部分可能有時實質(zhì)上未被使 用,尤其是在計算設(shè)備很少活動或沒有活動的時間期間,通過空閑處理器 的至少未使用的部分以便停止執(zhí)行來節(jié)省電量。例如,如果處理器是多核 處理器,則可以空閑這些核的一個或多個。同樣地,如果處理器包括諸如
數(shù)學(xué)部分、邏輯部分、安全部分、密碼部分等專用部分,則可以空閑這樣 的專用部分。類似地,可能除了一些核心功能之外,如可以接收中斷并基 于此重新激活處理器的中斷部分,可以空閑整個處理器。在任何這種情況 下,空閑的處理器的至少一部分可被稱為是'睡眠中',直到為實際的處 理任務(wù)而被重新激活為止。如可理解的,如在頻率降低和空閑之間,頻率降低導(dǎo)致相對較少的電 量節(jié)約,而空閑至少在瞬時的基礎(chǔ)上導(dǎo)致相對較大的電量節(jié)約。值得注意 的是,可以一起利用兩種形式的電源管理來降低處理器的總耗電。具體地, 在操作處理器的過程期間,執(zhí)行電源管理以基于處理器使用率和/或其它因 子調(diào)整時鐘的頻率,同時只要處理器使用率和/或其它因素允許則也空閑處 理器的至少一部分。特別是關(guān)于空閑,這一空閑是基于某一預(yù)定的空閑檢 測度量來執(zhí)行的。例如,這樣的空閑檢測度量可以是預(yù)定義的處理器不活 動時間段,如l毫秒不活動、1/10秒不活動或1秒不活動等。然而,且顯著地,可以理解,由于時鐘的頻率降低且實際的處理器使 用率對應(yīng)地增加,處理器或其至少一部分變得不活動并可被空閑的可能性 降低了。 S卩,由于時鐘的頻率下降,實際的處理器使用率對應(yīng)地增加,并 且處理器不活動的時間段通常變得更小,且可能小于預(yù)定的空閑檢測度量。 結(jié)果,雖然可以達到因頻率降低而獲得的相對較少的電量節(jié)約,但是卻不 能同樣地達到因空閑而獲得的相對較大的電量節(jié)約。因而,存在對于可以 用于增加處理器的空閑量以達到因空閑而獲得的相對較大的電量節(jié)約的方 法和機制的需求。具體地,存在對一方法和機制的需求,通過該方法和機 制可以根據(jù)時鐘的頻率縮放空閑檢測度量以便提高滿足空閑檢測度量的可 能性,處理器因而更經(jīng)常地被空閑,從而同樣地更經(jīng)常地達到因空閑而獲 得的相對較大的電量節(jié)約。概述上述需求由本發(fā)明滿足,在本發(fā)明中,提供了一種對計算設(shè)備的組件 執(zhí)行電源管理的方法。組件基于以一頻率振蕩的時鐘信號來操作,且該方 法包括在保證時調(diào)整應(yīng)用于該組件的時鐘信號的頻率,且還在該組件經(jīng)歷 了長于根據(jù)所調(diào)整的頻率縮放的空閑檢測度量的一段不活動時間時空閑該組件。具體地,為調(diào)整時鐘信號的頻率,獲得時鐘信號的最高頻率和最大空 閑檢測度量且監(jiān)視該組件。在某一點處,從被監(jiān)視的組件確定時鐘信號的 頻率可被調(diào)整到與最高頻率相比被降低了的所得頻率,且確定該所得頻率。所得頻率被應(yīng)用于時鐘信號,且基于時鐘信號的所得頻率調(diào)整經(jīng)縮放 的空閑檢測度量以使經(jīng)縮放的空閑檢測度量承擔與時鐘信號的所得頻率的 相對應(yīng)的關(guān)系并與最大空閑檢測度量相比被降低了。因此,即使在時鐘信 號的頻率被降低時該組件更可能經(jīng)歷更短的不活動時間段,但該組件更可 能基于經(jīng)縮放的和降低的空閑檢測度量而被空閑。附圖簡述以上概述以及以下本發(fā)明實施例的詳細描述在結(jié)合附圖閱讀時能夠被 更好地理解。出于說明本發(fā)明的目的,在附圖中示出目前優(yōu)選的各實施例。 然而,如應(yīng)理解的,本發(fā)明不限于所示的精確安排和手段。在附圖中
圖1是表示本發(fā)明和/或其部分的各方面可被納入其中的通用計算機系 統(tǒng)的框圖;圖2是示出根據(jù)本發(fā)明的各實施例的具有用于對于計算設(shè)備的一個或 多個組件執(zhí)行電源管理的電源管理器的計算設(shè)備的框圖;以及圖3是示出根據(jù)本發(fā)明的各實施例的由圖2的電源管理器執(zhí)行的關(guān)鍵 步驟的流程圖。詳細描述計算機環(huán)境圖1和以下討論旨在提供其中可實現(xiàn)本發(fā)明和/或其部分的合適計算環(huán) 境的簡要概括描述。盡管并非所需,但是本發(fā)明在諸如程序模塊等由諸如 客戶機工作站或服務(wù)器等計算機執(zhí)行的計算機可執(zhí)行指令的一般上下文中 描述。 一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的 例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等。而且,應(yīng)該理解,本發(fā)明和/或其 部分可用其它計算機系統(tǒng)配置來實踐,包括手持設(shè)備、多處理器系統(tǒng)、基于微處理器或可編程消費電子產(chǎn)品、網(wǎng)絡(luò)PC、小型機、大型計算機等。本 發(fā)明也可以在其中任務(wù)由通過通信網(wǎng)絡(luò)鏈接的遠程處理設(shè)備執(zhí)行的分布式
計算環(huán)境中實現(xiàn)。在分布式計算環(huán)境中,程序模塊可以位于本地和遠程存 儲器存儲設(shè)備中。如圖1所示,示例性通用計算系統(tǒng)包括常規(guī)個人計算機120等,該計算機包括處理單元121、系統(tǒng)存儲器122和將包括系統(tǒng)存儲器的各種系統(tǒng)組 件耦合到處理單元121的系統(tǒng)總線123。系統(tǒng)總線123可以是若干類型總線 結(jié)構(gòu)中的任一種,包括存儲器總線或存儲器控制器、外圍總線以及使用各 類總線體系結(jié)構(gòu)中的任一種的局部總線。系統(tǒng)存儲器包括只讀存儲器 (ROM)124和隨機存取存儲器(RAM)125。基本輸入/輸出系統(tǒng)126(BIOS) 包含有助于諸如啟動時在個人計算機120中的元件之間傳遞信息的基本例 程,它被存儲在ROM 124中。個人計算機120還包括對硬盤(未示出)讀寫的硬盤驅(qū)動器127、對 可移動磁盤129讀寫的磁盤驅(qū)動器128、以及對諸如CD-ROM或其它光學(xué) 介質(zhì)等可移動光盤131讀寫的光盤驅(qū)動器130。硬盤驅(qū)動器127、磁盤驅(qū)動 器128和光盤驅(qū)動器130分別通過硬盤驅(qū)動器接口 132、磁盤驅(qū)動器接口 133和光盤驅(qū)動器接口 134連接到系統(tǒng)總線123。驅(qū)動器及其相關(guān)聯(lián)的計算 機可讀介質(zhì)為個人計算機120提供了對計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序 模塊和其它數(shù)據(jù)的非易失性存儲。盡管此處所述的示例性環(huán)境使用硬盤、可移動磁盤129和可移動光盤 131,但是應(yīng)該理解,在示例性操作環(huán)境中也可使用能夠存儲可由計算機訪 問的數(shù)據(jù)的其它類型的計算機可讀介質(zhì)。這樣的其它類型介質(zhì)包括磁帶盒、 閃存卡、數(shù)字視頻盤、貝努利盒式磁帶、隨機存取存儲器(RAM)、只讀 存儲器(ROM)等??稍谟脖P、磁盤129、光盤131、 ROM 124或RAM 125上存儲多個程 序模塊,包括操作系統(tǒng)135、 一個或多個應(yīng)用程序136、其它程序模塊137 和程序數(shù)據(jù)138。用戶可通過諸如鍵盤140和定點設(shè)備142等輸入設(shè)備向個 人計算機120中輸入命令和信息。其它輸入設(shè)備(未示出)可以包括話筒、 操縱桿、游戲手柄、圓盤式衛(wèi)星天線、掃描儀等。這些和其它輸入設(shè)備通 常由耦合至系統(tǒng)總線的串行端口接口 146連接至處理單元121,但也可以由 其它接口,諸如并行端口、游戲端口或通用串行總線(USB)連接。監(jiān)視 器147或其它類型的顯示設(shè)備也經(jīng)由諸如視頻適配器148等接口連接至系 統(tǒng)總線123。除了監(jiān)視器147之外,個人計算機通常包括諸如揚聲器和打印 機等其它外圍輸出設(shè)備(未示出)。圖1的示例性系統(tǒng)也包括主適配器155、 小型計算機系統(tǒng)接口 (SCSI)總線156以及連接到SCSI總線156的外置存 儲設(shè)備162。個人計算機120可使用至一個或多個遠程計算機,諸如遠程計算機149 的邏輯連接在網(wǎng)絡(luò)化環(huán)境中操作。遠程計算機149可以是另一個人計算機、 服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等設(shè)備或其它常見的網(wǎng)絡(luò)節(jié)點,且通常包括 上文相對于個人計算機120描述的許多或所有元件,盡管在圖1中只示出 存儲器存儲設(shè)備150。圖1中所示邏輯連接包括局域網(wǎng)(LAN) 151和廣域 網(wǎng)(WAN) 152。這樣的聯(lián)網(wǎng)環(huán)境在辦公室、企業(yè)范圍計算機網(wǎng)絡(luò)、內(nèi)聯(lián) 網(wǎng)和因特網(wǎng)中是常見的。當在LAN聯(lián)網(wǎng)環(huán)境中使用時,個人計算機120通過網(wǎng)絡(luò)接口或適配器 153連接至LAN 151。當在WAN聯(lián)網(wǎng)環(huán)境中使用時,個人計算機120通常 包括調(diào)制解調(diào)器154或用于通過諸如因特網(wǎng)等廣域網(wǎng)152建立通信的其它 裝置?;驗閮?nèi)置或為外置的調(diào)制解調(diào)器154經(jīng)由串行端口接口 146連接到 系統(tǒng)總線123。在網(wǎng)絡(luò)化環(huán)境中,相對于個人計算機120所描述的程序模塊 或其部分可以存儲在遠程存儲器存儲設(shè)備中??梢岳斫?,示出的網(wǎng)絡(luò)連接 是示例性的,并且可以使用在計算機之間建立通信鏈路的其它手段。計算設(shè)備上的電源管理現(xiàn)轉(zhuǎn)向圖2,可以看到諸如個人計算機等計算設(shè)備IO利用電源管理器 12來管理其至少一些組件以最小化在這一計算設(shè)備10的操作其間所使用 的電量。通常,且如上所述,電源管理由計算設(shè)備10中的電源管理器12 應(yīng)用于計算設(shè)備10中尤其是高耗電者的一個或多個組件,如處理器14、存 儲設(shè)備16 (例如硬盤驅(qū)動器)和/或其控制器、和顯示器18和/或其控制器 和/或其圖形處理器。注意,電源管理器12可以是分開物理組件或可以被集成到另一組件中 而不背離本發(fā)明的精神和范圍。例如,電源管理器12可以是處理器14的 一部分(未示出),且可以被具體化為這一處理器14中的硬件或軟件。這
樣的電源管理器12是眾所周知或應(yīng)該對相關(guān)公眾顯而易見的,并因而除所 提供的之外,無需在此詳細闡明。特別是關(guān)于計算設(shè)備10的處理器14,電源管理器12執(zhí)行基于頻率降 低和空閑的電源管理。關(guān)于頻率降低,且如上所述,可以理解處理器14根 據(jù)某一頻率的振蕩時鐘信號20來操作,其中時鐘信號20在該頻率上的每 次振蕩實際上是在其期間處理器14執(zhí)行一設(shè)定量的處理工作的時鐘周期。 在此注意,時鐘信號20可以由計算設(shè)備IO的時鐘提供,或可以基于由這 樣的時鐘提供的某一信號來導(dǎo)出。如可以理解的,處理器14每單位時間所 執(zhí)行的處理工作的量至少大致對應(yīng)于時鐘信號20的頻率。因此,如果處理 器基于以頻率Y振蕩的時鐘信號20執(zhí)行X量的處理工作,則處理器基于 以頻率.75Y振蕩的時鐘信號20應(yīng)該至少大致執(zhí)行.75X量的處理工作。相應(yīng)地,且如還可理解的,處理器14執(zhí)行一設(shè)定量的處理工作所需要 的時間量至少大致與時鐘信號20的頻率成反比。因此,如果處理器基于以 頻率Y振蕩的時鐘信號20在時間T內(nèi)執(zhí)行一設(shè)定量的處理工作,則處理 器基于以頻率.5Y振蕩的時鐘信號20應(yīng)該至少大致在時間2T內(nèi)執(zhí)行該設(shè) 定量的處理工作。在頻率降低時,所有所述的電源管理器12通過將時鐘信號20的頻率 降低到某一預(yù)定值來節(jié)省電量。雖然降低時鐘信號20的頻率增加處理器14 用來執(zhí)行一設(shè)定量的工作的時間量,但期望的是基于公知的且一般無需在 此詳細闡明的各輔助益處來降低總體電量。原則上,較低頻率允許處理器 14以較低的電壓運行,且這樣的較低電壓導(dǎo)致處理器14消耗較少電量。值 得注意的是,處理器14用來執(zhí)行一設(shè)定量的工作的增加的時間量可能不會 對處理器14的總體性能產(chǎn)生不利影響,尤其是因為處理器14在任何特定 時間都可能擁有剩余處理能力,且如果由于處理增加的活動等而使性能突 然下降,無論如何都可以增加時鐘信號20的頻率。關(guān)于空閑,應(yīng)該記住,處理器14和/或其一部分可能有時實質(zhì)上并未 被使用,尤其是在很少或沒有計算設(shè)備活動的時候的期間。因此,電源管 理器12可以通過空閑處理器14的至少一部分以停止執(zhí)行來節(jié)省電量。這 樣的空閑能以任何適當?shù)姆绞竭_到而不背離本發(fā)明的精神和范圍,只要這
樣的空閑導(dǎo)致所需的電量節(jié)省。例如,如果處理器14是多核處理器,則這些核的一個或多個可以被空閑。同樣地,如果處理器14包括諸如數(shù)學(xué)部分、 邏輯部分、安全部分、密碼部分等專用部分,則可以空閑一個或多個這樣 的專用部分。然而,最典型地,可以空閑整個處理器14,可能除了一些核 心功能之外,如可以接收中斷并基于此重新激活處理器14的中斷部分。處理器14的實際空閑本身可以采取任何適當?shù)男问蕉槐畴x本發(fā)明 的精神和范圍。例如,這樣的實際空閑可以通過移除應(yīng)用于處理器14的振 蕩時鐘信號20或通過斷開或降低到處理器14的電源來達到。在任何這種 情況下,空閑的處理器14的至少一部分可被稱為是"睡眠中",直到為實 際的處理任務(wù)而被重新激活為止。這樣的重新激活是眾所周知或應(yīng)該對相 關(guān)公眾是顯而易見的,并因而除所提供的之外,無需在此詳細闡明。縮放空閑檢測度量如上所述,電源管理器12通過對處理器14執(zhí)行頻率降低而達到相對 較少的電量節(jié)約。對應(yīng)地,通過對處理器14執(zhí)行空閑,電源管理器12至 少在瞬時的基礎(chǔ)上達到相對較大的電量節(jié)約。因而,且在本發(fā)明的一實施 例中,電源管理器12可用于最大化處理器14的空閑以便獲得相對較大的 電量節(jié)約。通常,電源管理器12利用處理器14上的頻率降低和空閑兩者來由此 降低總耗電。具體地,在操作處理器的過程期間,電源管理器12基于處理 器使用率和/或其它因素來調(diào)整時鐘信號20的頻率,并且另外,只要處理器 使用率和/或其它因素允許,電源管理器12就空閑處理器20的至少一部分。 特別是關(guān)于空閑,這一空閑是基于某預(yù)定的且靜態(tài)的空閑檢測度量的出現(xiàn) 來執(zhí)行的。例如,這樣的空閑檢測度量可以是預(yù)定義的處理器不活動時間 段,如l毫秒不活動、1/10秒不活動或1秒不活動等。因此,電源管理器 12監(jiān)視處理器14的如由預(yù)定的空閑檢測度量所定義的一段不活動時間,并 且如果實際上檢測到這樣一段不活動時間,電源管理器12通過使該處理器 14適當?shù)剡M入空閑模式來空閑處理器14。然而,值得注意的是,如果預(yù)定的且靜態(tài)的空閑檢測度量設(shè)置得很差, 則電源管理器12可能無意地偏愛頻率降低超過了空閑,即使電源管理器12
實際上應(yīng)該偏愛空閑超過頻率降低以最大化電量節(jié)約。具體地,且假定電 源管理器12正并行地執(zhí)行頻率降低和空閑,并且在適當時,情況可以是時鐘信號20的頻率被降低、處理器14變得過于繁忙以致電源管理器12沒有 檢測到由設(shè)定的空閑檢測度量所定義的活動周期。即,由于時鐘信號20的 頻率被電源管理器12降低,因此處理器14的實際使用率對應(yīng)地增加,并 且處理器14的不活動時間段通常變得更小,并可能小于設(shè)定的空閑檢測度作為總結(jié),雖然降低頻率節(jié)約了電量,但是處理器14的降低頻率的操 作也減少不活動時間段的數(shù)量及其長度,造成的結(jié)果是不滿足設(shè)定的空閑 檢測度量且處理器14即使不是根本不被空閑,也未被以任何顯著的方式空 閑。結(jié)果,雖然電源管理器12達到因頻率降低而獲得的相對較少的電量節(jié) 約,但是該電源管理器12不能達到因空閑而獲得的相對較大的電量節(jié)約。 考慮其中具有電源管理器12和處理器14的場景,其中在電源管理器12空 閑處理器12之前,處理器14必須累積100ms的連續(xù)空閑時間(即設(shè)定的 空閑檢測度量是100ms)?,F(xiàn)在,假定電源管理器12將時鐘信號20的頻率 降低50% ,如從lGHz到500MHz。通過將頻率降低一半,處理器14理論 上至少花兩倍長的時間來完成每一任務(wù)。因此,處理器的工作量加倍了, 且累積100ms的連續(xù)空閑時間的可能性可能相當大地降低了。貝U,如可以理解的,問題的根源是空閑檢測度量未基于時鐘頻率的調(diào) 整來調(diào)整。因而,在本發(fā)明的一實施例中,電源管理器12根據(jù)時鐘信號20 的頻率來縮放空閑檢測度量,如下更詳細地闡述的。因此,隨著電源管理 器12降低時鐘信號20的頻率和處理器14的使用率由此增加,電源管理器 12還降低空閑檢測度量以基于所檢測到的滿足(經(jīng)縮放的)空閑檢測度量 的不活動時間段來增加處理器14將至少偶爾被空閑的可能性。類似地,隨 著電源管理器12提高時鐘信號20的頻率和處理器14的使用率由此減少, 電源管理器12也增加空閑檢測度量。值得注意的是,電源管理器12可以根據(jù)時鐘信號20的頻率以任何適 當?shù)姆绞娇s放空閑檢測度量而不背離本發(fā)明的精神和范圍。例如,情況可 以是空閑檢測度量和頻率以成比例的方式縮放。因此,如果時鐘信號20的
最高頻率是X且在最高頻率下的最大空閑檢測度量被定義為Y,則在頻率降到/縮到X的90%時空閑檢測度量被縮到Y(jié)的90%;在頻率降到/縮到X 的80%時空閑檢測度量被縮到Y(jié)的80%,等等。最大空閑檢測度量的縮放%=最高頻率的縮放%類似地,情況可以是空閑檢測度量和頻率以比例平方的方式縮放。因 此,并且再一次,如果時鐘信號20的最高頻率是X且在最高頻率下的最大 空閑檢測度量被定義為Y,則在頻率降到/縮到X的90%時空閑檢測度量被 縮到的Y的81%;在頻率降到/縮到X的80%時空閑檢測度量被縮到Y(jié)的 64%,等等。最大空閑檢測度量的縮放%=(最高頻率的縮放%)2?;氐缴鲜鰣鼍埃F(xiàn)在考慮電源管理器12和處理器14,其中在時鐘信 號20的頻率處于最高的lGHz時在電源管理器12空閑處理器12之前,處 理器14必須累積100ms的連續(xù)空閑時間(即設(shè)定的空閑檢測度量是 100ms),并且再一次假定電源管理器12將時鐘信號20的頻率降低50%, 如從lGHz到500MHz。再一次,通過將頻率降低一半,處理器14理論上 至少花兩倍長時間來完成每一任務(wù)且處理器的工作量加倍了。然而,在電 源管理器12按比例縮放空閑檢測度量的情況下,該度量現(xiàn)在是50ms (即 一半,像頻率一樣),且累積50ms的連續(xù)空閑時間的可能性自然好于累積 100ms的連續(xù)空閑時間的可能性。結(jié)果,電源管理器12空閑處理器的可能 性顯著增加,而對應(yīng)的電量節(jié)約的增加也是如此。此外,在電源管理器12根據(jù)最高頻率的百分比縮放的平方來縮放空閑 檢測度量的情況下,該度量現(xiàn)在是25ms (即0.5的平方乘以100ms,或.5 X.5X100ms),且累積25ms的連續(xù)空閑時間的可能性自然好于累積50ms 或100ms的連續(xù)空閑時間的可能性。結(jié)果,電源管理器12空閑處理器的可 能性甚至更顯著地增加,而對應(yīng)的電量節(jié)約的增加也是如此。
如可以理解的,縮放空閑檢測度量的實際方法(按比例、按比例平方 等)可以從任何縮放方法中選擇而不背離本發(fā)明的精神和范圍。此外,可 以基于任何準則并根據(jù)任何方法,包括科學(xué)的和經(jīng)驗觀察,來選擇這樣的 方法。因此,可以是例如這樣的情況,實際的縮放方法基于盲估計或基于 實驗或甚至基于處理器14在某組給定情況下的某一目標量的空閑來選擇。無論如何,且現(xiàn)轉(zhuǎn)向圖3,選擇了這一縮放空閑檢測度量的實際方法之后,電源管理器12—般以如下方法操作。最初,向電源管理器12提供 相關(guān)信息,包括時鐘信號20的最高頻率和最大空閑檢測度量等等(步驟 301)。其后,電源管理器12通過監(jiān)視處理器14的操作來繼續(xù)(步驟303)。 在此注意,對處理器14的監(jiān)視可以包括對涉及處理器的操作的任何適當?shù)?統(tǒng)計數(shù)據(jù)的監(jiān)視而不背離本發(fā)明的精神和范圍。例如,電源管理器12可以 監(jiān)視涉及處理器14的使用率的統(tǒng)計數(shù)據(jù)。在某點處,基于所監(jiān)視的處理器14的操作,電源管理器可以確定正向 處理器14提供振蕩信號的時鐘信號20的頻率可能被更改到這一頻率的最 高值的某一百分比,等等(步驟305)。這一確定可基于任何適當?shù)呐卸ㄟ^ 程來達到而不背離本發(fā)明的精神和范圍。例如,這一確定可以基于對處理 器14的使用率已低于預(yù)定值達預(yù)定的一段時間的觀察來做出。無論如何,基于這一確定,電源管理器12計算或以其它方式確定該頻 率的最高值的百分比和所得頻率(步驟307),并實際上將這一所得頻率應(yīng) 用于時鐘信號20 (步驟309)。這一計算或確定和應(yīng)用可按照任何適當?shù)?方式來執(zhí)行而不背離本發(fā)明的精神和范圍。例如,這一計算可以基于處理 器14的目標使用率,而這一應(yīng)用可以通過將一特定值加載到與時鐘信號20 相關(guān)聯(lián)的寄存器中來進行。在此注意,所得頻率可以是增加或降低,取決 于現(xiàn)有的值是什么,并假定該過程是以迭代的方式執(zhí)行的。注意,對時鐘 信號20的頻率的調(diào)整可以在計算設(shè)備10的時鐘上執(zhí)行,或者如果該時鐘 不可調(diào)整則在其它位置上執(zhí)行。除調(diào)整時鐘信號20的頻率之外,且在本發(fā)明的一實施例中,電源管理 器還調(diào)整被用來確定是否空閑處理器14的空閑檢測度量。具體地,且如上 所述,基于對時鐘信號20的調(diào)整,電源管理器基于電源管理器12所利用
的任何空閑檢測度量縮放算法(成比例、比例平方等)來縮放空閑檢測度量(步驟311)。其后,至少關(guān)于頻率降低,步驟303-311的過程對于電源 管理器12終止。然而,注意,如上所述,步驟303-311的這一過程可以或 以某一預(yù)定迭代速率或基于改變的情況按需在正在進行的基礎(chǔ)上迭代地執(zhí) 行。無論如何,且仍參考圖3,可以看到除步驟305-311的頻率降低(調(diào)整) 過程之外,電源管理器還基于在步驟311處產(chǎn)生的經(jīng)縮放的空閑檢測度量 來周期性地執(zhí)行空閑檢測過程。具體地,電源管理器12在如在步驟303處 監(jiān)視處理器14的操作時可以確定處理器14已進入一段空閑時間(步驟 313),其中處理器14實質(zhì)上未被調(diào)用來執(zhí)行任何實質(zhì)性操作。這樣的實 質(zhì)性操作以及通過擴展而得的非實質(zhì)性操作可以被定義為任何適當?shù)牟僮?而不背離本發(fā)明的精神和范圍。例如,實質(zhì)性操作可以響應(yīng)于中斷、調(diào)用 等被執(zhí)行,而非實質(zhì)性操作可以是不響應(yīng)于任何這樣的中斷、調(diào)用等被執(zhí) 行的管理性任務(wù)等。無論如何,在如在步驟313處那樣確定處理器14已進入一段空閑時間 時,電源管理器12隨后通過對其可用的適當?shù)臏y量工具來測量該段空閑時 間(步驟315),并在確定該段空閑時間超過經(jīng)縮放的空閑檢測度量時(步 驟317)時,電源管理器12將處理器14空閑(步驟319)。其后,至少關(guān) 于空閑,步驟303和313-319的過程對于電源管理器12終止。在此注意, 如前所述,尤其是如果處理器14未被空閑時,可以或以某一預(yù)定的迭代速 率或基于改變的情況按需在正在進行的基礎(chǔ)上迭代地執(zhí)行空閑過程的至少 一部分(即,直到步驟317)。如可以理解的,如果被空閑,則可以掛起迭 代空閑過程,直到處理器14被重新激活為止。結(jié)論實現(xiàn)關(guān)于本發(fā)明執(zhí)行的過程所需的編程相當直接,且應(yīng)對相關(guān)編程公 眾是顯而易見的。因而,這樣的編程不附在此。因此,可采用任何特定的 編程來實現(xiàn)本發(fā)明,而不背離其精神和范圍。在前述描述中,可以看到本發(fā)明包括可以用于增加處理器14的空閑量 以便達到因空閑而獲得的相對較大的電量節(jié)約的新的且有用的方法和機
制。具體地,根據(jù)時鐘信號20的頻率縮放空閑檢測度量以便增加滿足空閑 檢測度量的可能性,處理器14因而更經(jīng)常地被空閑,從而同樣地更經(jīng)常地 達到因空閑而獲得的相對較大的電量節(jié)約。應(yīng)當理解,可對上述實施例作出改變而不脫離其發(fā)明概念。僅作為一 示例,雖然本發(fā)明最初是按照根據(jù)時鐘信號的可調(diào)整頻率來縮放空閑檢測度量來闡明的,但這樣的縮放可以另選地根據(jù)如應(yīng)用于處理器14的另外的 可調(diào)整參數(shù)來執(zhí)行,包括但不限于提供給處理器14的電壓、處理器14的 循序狀態(tài)等。作為另一示例,雖然本發(fā)明最初是按照關(guān)于處理器14的電源 管理來闡明的,但這樣的電源管理可以另選地關(guān)于計算設(shè)備10的其它可調(diào) 整組件來執(zhí)行,包括存儲設(shè)備(例如,硬盤驅(qū)動器)、計算設(shè)備10的顯示 器18、控制器、輔助處理器等。特別是關(guān)于度計算設(shè)備IO的其它組件執(zhí)行電源管理,應(yīng)該理解,這一 電源管理可以基于應(yīng)用于處理器14的時鐘信號20的頻率或基于某一其它 可用的但卻是關(guān)于時間度量或其它組件的其它度量的變量來執(zhí)行。因此, 如果總體計算設(shè)備10空閑(即在計算設(shè)備10的處理器14上操作的操作系 統(tǒng)將大多數(shù)的時間花在空閑循環(huán)中),則電源管理器12或一類似組件可以 縮放計算設(shè)備10的各種組件的電源超時度量。例如,如果計算設(shè)備10包 括在其發(fā)送信號被按比例縮回之前具有60秒超時度量的無線網(wǎng)絡(luò)接口設(shè) 備,且如果根據(jù)本發(fā)明的縮放的空閑檢測度量確定要空閑計算設(shè)備10,則 該超時檢測度量還能以成比例、比例平方等的方式按比例縮回。類似地, 還可以縮放其它超時度量,包括關(guān)于硬盤、USB數(shù)據(jù)總線和其它組件的度從而應(yīng)理解,本發(fā)明不限于所公開的具體實施例,而是旨在覆蓋落入 如由所附權(quán)利要求書定義的本發(fā)明的精神和范圍內(nèi)的修改。
權(quán)利要求
1. 一種用于對計算設(shè)備的組件執(zhí)行電源管理的方法,所述組件基于以一頻率振蕩的時鐘信號來操作,所述方法包括在保證時調(diào)整應(yīng)用于所述組件的所述時鐘信號的頻率且還在所述組件經(jīng)歷長于根據(jù)所述經(jīng)調(diào)整的頻率縮放的空閑檢測度量的一段不活動時間時空閑所述組件,其中調(diào)整所述時鐘信號的頻率包括獲取所述時鐘信號的最高頻率和最大空閑檢測度量;監(jiān)視所述組件;從所述被監(jiān)視的組件確定所述時鐘信號的頻率可被調(diào)整為與所述最高頻率相比被降低了的所得頻率;確定所述所得頻率;將所述所得頻率應(yīng)用于所述時鐘信號;以及基于所述時鐘信號的所得頻率調(diào)整所述經(jīng)縮放的空閑檢測度量,以使所述經(jīng)縮放的空閑檢測度量承擔與所述時鐘信號的所得頻率的對應(yīng)關(guān)系且與所述最大空閑檢測度量相比被降低,藉此,即使在所述時鐘信號的頻率被降低時所述組件更可能經(jīng)歷更短的不活動時間段,所述組件也更可能基于所述經(jīng)縮放的和降低的空閑檢測度量而被空閑。
2. 如權(quán)利要求l所述的方法,其特征在于,所述組件是計算設(shè)備的處 理器和所述計算設(shè)備的處理器的一部分中的一個。
3. 如權(quán)利要求l所述的方法,其特征在于,包括在保證時基于所監(jiān)視 的所述組件的使用率來降低應(yīng)用于所述組件的所述時鐘信號的頻率。
4. 如權(quán)利要求l所述的方法,其特征在于,所述所得頻率是增加的頻 率和減小的頻率中的一個。
5. 如權(quán)利要求l所述的方法,其特征在于,包括 確定所述所得頻率為所述時鐘信號的最高頻率的百分比(最高頻率的%);以及 ,基于應(yīng)用于所述最大空閑檢測度量的這一最高頻率的%來調(diào)整所述經(jīng) 縮放的空閑檢測度量。
6. 如權(quán)利要求5所述的方法,其特征在于,包括將所述經(jīng)縮放的空閑檢測度量調(diào)整為經(jīng)縮放的檢測度量=最高頻率的% X最大空閑檢測度量。
7. 如權(quán)利要求5所述的方法,其特征在于,包括將所述經(jīng)縮放的空閑檢測度量調(diào)整為經(jīng)縮放的檢測度量=(最高頻率的^)2X最大空閑檢測度量。
8. 如權(quán)利要求l所述的方法,其特征在于,空閑所述組件包括 確定所述組件已經(jīng)進入一段不活動時間; 測量所述不活動時間段;確定所測量的不活動時間段超過所述經(jīng)縮放的空閑檢測度量;以及 空閑所述組件。
9. 一種其上存儲有用于對計算設(shè)備的組件執(zhí)行電源管理的方法的計 算機可執(zhí)行指令的計算機可讀介質(zhì),所述組件基于以一頻率振蕩的時鐘信 號來操作,所述方法包括在保證時調(diào)整應(yīng)用于所述組件的所述時鐘信號的 頻率且還在所述組件經(jīng)歷長于根據(jù)所述經(jīng)調(diào)整的頻率縮放的空閑檢測度量 的一段不活動時間時空閑所述組件,其中調(diào)整所述時鐘信號的頻率包括獲取所述時鐘信號的最高頻率和最大空閑檢測度量; 監(jiān)視所述組件;從所述被監(jiān)視的組件確定所述時鐘信號的頻率可被調(diào)整為與所述最高 頻率相比被降低的所得頻率; 確定所述所得頻率;將所述所得頻率應(yīng)用于所述時鐘信號;以及基于所述時鐘信號的所得頻率調(diào)整所述經(jīng)縮放的空閑檢測度量,以使 所述經(jīng)縮放的空閑檢測度量承擔與所述時鐘信號的所得頻率的對應(yīng)關(guān)系且 與所述最大空閑檢測度量相比被降低,藉此,即使在所述時鐘信號的頻率被降低時所述組件更可能經(jīng)歷更短 的不活動時間段,所述組件也更可能基于所述經(jīng)縮放的和被降低的空閑檢 測度量而被空閑。
10. 如權(quán)利要求9所述的介質(zhì),其特征在于,所述組件是所述計算設(shè)備的處理器和所述計算設(shè)備的處理器的一部分中的一個。
11. 如權(quán)利要求9所述的介質(zhì),其特征在于,所述方法包括在保證時 基于所監(jiān)視的所述組件的使用率來降低應(yīng)用于所述組件的所述時鐘信號的 頻率。
12. 如權(quán)利要求9所述的介質(zhì),其特征在于,所述所得頻率是增加的 頻率和減小的頻率中的一個。
13. 如權(quán)利要求9所述的介質(zhì),其特征在于,所述方法包括 確定所述所得頻率為所述時鐘信號的最高頻率的百分比(最高頻率的%);以及基于應(yīng)用于所述最大空閑檢測度量的這一最高頻率的%來調(diào)整所述經(jīng) 縮放的空閑檢測度量。
14. 如權(quán)利要求13所述的介質(zhì),其特征在于,所述方法包括將所述經(jīng)縮放的空閑檢測度量調(diào)整為經(jīng)縮放的檢測度量=最高頻率的% X最大空閑檢測度量。
15. 如權(quán)利要求13所述的介質(zhì),其特征在于,所述方法包括將所述經(jīng)縮放的空閑檢測度量調(diào)整為經(jīng)縮放的檢測度量=(最高頻率的^)2X最大空閑檢測度量。
16. 如權(quán)利要求9所述的介質(zhì),其特征在于,空閑所述組件包括-確定所述組件已經(jīng)進入一段不活動時間; 測量所述不活動時間段;確定所測量的不活動時間段超過所述經(jīng)縮放的空閑檢測度量;以及 空閑所述組件。
17. —種用于基于計算設(shè)備的處理器對所述計算設(shè)備的組件執(zhí)行電源 管理的方法,所述處理器基于以一頻率振蕩的時鐘信號來操作,所述方法 包括在保證時調(diào)整應(yīng)用于所述處理器的所述時鐘信號的頻率且還在所述組 件經(jīng)歷長于根據(jù)所述經(jīng)調(diào)整的頻率縮放的空閑檢測度量的一段不活動時間 時降低所述組件的電量使用率,其中調(diào)整所述時鐘信號的頻率包括獲取所述時鐘信號的最高頻率和最大空閑檢測度量; 監(jiān)視所述處理器;從所述被監(jiān)視的處理器確定所述時鐘信號的頻率可被調(diào)整為與所述最高頻率相比被降低的所得頻率;確定所述所得頻率;將所述所得頻率應(yīng)用于所述時鐘信號;以及基于所述時鐘信號的所得頻率調(diào)整所述經(jīng)縮放的空閑檢測度量以使所 述經(jīng)縮放的空閑檢測度量承擔與所述時鐘信號的所得頻率的對應(yīng)關(guān)系且與 所述最大空閑檢測度量相比被降低,藉此,即使在所述時鐘信號的頻率被降低時所述組件更可能經(jīng)歷更短 的不活動時間段,所述組件也更可能基于所述經(jīng)縮放的和降低的空閑檢測 度量而被空閑。
18. 如權(quán)利要求17所述的方法,其特征在于,包括-確定所述所得頻率為所述時鐘信號的最高頻率的百分比(最高頻率的%);以及基于應(yīng)用于所述最大空閑檢測度量的這一最高頻率的%來調(diào)整所述經(jīng) 縮放的空閑檢測度量。
19. 如權(quán)利要求18所述的方法,其特征在于,包括將所述經(jīng)縮放的空 閑檢測度量調(diào)整為經(jīng)縮放的檢測度量=最高頻率的% X最大空閑檢測度量。
20. 如權(quán)利要求18所述的方法,其特征在于,包括將所述經(jīng)縮放的空 閑檢測度量調(diào)整為經(jīng)縮放的檢測度量=(最高頻率的%)2乂最大空閑檢測度量。
全文摘要
基于以一頻率振動的時鐘信號來操作計算設(shè)備的諸如處理器等的組件。在保證時通過調(diào)整被應(yīng)用于該組件的時鐘信號的頻率,并且還通過在該組件經(jīng)歷長于根據(jù)所調(diào)整的頻率縮放的空閑檢測度量的一段不活動時間時空閑該組件,來執(zhí)行對該計算設(shè)備的電源管理。
文檔編號G06F1/28GK101401056SQ200780009169
公開日2009年4月1日 申請日期2007年3月8日 優(yōu)先權(quán)日2006年3月14日
發(fā)明者A·馬歇爾, M·H·霍利 申請人:微軟公司