欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于處理器的功率管理的方法和裝置的制作方法

文檔序號:6586545閱讀:212來源:國知局

專利名稱::用于處理器的功率管理的方法和裝置的制作方法用于處理器的功率管理的方法和裝置
背景技術(shù)
:—些計(jì)算機(jī)系統(tǒng)可以使用自適應(yīng)功率管理策略來管理功耗和能耗。通過動態(tài)電壓和頻率縮放(DVFS)來管理功率和能量。在計(jì)算機(jī)系統(tǒng)的該示例中,當(dāng)中央處理單元(CPU)利用率減少時,處理器可以轉(zhuǎn)變到較低的性能狀態(tài)以節(jié)約能量。當(dāng)CPU利用率增加時,處理器可以轉(zhuǎn)變到較高的性能狀態(tài)并且可以消耗更多的能量。為了控制處理器的頻率/電壓狀態(tài),定義了一種稱為高級配置和電源接口(ACPI)的工業(yè)標(biāo)準(zhǔn)接口。在ACPI術(shù)語中,頻率/電壓狀態(tài)稱為性能狀態(tài)(P狀態(tài))。P狀態(tài)控制的普通實(shí)現(xiàn)是基于需求的。在現(xiàn)有的基于ACPI的平臺中,操作系統(tǒng)(OS)可以加載性能狀態(tài)(P狀態(tài))信息的表格。用對應(yīng)的控制、狀態(tài)和時延信息來表示處理器的工作頻率。此外,為了向上或向下轉(zhuǎn)變到下一個P狀態(tài),OS可以保持每個狀態(tài)的利用率值。OS可以在任意給定時間通過直接控制所計(jì)算的P狀態(tài)來管理CPU的P狀態(tài)。例如,提供了預(yù)定的P狀態(tài)的范圍以控制處理器功耗。當(dāng)CPU利用率減少時,處理器轉(zhuǎn)變到較低的預(yù)定的P狀態(tài)以節(jié)約能量。當(dāng)CPU利用率增加時,處理器轉(zhuǎn)變到較高的預(yù)定的預(yù)定的P狀態(tài)并且會消耗更多的能量。在現(xiàn)有的操作系統(tǒng)中,目標(biāo)P狀態(tài)的選擇基于處理器利用率和最近選擇的P狀態(tài)的組合。但是,OS對用戶偏好、應(yīng)用類型(例如,實(shí)時需求、視覺質(zhì)量需求等)具有更多的可見性,并且對于由處理器的硬件和微架構(gòu)所引起的處理器的工作量的變化不能足夠快地響應(yīng)。在說明書的結(jié)束部分中特別地指出并且清楚地聲明了作為本發(fā)明的主題。但是,通過結(jié)合附圖閱讀以下的詳細(xì)說明可以最好地理解本發(fā)明,包括操作的組織和方法,及其目的、特征和優(yōu)勢,其中圖1是根據(jù)本發(fā)明的實(shí)施例的計(jì)算機(jī)系統(tǒng)的框圖的示意性說明;圖2是根據(jù)本發(fā)明的一些示例性實(shí)施例的處理平臺的一部分的框圖的示意性說明;圖3是根據(jù)本發(fā)明的一些示例性實(shí)施例的示出了P狀態(tài)值隨時間而改變的時序圖的說明;圖4是根據(jù)本發(fā)明的一些示例性實(shí)施例的,設(shè)置P狀態(tài)值的范圍內(nèi)的較高的P狀態(tài)值的方法的流程的說明;以及圖5是根據(jù)本發(fā)明一些示例性實(shí)施例的,設(shè)置P狀態(tài)值的范圍內(nèi)的較低的P狀態(tài)值的方法的流程的說明;應(yīng)當(dāng)理解,為了說明的簡便和清楚,在圖中示出的元件并非必然按照比例描繪。例如,為了清楚起見,相對于其它元件可以放大一些元件的尺寸。此外,在適當(dāng)?shù)那闆r下,在各圖中可以重復(fù)使用附圖標(biāo)記以指示對應(yīng)的或類似的元件。具體實(shí)施例方式在以下詳細(xì)的描述中,闡明了大量具體的細(xì)節(jié)以提供對本發(fā)明的透徹的理解。但是,本領(lǐng)域普通技術(shù)人員應(yīng)當(dāng)理解,在沒有這些具體的細(xì)節(jié)的情況下可以實(shí)現(xiàn)本發(fā)明。在其它示例中,沒有詳細(xì)地描述已知的方法、過程、部件和電路,以便不模糊本發(fā)明。使用對計(jì)算機(jī)存儲器內(nèi)的數(shù)據(jù)位或二進(jìn)制數(shù)字信號的操作的算法和符號表示來呈現(xiàn)下列詳細(xì)說明的一些部分。這些算法描述和表示可以是數(shù)據(jù)處理領(lǐng)域的技術(shù)人員所使用的技術(shù),其用于將他們的工作的實(shí)質(zhì)傳達(dá)給本領(lǐng)域的其他技術(shù)人員。除非具體地聲明,否則根據(jù)以下討論顯而易見的是,應(yīng)當(dāng)理解貫穿該說明書,使用術(shù)語例如"處理"、"計(jì)算"、"運(yùn)算"、"確定"等的討論是指計(jì)算機(jī)或計(jì)算系統(tǒng)或類似的電子計(jì)算設(shè)備的動作和/或處理,其操作表示為物理量(例如,電子、計(jì)算系統(tǒng)的寄存器和/或存儲器內(nèi)的物理量)的數(shù)據(jù),和/或?qū)⑦@些數(shù)據(jù)轉(zhuǎn)換為類似地表示為計(jì)算系統(tǒng)的存儲器、寄存器或其它這種信息存儲、傳輸或顯示設(shè)備內(nèi)的物理量的其它數(shù)據(jù)。此外,術(shù)語"多個"可以貫穿說明書使用,以描述兩個或多個部件、設(shè)備、元件和參數(shù)等。例如,"多個指令"描述兩個或多個指令。應(yīng)當(dāng)理解,本發(fā)明可以用在各種應(yīng)用中。本文公開的通過框圖、流程圖、時序圖等說明的電路和技術(shù)可以用在多個裝置中,例如計(jì)算機(jī)系統(tǒng)、處理器、CPU等,盡管本發(fā)明并不限于此。意圖包括在本發(fā)明的范圍內(nèi)的處理器包括以下例子精簡指令集計(jì)算機(jī)(RISC)、具有流水線的處理器、復(fù)雜指令集計(jì)算機(jī)(CISC)、多核處理器、計(jì)算機(jī)平臺等。例如,可以使用存儲指令或指令集的計(jì)算機(jī)可讀介質(zhì)或制品來實(shí)現(xiàn)本發(fā)明的一些實(shí)施例,如果由機(jī)器來執(zhí)行所述指令(例如,通過處理器和/或通過其它適當(dāng)?shù)臋C(jī)器),則使得機(jī)器執(zhí)行根據(jù)本發(fā)明的實(shí)施例的方法和/或操作。這種機(jī)器可以包括例如任意合適的處理平臺、計(jì)算平臺、計(jì)算設(shè)備、處理設(shè)備、計(jì)算系統(tǒng)、處理系統(tǒng)、計(jì)算機(jī)、處理器等,并且可以使用硬件和/或軟件的任意合適的組合來實(shí)現(xiàn)。機(jī)器可讀介質(zhì)或制品可以包括例如任何適當(dāng)類型的存儲器單元、存儲器設(shè)備、存儲器制品、存儲器介質(zhì)、存儲設(shè)備、存儲制品、存儲介質(zhì)和/或存儲單元,例如存儲器、可移動或不可移動介質(zhì)、可擦除或不可擦除介質(zhì)、可寫或可重寫介質(zhì)、數(shù)字或模擬介質(zhì)、硬盤、軟盤、壓縮盤只讀存儲器(CD-ROM)、可記錄壓縮盤(CD-R)、可重寫壓縮盤(CD-RW)、光盤、磁介質(zhì)、各種類型的數(shù)字多功能盤(DVD)、磁帶、卡帶等。指令可以包括任意合適類型的代碼,例如源代碼、編譯代碼、解釋代碼、可執(zhí)行代碼、靜態(tài)代碼、動態(tài)代碼等,并且可以使用任意合適的高級的、低級的、面對對象的、可視化的、編譯的和/或解釋的程序語言來實(shí)現(xiàn),例如C、C++、Java、BASIC、Pascal、Fortran、Cobol、匯編語言、機(jī)器碼等。各種實(shí)施例提供可以動態(tài)調(diào)整處理器性能的技術(shù)。例如,這種技術(shù)可以識別處理器效率并且可以調(diào)整處理器的性能(例如其速度)。這種調(diào)整可以涉及改變處理器的工作狀態(tài)(例如其P狀態(tài))。例如,當(dāng)檢測到處理器受存儲器限制或等待另一個設(shè)備(例如顯卡)時,技術(shù)可以調(diào)整處理器的操作以使得其運(yùn)行地更慢。因此,節(jié)約了能量。相反,當(dāng)檢測到處理器不再受這種限制的約束時,處理器可以重新投入所節(jié)約的能量以通過以更高的頻率工作來提供增強(qiáng)的性能(例如更快的操作)。對處理器操作的這種調(diào)整可以涉及各種技術(shù)。示例性技術(shù)包括將處理器的時鐘信號在開和關(guān)之間切換,和/或利用或不利用電壓改變來改變處理器的工作的頻率。在實(shí)施例中,可以在處理器內(nèi)實(shí)現(xiàn)這種技術(shù)。但是,在其它實(shí)施例中,實(shí)現(xiàn)可以涉及外部的軟件和/或外部的硬件。實(shí)施例可以包括一個或多個元件。元件可以包括用于執(zhí)行特定操作的任意結(jié)構(gòu)。按照給定的一組設(shè)計(jì)參數(shù)或性能約束的需要,每個元件可以被實(shí)現(xiàn)為硬件、軟件或其任意組合。盡管可以作為示例以特定布置中的特定元件來描述實(shí)施例,但是實(shí)施例可以包括可替換的布局中的元件的其它組合。應(yīng)當(dāng)注意的是,對"一個實(shí)施例"或"實(shí)施例"的任何提及意味著結(jié)合該實(shí)施例描述的特定的特征、結(jié)構(gòu)或特性包括在至少一個實(shí)施例中。在說明書中各個位置中的短語"在一個實(shí)施例中"和"在實(shí)施例中"的出現(xiàn)并非必然都指相同的實(shí)施例。參照圖l,示出了根據(jù)本發(fā)明的示例性實(shí)施例的計(jì)算機(jī)系統(tǒng)100的框圖。計(jì)算機(jī)系統(tǒng)100可以是個人計(jì)算機(jī)(PC)、個人數(shù)字助理(PDA)、互聯(lián)網(wǎng)設(shè)備、蜂窩電話、膝上型計(jì)算機(jī)、移動單元、無線通信設(shè)備和/或任意其它計(jì)算設(shè)備,盡管本發(fā)明的范圍并不限于此。根據(jù)本發(fā)明的示例性實(shí)施例,計(jì)算機(jī)系統(tǒng)100可以包括由電源120供電的主處理單元110。主處理單元110可以包括處理平臺130,其通過系統(tǒng)互連135電耦合到存儲設(shè)備140和一個或多個接口電路150。例如,如果需要的話,系統(tǒng)互連135可以是地址/數(shù)據(jù)總線。應(yīng)當(dāng)理解,除了總線之外的互連也可以用于將處理器130連接到存儲設(shè)備140。例如,一個或多個專用線路和/或交換結(jié)構(gòu)可以用于將處理平臺130連接到存儲設(shè)備140。處理平臺130可以包括操作系統(tǒng)139和包括一個或多個核心137的CPU136。如果需要的話,操作系統(tǒng)139可以執(zhí)行功率管理模塊134。此外,處理平臺130可以包括高速緩存存儲器(未示出),例如靜態(tài)隨機(jī)存取存儲器(SRAM)等,或任意其它類型的內(nèi)部集成存儲器。存儲器設(shè)備140可以包括動態(tài)隨機(jī)存取存儲器(DRAM)、非易失性存儲器等。在一個示例中,如果需要的話,存儲器設(shè)備140可以存儲可以由處理平臺130執(zhí)行的軟件程序。接口電路150可以包括以太網(wǎng)接口和/或通用串行總線(USB)接口等,盡管本發(fā)明的范圍并不限于此。在本發(fā)明的一些示例性實(shí)施例中,一個或多個輸入設(shè)備160可以連接到用于將數(shù)據(jù)和命令輸入到主處理單元110的接口電路150。例如,輸入設(shè)備160可以包括鍵盤、鼠標(biāo)、觸摸屏、跟蹤板、跟蹤球、isopoint、語音識別系統(tǒng)等。輸出設(shè)備170可以經(jīng)由一個或多個接口電路150可操作地耦合到主處理單元110,并且如果需要的話,可以包括一個或多個顯示器、打印機(jī)、揚(yáng)聲器和/或其它輸出設(shè)備。例如,一個輸出設(shè)備可以是顯示器。顯示器可以是陰極射線管(CRT)、液晶顯示器(LCD)或任意其它類型的顯示器。根據(jù)本發(fā)明的一些實(shí)施例,計(jì)算機(jī)系統(tǒng)IOO可以包括一個或多個存儲設(shè)備180。例如,計(jì)算機(jī)系統(tǒng)100可以包括一個或多個硬盤驅(qū)動器,一個或多個壓縮盤(CD)驅(qū)動器,一個或多個數(shù)字多用途盤驅(qū)動器(DVD)和/或其它計(jì)算機(jī)介質(zhì)輸入/輸出(I/O)設(shè)備,如果需要的話。此外,計(jì)算機(jī)系統(tǒng)100可以經(jīng)由到網(wǎng)絡(luò)190的連接與其它設(shè)備交換數(shù)據(jù)。網(wǎng)絡(luò)連接可以包括任意類型的網(wǎng)絡(luò)連接,例如以太網(wǎng)連接、數(shù)字用戶線(DSL)、電話線、同軸電纜等。網(wǎng)絡(luò)190可以是任意類型的網(wǎng)絡(luò),例如互聯(lián)網(wǎng)、電話網(wǎng)絡(luò)、電纜網(wǎng)絡(luò)、無線網(wǎng)絡(luò),例如符合IEEE標(biāo)準(zhǔn)802.11的網(wǎng)絡(luò),1999包括一個或多個IEEE802.11相關(guān)的標(biāo)準(zhǔn),用于無線城域網(wǎng)等的IEEE802.16標(biāo)準(zhǔn)。根據(jù)本發(fā)明的一個示例性實(shí)施例,處理平臺130可以在可變范圍的工作頻率內(nèi)工作。應(yīng)當(dāng)理解,可變范圍可以包括兩個或多個工作頻率。如果需要的話,可以由功率管理模塊134基于在一時間窗口內(nèi)觀測的處理平臺130的負(fù)載來選擇處理平臺130的工作頻率。P狀態(tài)控制器132可以向功率管理模塊134提供一目標(biāo)P狀態(tài)。功率管理模塊134可以設(shè)置功耗目標(biāo)點(diǎn),并且可以根據(jù)所選擇的目標(biāo)P狀態(tài)的條目來修改處理平臺工作頻率和/或電壓。在本發(fā)明的一些實(shí)施例中,如果需要的話,可以由基本輸入輸出系統(tǒng)(BIOS)145來提供P狀態(tài)值。功率管理模塊134可以正確地選擇合適的P狀態(tài),以滿足計(jì)算機(jī)系統(tǒng)100的性能需求。應(yīng)當(dāng)理解,P狀態(tài)控制器132和/或功率管理模塊134可以由硬件、軟件和/或由硬件和/或軟件的組合來實(shí)現(xiàn)。根據(jù)本發(fā)明的實(shí)施例,功率管理模塊134可以通過確定P狀態(tài)值的范圍來控制兩個或多個核心137的功耗。例如,為了設(shè)置所述范圍,功率管理模塊134可以設(shè)置P狀態(tài)上限和P狀態(tài)下限。例如,可以基于處理平臺活動率值來確定P狀態(tài)上限,并且基于操作系統(tǒng)執(zhí)行操作系統(tǒng)任務(wù)的最小需求來確定P狀態(tài)下限。如果需要的話,P狀態(tài)控制器132可以根據(jù)功率管理策略在下限和上限的范圍內(nèi)改變P狀態(tài)的值。根據(jù)本發(fā)明的示例性實(shí)施例,P狀態(tài)下限可以被定義為操作系統(tǒng)為了執(zhí)行其任務(wù)所需的最小需求P狀態(tài),例如,在沒有不良視覺效應(yīng)和/或降低的用戶體驗(yàn)的情況下,執(zhí)行一些多媒體操作所需的最小頻率。根據(jù)本發(fā)明的另一個示例性實(shí)施例,視頻解碼會需要每秒生成一些預(yù)定義的幀。如果CPU性能降低到生成預(yù)定義的幀和/或生成下一時間的幀所需的性能以下,那么結(jié)果會是丟失幀并且造成不良視覺效應(yīng),因此可以調(diào)整P狀態(tài)范圍的下限以滿足該需求,盡管本發(fā)明的范圍并不限于該示例。參照圖2,示出了根據(jù)本發(fā)明的示例性實(shí)施例的處理平臺200的一部分的框圖。處理平臺200的一部分可以包括操作系統(tǒng)(0S)205,盡管本發(fā)明的范圍并不限于此。操作系統(tǒng)205可以包括功率管理模塊210、P狀態(tài)控制器220和功率管理策略模塊240。處理平臺200的該部分還可以包括CPU225,其包括核心1……N230;處理平臺200的該部分還可以包括寄存器260,其包括平衡參數(shù);處理平臺200的該部分還可以包括BIOS245,其包括一個或多個P狀態(tài)表250,盡管應(yīng)當(dāng)理解本發(fā)明的范圍并不限于本發(fā)明的該示例性實(shí)施例。根據(jù)該示例性實(shí)施例,如果需要的話,P狀態(tài)表可以包括P狀態(tài)值和CPU225的工作頻率。例如,可以根據(jù)下列的P狀態(tài)和處理器電源狀態(tài)(C狀態(tài))確定P狀態(tài)值。PO-可以是設(shè)備或處理器可以使用其最大性能能力并且可以消耗最大功率的P狀態(tài)。Pl-可以是設(shè)備或處理平臺的性能能力可以被限制在其最大值以下并且可以消耗比最大功率更少的功率的P狀態(tài)。Pn-可以是設(shè)備或處理平臺的性能能力可以在其最低水平并且消耗最低的功率,同時仍然處于活動狀態(tài)的一個或多個P狀態(tài)。C0-可以是處理平臺可以執(zhí)行其指令的C狀態(tài)。Cl-可以是處理器可以具有最小延遲(例如,硬件延遲)的C狀態(tài)。在該狀態(tài)下,延遲可以足夠低以使得操作軟件當(dāng)決定是否使用其時,不考慮所述狀態(tài)的延遲方面。C2-可以是相對于C1狀態(tài)改進(jìn)了功率節(jié)約的C狀態(tài)。例如,可以經(jīng)由ACPI系統(tǒng)固件提供該狀態(tài)的最壞情況下的硬件延遲,并且操作軟件可以使用該信息來確定何時使用CI狀態(tài)而不是C2狀態(tài)。C3-可以是相對于Cl和C2狀態(tài)改進(jìn)了功率節(jié)約的C狀態(tài)??梢越?jīng)由ACPI系統(tǒng)固件提供該狀態(tài)的最壞情況下的硬件延遲,并且操作軟件可以使用該信息來確定何時使用C2狀態(tài)而不是C3狀態(tài)。根據(jù)本發(fā)明的示例性實(shí)施例,P狀態(tài)表230可以包括以下的表格,例如用于處理平臺200的每個核心1……N的表1。<table>tableseeoriginaldocumentpage9</column></row><table>表1根據(jù)該示例,表1可以包括多個可選擇的P狀態(tài)(例如,P0、P1…P4)。功率管理模塊210可以使用選擇的P狀態(tài)(例如,P0、P1…P4)來為核心1……N230獨(dú)立地和/或分別地設(shè)置期望的工作頻率和期望的工作電壓。可以由硬件、軟件和硬件和軟件的任意期望的組合來實(shí)現(xiàn)功率管理模塊210和/或P狀態(tài)控制器220和/或功率管理策略模塊240和/或寄存器260,盡管本發(fā)明的范圍并不限于此。根據(jù)本發(fā)明的示例性實(shí)施例,功率管理模塊210可以通過設(shè)置P狀態(tài)值的范圍來控制兩個或多個核心230的功耗。例如,功率管理模塊210可以設(shè)置P狀態(tài)范圍的上限,例如Pl,以及P狀態(tài)范圍的下限,例如P3,其中,P狀態(tài)上限可以基于處理平臺活動率值,P狀態(tài)下限可以基于操作系統(tǒng)執(zhí)行操作系統(tǒng)任務(wù)的最低需求。P狀態(tài)控制器220可以設(shè)置P狀態(tài)值,例如,根據(jù)表1的值,其在通過P狀態(tài)下限和上限所設(shè)置的范圍內(nèi),并且根據(jù)可以由功率管理策略模塊設(shè)置的功率管理策略,如果需要的話。根據(jù)本發(fā)明的該示例性實(shí)施例,寄存器260可以包括平衡參數(shù)(未示出)。功率管理策略模塊240可以從寄存器上載平衡參數(shù)并且根據(jù)平衡參數(shù)改變P狀態(tài)值。平衡參數(shù)可以用于在CPU225的期望的性能參數(shù)與期望的能效參數(shù)之間進(jìn)行平衡。根據(jù)本發(fā)明的實(shí)施例,平衡參數(shù)可以指示包括例如定義了期望的功率策略模塊240的值,用于在期望的性能策略的消耗與能效策略之間進(jìn)行平衡,如果需要的話。值O例如可以指示最大性能,而值16和/或任何其它值可以指示最大能量節(jié)約。在這之間的任何中間值可以指示在能量與性能之間進(jìn)行平衡。例如,值7可以指示功率和性能同等重要,盡管本發(fā)明的范圍并不限于此。功率管理策略模塊240可以根據(jù)處理器活動提供策略。例如策略可以包括能效策略_該策略可以通過選取將提供關(guān)于完成CPU的任務(wù)的總能耗的最佳結(jié)果的P狀態(tài),來向較低的P狀態(tài)偏移。例如,如果需要的話,能效工作點(diǎn)可以總在最低可能的P狀態(tài)處運(yùn)行。性能策略_該策略可以向更高的P狀態(tài)偏移,最大化性能同時滿足其它約束,例如功率和/或發(fā)熱限制。例如,最高性能工作點(diǎn)可以在最高的可能的P狀態(tài)處運(yùn)行。平衡的或動態(tài)的策略_該策略可以提供能效和性能的加權(quán)混合。例如,該策略可以選取在最大和最小P狀態(tài)之間的中間P狀態(tài)。如果需要的話,該值可以是固定的或可以隨時間在最大和最小值之間改變。根據(jù)本發(fā)明的一些實(shí)施例,功率策略模塊240可以監(jiān)視CPU(例如,CPU225)的能耗,可以計(jì)算能效值,并且可以根據(jù)期望的能效值改變P狀態(tài)值。例如,管理策略模塊240可以確定CPU的期望的性能參數(shù)并且可以根據(jù)CPU的期望的性能參數(shù)來改變P狀態(tài)值,盡管本發(fā)明的范圍并不限于此。此外,功率管理模塊210可以在P狀態(tài)上限附近設(shè)置上閾限(u卯erthreshold)和下閾限(lowerthreshold)。例如,功率管理模塊210可以監(jiān)視在預(yù)定的時間間隔內(nèi)的CPU活動。此外,功率管理模塊210可以計(jì)算處理器活動率值并且可以將所述上閾限和下閾限與CPU活動率做比較。例如,如果CPU活動率在上閾限之上,那么功率管理模塊210可以增大所述P狀態(tài)上限,如果CPU活動率在下閾限之下,那么可以減小所述P狀態(tài)上限。根據(jù)本發(fā)明的一些實(shí)施例,關(guān)于修改P狀態(tài)范圍的P狀態(tài)下限,可以提供類似的過程。參照圖3,示出了根據(jù)本發(fā)明的一些示例性實(shí)施例的,顯示P狀態(tài)值隨時間而改變的時間圖的說明。時間圖300顯示了三個P狀態(tài),例如P0、Pl和Pn,盡管本發(fā)明的范圍并不限于該示例。根據(jù)該示例,Pn可以包括P狀態(tài)P3和P4。時間圖300還可以包括平均P狀態(tài)310、上限330和下限320。上限330和下限320可以由功率管理模塊210來設(shè)置,并且P狀態(tài)可以在上限和下限320和330的范圍內(nèi)變化,如果需要的話。平均P狀態(tài)310是隨著時間的變化的平均P狀態(tài)的計(jì)算值。根據(jù)該示例,如果需要的話,可以在平均P狀態(tài)310周圍設(shè)置上限和下限320和330。如果需要的話,CPU225可以在下限320和上限330的范圍內(nèi)改變活動狀態(tài)(例如,P狀態(tài)和/或C狀態(tài))。根據(jù)本發(fā)明的一些示例性實(shí)施例,上限330可以被定義為不允許CPU超過的P狀態(tài)值,并且下限320可以被定義為操作系統(tǒng)(例如,操作系統(tǒng)205)為了執(zhí)行其任務(wù)所需的最小需要的P狀態(tài)。例如,這種標(biāo)準(zhǔn)可以是在沒有不良視覺效應(yīng)或降低的用戶體驗(yàn)的情況下,執(zhí)行一些多媒體操作所需的最小頻率??梢杂捎布?或軟件,和/或由操作系統(tǒng),和/或由驅(qū)動器和/或由應(yīng)用程序來進(jìn)行上限330和下限320的設(shè)置,盡管應(yīng)該理解本發(fā)明的實(shí)施例并不限于這些示例。P狀態(tài)可以被表示為絕對值和/或基值和偏移值。例如,可以由操作系統(tǒng),和/或由可以改變在閉環(huán)反饋中的P狀態(tài)的控制算法來設(shè)置上限和下限的值。在一些實(shí)施例中,如果需要的話,可以由CPU的硬件來管理在兩個限制之間的范圍內(nèi)的實(shí)際的P狀態(tài)。根據(jù)本發(fā)明的一個示例性實(shí)施例,可以根據(jù)以下示例算法來設(shè)置P狀態(tài)范圍的上限330。一種現(xiàn)有的算法可以使用空閑時間百分比。如果CPU的空閑時間增加到上閾限之上,那么減少P狀態(tài)請求,并且如果空閑時間超過下閾限,那么增大P狀態(tài)。例如,可以如下計(jì)算空閑時間-Ti的百分比(%),Ti=((C0中的時間)/(C1及以下中的時間))X100X,其中CO是CPU的活動工作狀態(tài),C1是CPU不活動的狀態(tài),例如睡眠模式。根據(jù)本發(fā)明的一個示例性實(shí)施例,如果CPU運(yùn)行在P狀態(tài)P3并且閾值可以設(shè)置為60%(下閾限)和80%(上閾限),那么z當(dāng)前P狀態(tài)低于上閾限午狀態(tài)P增大到之后的P狀態(tài)水平,例如P2z當(dāng)前P狀態(tài)在較低閾值以上午狀態(tài)P減小到之前的P狀態(tài)水平,例如P2IfTi<80%P—P2ElseifTi>60%P—P4ElseP不改變并且保持在P3Endif根據(jù)本發(fā)明的一些示例性實(shí)施例,可以由閉環(huán)算法和圍的下限。這種算法的一個例子可以是或試探法來設(shè)置P狀態(tài)范定義Pe二有效的P狀態(tài),例如隨著時間變化CPU執(zhí)行的不同的P狀態(tài)的加權(quán)平均;以及T'i=Ti*(下限/Pe)預(yù)計(jì)的空閑時間是多少。IfT,i<80%P—P2ElseifT,i>60%P—P4ElseT'i表示如果CPU在較低的所允許的P狀態(tài)處執(zhí)行,那么當(dāng)前P狀態(tài)在上閾限以下午狀態(tài)P增大到之后的P狀態(tài)水平,例如P2當(dāng)前P狀態(tài)在下閾限以上午狀態(tài)P減小到之前的P狀態(tài)水平,例如P2P不改變并且保持P3Endif應(yīng)當(dāng)理解可以使用其它算法,例如動態(tài)地計(jì)算最大可容忍的性能下降是可行的,其可以用于確定下限的設(shè)置,盡管本發(fā)明的范圍并不限于此。根據(jù)一些示例性實(shí)施例,如果CPU不能傳送通過下限設(shè)置的所需的性能水平(例如,由于功率限制或熱約束),那么可以通過提供狀態(tài)通知機(jī)制在允許的范圍內(nèi)控制P狀態(tài)。此外,應(yīng)當(dāng)理解,如果需要的話,通過將上限330和下限320設(shè)置為相同的值,該接口可以變?yōu)閭鹘y(tǒng)接口。參照圖4,示出了根據(jù)一些示例性實(shí)施例的,用于設(shè)置P狀態(tài)值的范圍的上限的方法的流程的說明。根據(jù)該示例,方法以當(dāng)前的P狀態(tài)值開始(文字框410),其是實(shí)際的P狀態(tài)上限??梢栽诘谝缓偷诙撝档姆秶鷥?nèi)設(shè)置P狀態(tài)上限。設(shè)置第一閾值(例如,上限(PJ)和第二閾值(例如,下限PJ可以與處理器活動有關(guān)(文本框420)。功率管理模塊210可以在預(yù)定的時間間隔上監(jiān)視CPU活動(Ti)(文本框430)并且可以將CPU活動與第一閾值(例如上限)比較(文本框440)。如果CPU活動(Ti)比第二閾值(例如Pll)低(菱形460),那么P狀態(tài)上限可以減小(文本框480)。如果CPU活動(Ti)比第一閾值(例如11PJ高(菱形450),那么P狀態(tài)上限可以增大(文本框470)。該示例性算法可以在閉環(huán)中運(yùn)行以根據(jù)CPU的活動改變P狀態(tài)上限,如果需要的話。參照圖5,示出了根據(jù)一些示例性實(shí)施例的用于設(shè)置P狀態(tài)的范圍的下限的方法的流程的說明。根據(jù)該示例,方法以P狀態(tài)范圍的當(dāng)前最低P狀態(tài)值開始(文本框510),其是P狀態(tài)范圍的實(shí)際下限。可以在第一和第二閾值的范圍內(nèi)設(shè)置下限。設(shè)置第一閾值(例如,上限(PJ)和第二閾值(例如,下限PJ可以與在最低P狀態(tài)值處的CPU活動相關(guān)(文本框520)。功率管理模塊210可以估計(jì)預(yù)定時間間隔上的、在CPU的當(dāng)前活動處的、最低功耗需求處的CPU活動(T'》(文本框530)并且可以將估計(jì)的CPU活動(T'》與第一閾值和第二閾值比較(文本框540)。如果CPU活動(T'》比第二閾值(例如低(菱形560),那么P狀態(tài)范圍的P狀態(tài)下限可以減小(文本框580)。如果CPU活動(T'》比第一閾值(例如PJ高(菱形550),那么P狀態(tài)范圍的P狀態(tài)下限可以增大(文本框570)。如果需要的話,該示例性算法可以在閉環(huán)中運(yùn)行,以便根據(jù)在P狀態(tài)范圍的可允許的P狀態(tài)下限處的CPU的活動來改變P狀態(tài)下限。本文闡述了許多具體的細(xì)節(jié)以便于對實(shí)施例的透徹的理解。但是,本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在沒有這些具體細(xì)節(jié)的情況下實(shí)現(xiàn)實(shí)施例。在其它示例中,沒有詳細(xì)描述已知的操作、部件和電路以便不模糊實(shí)施例??梢岳斫?,本文公開的具體結(jié)構(gòu)和功能細(xì)節(jié)可以是代表性的,并且并不必然限制實(shí)施例的范圍。可以使用硬件元件、軟件元件或其組合來實(shí)現(xiàn)各種實(shí)施例。硬件元件的例子可以包括處理器、微處理器、電路、電路元件(例如,晶體管、電阻、電容、電感等)、集成電路、專用集成電路(ASIC)、可編程邏輯器件(PLD)、數(shù)字信號處理器(DSP)、現(xiàn)場可編程門陣列(FPGA)、邏輯門、寄存器、半導(dǎo)體器件、芯片、微芯片、芯片組等。軟件的例子可以包括軟件部件、程序、應(yīng)用、計(jì)算機(jī)程序、應(yīng)用程序、系統(tǒng)程序、機(jī)器程序、操作系統(tǒng)軟件、中間件、固件、軟件模塊、例程、子例程、函數(shù)、方法、過程、軟件接口、應(yīng)用程序接口(API)、指令集、計(jì)算代碼、計(jì)算機(jī)代碼、代碼段、計(jì)算機(jī)代碼段、字、值、符號或它們的任何組合??梢愿鶕?jù)任何數(shù)量的因素來確定是使用硬件元件還是使用軟件元件來實(shí)現(xiàn)實(shí)施例,所述因素例如期望的計(jì)算速率、功率水平、耐熱性、處理周期預(yù)算、輸入數(shù)據(jù)速率、輸出數(shù)據(jù)速率、存儲器資源、數(shù)據(jù)總線速度和其它設(shè)計(jì)或性能約束??梢允褂帽磉_(dá)"耦合"和"連接"以及他們的派生詞來描述一些實(shí)施例。這些術(shù)語并不旨在作為彼此的同義詞。例如,可以使用術(shù)語"連接"和/或"耦合"來描述一些實(shí)施例,以指示兩個或多個元件彼此是直接物理接觸或電接觸的。但是,術(shù)語"耦合"還可以表示兩個或多個元件沒有彼此直接接觸,但是仍然彼此合作或交互。盡管用特定于結(jié)構(gòu)特征和/或方法操作的語言描述了主題,但是應(yīng)當(dāng)理解,在所附權(quán)利要求中定義的主題并非必然被限定為以上描述的具體特征或操作。相反,以上描述的具體特征和操作被作為實(shí)現(xiàn)權(quán)利要求的示例形式而公開。權(quán)利要求一種用于控制功耗的方法,包括設(shè)置性能狀態(tài)上限和性能狀態(tài)下限,其中,所述性能狀態(tài)上限基于中央處理單元活動率值,所述性能狀態(tài)下限基于操作系統(tǒng)執(zhí)行操作系統(tǒng)任務(wù)的最小需求;以及根據(jù)功率管理策略在所述下限和上限的范圍內(nèi)改變性能狀態(tài)值。2.根據(jù)權(quán)利要求1所述的方法,其中,設(shè)置包括將性能狀態(tài)值設(shè)置為所述性能狀態(tài)上限;在所述性能狀態(tài)上限附近設(shè)置上閾限和下閾限;在預(yù)定的時間間隔內(nèi)監(jiān)視所述中央處理單元活動;計(jì)算所述中央處理單元活動率值;以及將所述上閾限和下閾限與所述中央處理單元活動率進(jìn)行比較。3.根據(jù)權(quán)利要求2所述的方法,包括如果所述中央處理單元活動率在所述上閾限以上,那么增大所述性能狀態(tài)上限;以及如果所述中央處理單元活動率在所述下閾限以下,那么減小所述性能狀態(tài)上限。4.根據(jù)權(quán)利要求1所述的方法,其中,設(shè)置包括將性能狀態(tài)值設(shè)置為所述性能狀態(tài)下限;估計(jì)在最低性能狀態(tài)值之上的中央處理單元活動率;以及將所述上閾限和下閾限與估計(jì)的中央處理單元活動率進(jìn)行比較。5.根據(jù)權(quán)利要求4所述的方法,包括如果所述中央處理單元活動率在所述上閾限以上,那么增大所述性能狀態(tài)下限;以及如果所述中央處理單元活動率在所述下閾限以下,那么減小所述性能狀態(tài)下限。6.根據(jù)權(quán)利要求1所述的方法,其中,所述管理策略包括監(jiān)視所述中央處理單元的能耗;計(jì)算能效值;以及根據(jù)期望的能效值改變所述性能狀態(tài)值。7.根據(jù)權(quán)利要求1所述的方法,其中,所述管理策略包括確定所述中央處理單元的期望的性能參數(shù);以及根據(jù)所述中央處理單元的所述期望的性能參數(shù)來改變所述性能狀態(tài)值。8.根據(jù)權(quán)利要求1所述的方法,包括根據(jù)功率管理策略在所述下限和上限的范圍內(nèi)改變性能狀態(tài)值;以及根據(jù)在預(yù)定的時間間隔內(nèi)估計(jì)的性能狀態(tài)值計(jì)算平均性能狀態(tài)。9.根據(jù)權(quán)利要求1所述的方法,其中,所述管理策略包括根據(jù)平衡參數(shù)改變所述性能狀態(tài)值,其中,所述平衡參數(shù)用于在所述中央處理單元的期望的性能參數(shù)與期望的能效參數(shù)之間進(jìn)行平衡。10.—種處理平臺,包括功率管理模塊,用于通過設(shè)置性能狀態(tài)上限和性能狀態(tài)下限來控制包括兩個或多個核心的中央處理單元的功耗,其中,所述性能狀態(tài)上限基于中央處理單元活動率值,并且所述性能狀態(tài)下限基于操作系統(tǒng)執(zhí)行操作系統(tǒng)任務(wù)的最小需求;以及性能狀態(tài)控制器,用于根據(jù)功率管理策略在所述下限和上限的范圍內(nèi)改變性能狀態(tài)值。11.根據(jù)權(quán)利要求io所述的處理平臺,其中,所述功率管理模塊能夠?qū)⑿阅軤顟B(tài)值設(shè)置為所述性能狀態(tài)上限,在所述性能狀態(tài)上限附近設(shè)置上閾限和下閾限,在預(yù)定的時間間隔內(nèi)監(jiān)視所述中央處理單元活動,計(jì)算所述中央處理單元活動率值并且將所述上閾限和下閾限與所述中央處理單元活動率進(jìn)行比較。12.根據(jù)權(quán)利要求11所述的處理平臺,其中,如果所述中央處理單元活動率在所述上閾限以上,那么所述功率管理模塊能夠增大所述性能狀態(tài)上限,如果所述處理器活動率在所述下閾限以下,那么所述功率管理模塊能夠減小所述性能狀態(tài)上限。13.根據(jù)權(quán)利要求10所述的處理平臺,其中,所述功率管理模塊能夠?qū)⑿阅軤顟B(tài)值設(shè)置為所述性能狀態(tài)下限,估計(jì)在最低性能狀態(tài)值之上的中央處理單元活動率,并且將所述上閾限和下閾限與估計(jì)的中央處理單元活動率進(jìn)行比較。14.根據(jù)權(quán)利要求13所述的處理平臺,其中,如果所述中央處理單元活動率在所述上閾限以上,那么所述功率管理模塊能夠增大所述性能狀態(tài)下限,如果所述處理器活動率在所述下閾限以下,那么所述功率管理模塊能夠減小所述性能狀態(tài)下限。15.根據(jù)權(quán)利要求10所述的處理平臺,包括管理策略模塊,用于監(jiān)視所述中央處理單元的能耗,計(jì)算能效值并且根據(jù)期望的能效值改變所述性能狀態(tài)值。16.根據(jù)權(quán)利要求10所述的處理平臺,包括管理策略模塊,用于確定所述中央處理單元的期望的性能參數(shù),并且根據(jù)所述中央處理單元的所述期望的性能參數(shù)改變所述性能狀態(tài)值。17.根據(jù)權(quán)利要求10所述的處理平臺,包括寄存器,其包括平衡參數(shù);以及功率管理策略模塊,用于根據(jù)所述平衡參數(shù)改變所述性能狀態(tài)值,所述平衡參數(shù)用于在所述中央處理單元的期望的性能參數(shù)與期望的能效參數(shù)之間進(jìn)行平衡。18.—種計(jì)算機(jī)系統(tǒng),包括液晶顯示器,其可操作地耦合到處理平臺,其中,所述處理平臺包括功率管理模塊,用于通過設(shè)置性能狀態(tài)上限和性能狀態(tài)下限來控制包括兩個或多個核心的中央處理單元的功耗,其中,所述性能狀態(tài)上限基于中央處理單元活動率值,并且所述性能狀態(tài)下限基于操作系統(tǒng)執(zhí)行操作系統(tǒng)任務(wù)的最小需求;以及性能狀態(tài)控制器,用于根據(jù)功率管理策略在所述下限和上限的范圍內(nèi)改變性能狀態(tài)值。19.根據(jù)權(quán)利要求18所述的計(jì)算機(jī)系統(tǒng),其中,所述功率管理模塊能夠?qū)⑿阅軤顟B(tài)值設(shè)置為所述性能狀態(tài)上限,在所述性能狀態(tài)上限附近設(shè)置上閾限和下閾限,在預(yù)定的時間間隔內(nèi)監(jiān)視所述中央處理單元活動,計(jì)算所述中央處理單元活動率值并且將所述上閾限和所述下閾限與所述中央處理單元活動率進(jìn)行比較。20.根據(jù)權(quán)利要求19所述的計(jì)算機(jī)系統(tǒng),其中,如果所述中央處理單元活動率在所述上閾限以上,那么所述功率管理模塊能夠增大所述性能狀態(tài)上限,如果所述中央處理單元活動率在所述下閾限以下,那么所述功率管理模塊能夠減小所述性能狀態(tài)上限。21.根據(jù)權(quán)利要求18所述的計(jì)算機(jī)系統(tǒng),其中,所述功率管理模塊能夠?qū)⑿阅軤顟B(tài)值設(shè)置為所述性能狀態(tài)下限,估計(jì)在最低性能狀態(tài)值之上的中央處理單元活動率,并且將所述上閾限和下閾限與估計(jì)的中央處理單元活動率進(jìn)行比較。22.根據(jù)權(quán)利要求21所述的計(jì)算機(jī)系統(tǒng),其中,如果所述中央處理單元活動率在所述上閾限以上,那么所述功率管理模塊能夠增大所述性能狀態(tài)下限,如果所述中央處理單元活動率在所述下閾限以下,那么所述功率管理模塊能夠減小所述性能狀態(tài)下限。23.根據(jù)權(quán)利要求18所述的計(jì)算機(jī)系統(tǒng),其中,所述處理平臺包括管理策略模塊,用于監(jiān)視所述中央處理單元的能耗,計(jì)算能效值并且根據(jù)期望的能效值改變所述性能狀態(tài)值。24.根據(jù)權(quán)利要求18所述的計(jì)算機(jī)系統(tǒng),其中,所述處理平臺包括管理策略模塊,用于確定所述中央處理單元的期望的性能參數(shù),并且根據(jù)所述中央處理單元的所述期望的性能參數(shù)改變所述性能狀態(tài)值。25.根據(jù)權(quán)利要求18所述的計(jì)算機(jī)系統(tǒng),其中,所述處理平臺包括寄存器,其包括平衡參數(shù);以及功率管理策略模塊,用于根據(jù)所述平衡參數(shù)改變所述性能狀態(tài)值,所述平衡參數(shù)用于在所述中央處理單元的期望的性能參數(shù)與期望的能效參數(shù)之間進(jìn)行平衡。全文摘要提出了用于控制處理平臺的中央處理單元的功耗的處理平臺和方法。通過運(yùn)行該方法,處理平臺能夠設(shè)置性能狀態(tài)上限和性能狀態(tài)下限。性能狀態(tài)上限基于中央處理單元活動率值,性能狀態(tài)下限基于操作系統(tǒng)執(zhí)行操作系統(tǒng)任務(wù)的最小需求。性能狀態(tài)值根據(jù)功率管理策略在下限和上限的范圍內(nèi)改變。文檔編號G06F1/32GK101794167SQ20091026194公開日2010年8月4日申請日期2009年12月23日優(yōu)先權(quán)日2008年12月23日發(fā)明者A·阿加瓦,B·庫珀,E·羅特姆,E·韋斯曼,G·特爾瑞恩申請人:英特爾公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
馆陶县| 黄陵县| 浦城县| 南昌县| 南漳县| 武鸣县| 阳西县| 乌鲁木齐市| 雅安市| 贵港市| 上高县| 抚宁县| 驻马店市| 门头沟区| 荔波县| 武强县| 永仁县| 淮安市| 北海市| 汶上县| 宜兴市| 武强县| 永善县| 娄底市| 德州市| 星子县| 运城市| 布拖县| 汪清县| 富蕴县| 鸡东县| 盐池县| 太和县| 台前县| 祁连县| 永靖县| 得荣县| 兴和县| 于田县| 厦门市| 黄大仙区|