本申請(qǐng)要求于2014年9月17日提交的題為“TECHNOLOGIESFORCOLLABORATIVEHARDWAREANDSOFTWARESCENARIO-BASEDPOWERMANAGEMENT”的美國(guó)實(shí)用新型專利申請(qǐng)系列號(hào)14/488,805的優(yōu)先權(quán)。
背景技術(shù):
:能量效率對(duì)于當(dāng)前計(jì)算設(shè)備而言是越來(lái)越重要的考慮。對(duì)于諸如膝上型計(jì)算機(jī)、平板計(jì)算機(jī)和智能電話之類的便攜式設(shè)備,能量效率直接影響電池壽命,這是用戶體驗(yàn)的重要部分。對(duì)于服務(wù)器設(shè)備,能量效率直接影響成本、計(jì)算密度和熱管理。因此,當(dāng)前處理器通常支持不同性能和功耗水平的平衡。通常,處理器可能能夠縮放其性能和功耗以改善負(fù)載下的性能,并且當(dāng)空閑或輕負(fù)載時(shí)降低功耗。當(dāng)前的處理器和設(shè)備還支持低功率使用模型,其允許設(shè)備針對(duì)某些使用模型實(shí)現(xiàn)極低的功耗。例如,當(dāng)前計(jì)算設(shè)備可以支持連接的待機(jī)、低功率音頻回放或其他低功率狀態(tài)。典型的計(jì)算機(jī)操作系統(tǒng)可以應(yīng)用默認(rèn)功率管理策略,其基于近來(lái)的處理器利用來(lái)設(shè)置當(dāng)前處理器性能水平。操作系統(tǒng)可以周期性地檢查處理器利用并在每次檢查之后設(shè)置性能水平。例如,當(dāng)處理器大部分空閑時(shí),操作系統(tǒng)可以降低處理器性能水平,并且當(dāng)處理器利用增加時(shí),操作系統(tǒng)可以增加處理器性能水平。如上所述,處理器性能水平通常直接影響功耗。附圖說(shuō)明在附圖中通過(guò)示例而非限制的方式說(shuō)明了本文所描述的概念。為了說(shuō)明的簡(jiǎn)單和清楚,圖中所說(shuō)明的元素不一定按比例繪制。在認(rèn)為適當(dāng)?shù)那闆r下,在圖中重復(fù)參考標(biāo)記以指示對(duì)應(yīng)或類似的元素。圖1是用于協(xié)作硬件-軟件功率管理的計(jì)算設(shè)備的至少一個(gè)實(shí)施例的簡(jiǎn)化框圖;圖2是圖1的計(jì)算設(shè)備的環(huán)境的至少一個(gè)實(shí)施例的簡(jiǎn)化框圖;和圖3是可以由圖1和圖2的計(jì)算設(shè)備所執(zhí)行的用于協(xié)作硬件-軟件功率管理的方法的至少一個(gè)實(shí)施例的簡(jiǎn)化流程圖。具體實(shí)施方式雖然本公開(kāi)的概念易于遭受各種修改和替代形式,但是已經(jīng)通過(guò)附圖中的示例示出并且將在本文中詳細(xì)描述其具體實(shí)施例。然而,應(yīng)當(dāng)理解,沒(méi)有意圖將本公開(kāi)的概念限制為所公開(kāi)的特定形式,而是相反,意圖是覆蓋與本公開(kāi)以及所附權(quán)利要求一致的所有修改、等同物和替代物。在說(shuō)明書(shū)中對(duì)“一個(gè)實(shí)施例”、“實(shí)施例”、“說(shuō)明性實(shí)施例”等的引用指示所描述的實(shí)施例可以包括特定特征、結(jié)構(gòu)或特性,但是每個(gè)實(shí)施例可以包括或者可以不一定包括該特定特征、結(jié)構(gòu)或特性。此外,這樣的短語(yǔ)不一定指的是相同的實(shí)施例。此外,當(dāng)結(jié)合實(shí)施例描述特定特征、結(jié)構(gòu)或特性時(shí),無(wú)論是否明確描述,都認(rèn)為結(jié)合其他實(shí)施例來(lái)實(shí)現(xiàn)這樣的特征、結(jié)構(gòu)或特性是在本領(lǐng)域技術(shù)人員的知識(shí)范圍內(nèi)的。另外,應(yīng)當(dāng)理解,以“至少一個(gè)A、B和C”的形式包括在列表中的項(xiàng)目可以意指:(A);(B);(C);(A和B);(A和C);(B和C);或(A、B和C)。類似地,以“A、B或C中的至少一個(gè)”的形式列出的項(xiàng)目可以意指(A);(B);(C);(A和B);(A和C);(B和C);或(A、B和C)。在一些情況下,可以以硬件、固件、軟件或其任何組合來(lái)實(shí)現(xiàn)所公開(kāi)的實(shí)施例。所公開(kāi)的實(shí)施例還可以被實(shí)現(xiàn)為由暫時(shí)性或非暫時(shí)性機(jī)器可讀(例如,計(jì)算機(jī)可讀)存儲(chǔ)介質(zhì)攜帶或存儲(chǔ)在其上的指令,所述指令可以由一個(gè)或多個(gè)處理器讀取和執(zhí)行??梢詫C(jī)器可讀存儲(chǔ)介質(zhì)具體化為用于以機(jī)器可讀形式存儲(chǔ)或傳輸信息的任何存儲(chǔ)設(shè)備、機(jī)構(gòu)或其他物理結(jié)構(gòu)(例如,易失性或非易失性存儲(chǔ)器、介質(zhì)盤(pán)或其他介質(zhì)設(shè)備)。在附圖中,可以以具體布置和/或排序來(lái)示出一些結(jié)構(gòu)或方法特征。然而,應(yīng)當(dāng)理解,可能不需要這樣的具體布置和/或排序。相反,在一些實(shí)施例中,這樣的特征可以以與說(shuō)明性附圖中所示出的不同的方式和/或順序來(lái)布置。附加地,在特定圖中包括結(jié)構(gòu)或方法特征并不意味著暗示在所有實(shí)施例中都需要此類特征,并且在一些實(shí)施例中可以不包括此類特征或者此類特征可以與其他特征組合?,F(xiàn)在參考圖1,用于協(xié)作硬件-軟件功率管理的說(shuō)明性計(jì)算設(shè)備100包括處理器120,I/O子系統(tǒng)124,存儲(chǔ)器126和數(shù)據(jù)存儲(chǔ)設(shè)備128。在使用中,如下所述,計(jì)算設(shè)備100被配置為使處理器120進(jìn)入低功率空閑狀態(tài)以及退出低功率空閑狀態(tài)。對(duì)于某些使用場(chǎng)景和/或軟件工作負(fù)載,當(dāng)離開(kāi)低功率空閑狀態(tài)時(shí),計(jì)算設(shè)備100增加計(jì)算設(shè)備100的處理器120和/或其他部件的性能和功耗。當(dāng)所需的處理完成時(shí),計(jì)算設(shè)備100可以使處理器120重新進(jìn)入低功率空閑狀態(tài)。與默認(rèn)未提升(un-boosted)的行為相比,提升計(jì)算設(shè)備100的性能和功耗可以改進(jìn)計(jì)算設(shè)備100對(duì)于某些交互式任務(wù)的響應(yīng)性。附加地或替代地,提升性能和功耗可以使計(jì)算設(shè)備100更快地完成處理,這繼而可以使計(jì)算設(shè)備100更快地返回到低功率空閑狀態(tài)。因此,提升性能和功耗可以降低總體能量消耗并且增加電池壽命。下面的表1和表2列出了可以使用本公開(kāi)的計(jì)算設(shè)備100的一個(gè)實(shí)施例來(lái)實(shí)現(xiàn)的說(shuō)明性結(jié)果。如圖所示,對(duì)于低功率音頻回放場(chǎng)景,提升功率狀態(tài)可以將電池壽命增加若干小時(shí)。默認(rèn)功率策略提升的功率策略?平均功率183mW167mW-15.99mW低功率空閑時(shí)間91.7%94.11%+2.41%全功率時(shí)間8.03%5.67%-2.36%電池壽命(38W?h)207h227.5h+20h表1.m4a文件的低功率音頻回放的樣本說(shuō)明性結(jié)果。默認(rèn)功率策略提升的功率策略?平均功率207mW197mW-10mW電池壽命(38W?h)183h192h+9h表2.mp3文件的低功率音頻回放的樣本說(shuō)明性結(jié)果??梢詫⒂?jì)算設(shè)備100具體化為能夠執(zhí)行協(xié)作硬件-軟件功率管理并且以其他方式執(zhí)行本文所描述的功能的任何類型的設(shè)備。例如,可以將計(jì)算設(shè)備100具體化為但不限于:膝上型計(jì)算機(jī)、筆記本計(jì)算機(jī)、平板計(jì)算機(jī)、智能電話、移動(dòng)計(jì)算設(shè)備、可穿戴計(jì)算設(shè)備、計(jì)算機(jī)、臺(tái)式計(jì)算機(jī)、工作站、服務(wù)器計(jì)算機(jī)、分布式計(jì)算系統(tǒng)、多處理器系統(tǒng)、消費(fèi)電子設(shè)備、智能器具和/或能夠進(jìn)行協(xié)作硬件-軟件功率管理的任何其他計(jì)算設(shè)備。如圖1中所示,說(shuō)明性計(jì)算設(shè)備100包括處理器120、I/O子系統(tǒng)124、存儲(chǔ)器126和數(shù)據(jù)存儲(chǔ)設(shè)備128。當(dāng)然,在其他實(shí)施例中,計(jì)算設(shè)備100可以包括其他或附加部件,諸如通常在計(jì)算機(jī)中找到的那些部件(例如,各種輸入/輸出設(shè)備)。附加地,在一些實(shí)施例中,可以將說(shuō)明性部件中的一個(gè)或多個(gè)并入另一部件中或以其他方式形成另一部件的一部分。例如,在一些實(shí)施例中,可以將存儲(chǔ)器126或其部分并入處理器120中??梢詫⑻幚砥?20具體化為能夠執(zhí)行本文所描述的功能的任何類型的處理器。例如,可以將處理器120具體化為單核或多核處理器、數(shù)字信號(hào)處理器、微控制器或其他處理器或處理/控制電路。處理器120包括能量管理器122,其可以被具體化為允許處理器120調(diào)整其性能和能量使用的處理器120的任何電路、固件、微代碼或者其他部件。例如,能量管理器122可以被配置為動(dòng)態(tài)地縮放處理器120的頻率和/或電壓、選通(gate)或以其他方式禁用處理器120的部件、或者使處理器120進(jìn)入諸如睡眠、掛起、休眠(hibernate)或連接待機(jī)之類的低功率空閑狀態(tài)。在一些實(shí)施例中,能量管理器122可以暴露軟件和/或固件接口以允許對(duì)處理器120的性能和/或能量使用的軟件控制。例如,能量管理器122可以使能由高級(jí)配置和功率接口(ACPI)規(guī)范(例如,c狀態(tài)和/或p狀態(tài))、暴露處理器120的功率管理特征的一個(gè)或多個(gè)模型特定寄存器(MSR)或其他接口指定的一個(gè)或多個(gè)處理器功率狀態(tài)。當(dāng)調(diào)整處理器120的性能和功耗時(shí),能量管理器122還可以考慮其他因素,諸如硬件能力、可用電源、熱節(jié)流(throttling)限制和其他因素??梢詫⒋鎯?chǔ)器126具體化為能夠執(zhí)行本文所描述的功能的任何類型的易失性或非易失性存儲(chǔ)器或數(shù)據(jù)記憶裝置。在操作中,存儲(chǔ)器126可以存儲(chǔ)在計(jì)算設(shè)備100的操作期間使用的各種數(shù)據(jù)和軟件,諸如操作系統(tǒng)、應(yīng)用、程序、庫(kù)和驅(qū)動(dòng)。存儲(chǔ)器126經(jīng)由I/O子系統(tǒng)124通信地耦合到處理器120,可以將I/O子系統(tǒng)124具體化為用于促進(jìn)與處理器120、存儲(chǔ)器126和計(jì)算設(shè)備100的其他部件的輸入/輸出操作的電路和/或部件。例如,可以將I/O子系統(tǒng)124具體化為或以其他方式包括存儲(chǔ)器控制器集線器、輸入/輸出控制集線器、固件設(shè)備、通信鏈路(即點(diǎn)對(duì)點(diǎn)鏈路、總線鏈路、導(dǎo)線、電纜、光導(dǎo),印刷電路板跡線等)和/或用于促進(jìn)輸入/輸出操作的其他部件和子系統(tǒng)。在一些實(shí)施例中,I/O子系統(tǒng)124可以形成片上系統(tǒng)(SoC)的一部分,并且與處理器120、存儲(chǔ)器126和計(jì)算設(shè)備100的其他部件一起并入在單個(gè)集成電路芯片上??梢詫?shù)據(jù)存儲(chǔ)設(shè)備128具體化為被配置用于數(shù)據(jù)的短期或長(zhǎng)期存儲(chǔ)的任何類型的一個(gè)或多個(gè)設(shè)備,諸如例如存儲(chǔ)器設(shè)備和電路、存儲(chǔ)卡、硬盤(pán)驅(qū)動(dòng)器、固態(tài)驅(qū)動(dòng)器或其他數(shù)據(jù)存儲(chǔ)設(shè)備。數(shù)據(jù)存儲(chǔ)設(shè)備128可以存儲(chǔ)可以包括一個(gè)或多個(gè)功率管理策略的操作系統(tǒng)軟件。計(jì)算設(shè)備100還可以包括通信子系統(tǒng)130,可以將通信子系統(tǒng)130具體化為能夠通過(guò)計(jì)算機(jī)網(wǎng)絡(luò)(未示出)使能在計(jì)算設(shè)備100和其他遠(yuǎn)程設(shè)備之間的通信的任何通信電路、設(shè)備或其集合。通信子系統(tǒng)130可以被配置為使用任何一個(gè)或多個(gè)通信技術(shù)(例如,有線或無(wú)線通信)和相關(guān)聯(lián)的協(xié)議(例如,以太網(wǎng),Bluetooth?,Wi-Fi?,WiMAX等)來(lái)實(shí)現(xiàn)這樣的通信。當(dāng)處理器120處于低功率空閑狀態(tài),諸如連接待機(jī)時(shí),計(jì)算設(shè)備100可能能夠使用通信子系統(tǒng)130來(lái)與遠(yuǎn)程設(shè)備通信。附加地,計(jì)算設(shè)備100可以包括顯示器132和音頻設(shè)備134。可以將顯示器132具體化為能夠顯示數(shù)字信息的任何類型的顯示器,諸如液晶顯示器(LCD)、發(fā)光二極管(LED)、等離子體顯示器、陰極射線管(CRT)或其他類型的顯示設(shè)備??梢詫⒁纛l設(shè)備134具體化為能夠生成用于輸出的音頻信號(hào)的任何一個(gè)或多個(gè)設(shè)備,包括數(shù)模轉(zhuǎn)換器(DAC)、編解碼器、音頻輸出插孔、紙錐形(papercone)揚(yáng)聲器、音頻換能器、和/或其他類型的音頻設(shè)備。當(dāng)處理器120處于低功率狀態(tài)并且顯示器132斷電時(shí),計(jì)算設(shè)備100可能能夠執(zhí)行某些功能。例如,在處理器120處于低功率音頻狀態(tài)并且顯示器132斷電時(shí),計(jì)算設(shè)備100可以通過(guò)將音頻處理卸載到音頻設(shè)備134來(lái)生成音頻信號(hào)?,F(xiàn)在參考圖2,在說(shuō)明性實(shí)施例中,計(jì)算設(shè)備100在操作期間建立環(huán)境200。說(shuō)明性實(shí)施例200包括功率管理模塊202、場(chǎng)景評(píng)估模塊204和功率狀態(tài)策略模塊206??梢詫h(huán)境200的各種模塊具體化為硬件、固件、軟件或其組合。例如,環(huán)境200的模塊、邏輯和其他部件中的每一個(gè)可以形成處理器120或計(jì)算設(shè)備100的其他硬件部件的一部分,或者以其他方式由處理器120或計(jì)算設(shè)備100的其他硬件部件來(lái)建立。功率管理模塊202被配置為使得計(jì)算設(shè)備100進(jìn)入和退出低功率空閑狀態(tài)。低功率空閑狀態(tài)也稱為平臺(tái)空閑狀態(tài),其可以包括由處理器120、I/O子系統(tǒng)124和/或計(jì)算設(shè)備100的其他部件支持的任何低功率狀態(tài)。功率管理模塊202可以被配置為提供軟件或固件接口以控制處理器120,I/O子系統(tǒng)124和/或計(jì)算設(shè)備100的其他部件的功率管理。例如,功率管理模塊202可以實(shí)現(xiàn)高級(jí)配置和功率接口(ACPI)規(guī)范的實(shí)施或與高級(jí)配置和功率接口(ACPI)規(guī)范的實(shí)施對(duì)接。場(chǎng)景評(píng)估模塊204被配置為檢測(cè)計(jì)算設(shè)備100的目前使用場(chǎng)景,并確定目前使用場(chǎng)景是否有資格功率提升。如下所述,目前使用場(chǎng)景可以包括描述計(jì)算設(shè)備100的當(dāng)前軟件和/或硬件上下文的任何信息。場(chǎng)景評(píng)估模塊204可以保持包括一個(gè)或多個(gè)預(yù)定義使用場(chǎng)景的場(chǎng)景登記208。針對(duì)這些使用場(chǎng)景進(jìn)行匹配可以標(biāo)識(shí)目前使用場(chǎng)景是否有資格功率提升。如果目前使用場(chǎng)景有資格功率提升,則功率狀態(tài)策略模塊206被配置為應(yīng)用提升的功率管理策略210,并且如果目前使用場(chǎng)景沒(méi)有資格功率提升,則應(yīng)用默認(rèn)功率管理策略212。功率管理策略210、212中的每個(gè)可以包括用于確定處理器120和/或計(jì)算設(shè)備100的其他部件的性能和功耗的水平的一個(gè)或多個(gè)規(guī)則。應(yīng)用提升的功率管理策略210使處理器120和/或計(jì)算設(shè)備100的其他部件相對(duì)于默認(rèn)功率管理策略212以增加的性能和增加的功耗進(jìn)行操作。功率狀態(tài)策略模塊206可以通過(guò)為計(jì)算設(shè)備100的硬件生成適當(dāng)?shù)奶崾緛?lái)應(yīng)用功率管理策略210、212。例如,功率狀態(tài)策略模塊206可以與處理器120的能量管理器122進(jìn)行交互以指定期望的性能水平?,F(xiàn)在參考圖3,在使用中,計(jì)算設(shè)備100可以執(zhí)行用于協(xié)作硬件-軟件功率管理的方法300。方法300在框302中開(kāi)始,其中計(jì)算設(shè)備100進(jìn)入低功率空閑狀態(tài)。低功率空閑狀態(tài)可以是由處理器120、I/O子系統(tǒng)124和/或計(jì)算設(shè)備100的其他部件支持的任何低功率狀態(tài)。在一些實(shí)施例中,在框304中,計(jì)算設(shè)備100可以進(jìn)入連接待機(jī)狀態(tài),也稱為S0ix狀態(tài)。在連接待機(jī)狀態(tài)中,處理器120以降低的功耗模式進(jìn)行操作,但是可能能夠進(jìn)行有限的處理、網(wǎng)絡(luò)連接或其他操作。處理器120可能能夠快速地從連接待機(jī)狀態(tài)轉(zhuǎn)變出來(lái)到活動(dòng)處理狀態(tài)中,活動(dòng)處理狀態(tài)諸如S0。與傳統(tǒng)的掛起或待機(jī)狀態(tài)(例如,ACPIS3)不同,在連接待機(jī)狀態(tài)中軟件可以保持在存儲(chǔ)器中并且是活動(dòng)的,并且計(jì)算設(shè)備100可以使用通信子系統(tǒng)130來(lái)保持開(kāi)放的網(wǎng)絡(luò)連接。在一些實(shí)施例中,在框306中,計(jì)算設(shè)備100可以進(jìn)入低功率音頻回放狀態(tài)。在低功率音頻回放狀態(tài)中,處理器120可以將音頻回放任務(wù)卸載到音頻設(shè)備134。在處理器120處于低功率空閑狀態(tài),諸如連接待機(jī)狀態(tài)時(shí),音頻設(shè)備134可以輸出音頻信號(hào)。如下所述,處理器120可以周期性地從低功率空閑狀態(tài)喚醒,以準(zhǔn)備用于回放的附加音頻數(shù)據(jù)。計(jì)算設(shè)備100可以在低功率空閑狀態(tài)中繼續(xù)一些時(shí)間。在框308中,計(jì)算設(shè)備100退出低功率空閑狀態(tài)并進(jìn)入活動(dòng)處理狀態(tài),諸如ACPIS0狀態(tài)。計(jì)算設(shè)備100可以周期性地或者響應(yīng)于諸如中斷、網(wǎng)絡(luò)活動(dòng)或用戶輸入之類的一個(gè)或多個(gè)事件而退出低功率空閑狀態(tài)。例如,在進(jìn)入低功率音頻回放狀態(tài)之前,處理器120可以準(zhǔn)備足以回放一定時(shí)間長(zhǎng)度(例如,一秒)的固定量的音頻數(shù)據(jù)。當(dāng)處理器120處于低功率空閑狀態(tài)時(shí),音頻設(shè)備134訪問(wèn)音頻數(shù)據(jù)并生成輸出信號(hào)。在該示例中,計(jì)算設(shè)備100可以周期性地(例如,每秒)從低功率空閑狀態(tài)退出,以準(zhǔn)備用于回放的下一塊音頻數(shù)據(jù)。附加地或替代地,計(jì)算設(shè)備100可以響應(yīng)于諸如按鈕按壓以打開(kāi)顯示器132和/或以其他方式激活計(jì)算設(shè)備100的用戶輸入來(lái)退出低功率空閑狀態(tài)。在一些實(shí)施例中,計(jì)算設(shè)備100可以響應(yīng)于諸如定時(shí)器中斷、I/O設(shè)備中斷、音頻中斷、軟件生成的中斷或其他中斷之類的中斷而退出低功率空閑狀態(tài)。在框310中,計(jì)算設(shè)備100檢測(cè)計(jì)算設(shè)備100的目前使用場(chǎng)景。目前使用場(chǎng)景可以包括描述計(jì)算設(shè)備100的當(dāng)前軟件和/或硬件上下文的任何信息。例如,目前使用場(chǎng)景可以包括當(dāng)前用戶活動(dòng)、當(dāng)前運(yùn)行的進(jìn)程、顯示器132是上電還是斷電、是否正在播放音頻、當(dāng)前I/O活動(dòng)、計(jì)算設(shè)備100處于低功率空閑狀態(tài)的時(shí)間長(zhǎng)度、處理器使用和其他使用信息。在框312中,計(jì)算設(shè)備100確定目前使用場(chǎng)景是否有資格功率提升。如果可以通過(guò)在使用場(chǎng)景期間增加處理器120的性能和功耗來(lái)增加計(jì)算設(shè)備100的總能量效率,則可以認(rèn)為該使用場(chǎng)景有資格功率提升。例如,通過(guò)允許計(jì)算設(shè)備100更快地返回到低功率空閑狀態(tài)(即,“疾速睡眠(racetosleep)”),提升性能和功耗可以增加能量效率。計(jì)算設(shè)備100可以應(yīng)用一個(gè)或多個(gè)啟發(fā)法來(lái)確定目前使用場(chǎng)景是否有資格功率提升,或者計(jì)算設(shè)備100可以針對(duì)一個(gè)或多個(gè)預(yù)定義使用場(chǎng)景匹配目前使用場(chǎng)景。例如,計(jì)算設(shè)備100可以將目前使用場(chǎng)景與場(chǎng)景登記208中包括的一個(gè)或多個(gè)預(yù)定義使用場(chǎng)景進(jìn)行比較。場(chǎng)景登記208可以標(biāo)識(shí)有資格功率提升的使用場(chǎng)景,或者在一些實(shí)施例中,標(biāo)識(shí)沒(méi)有資格功率提升的使用場(chǎng)景。在框314中,計(jì)算設(shè)備100可以確定目前使用場(chǎng)景是否包括低功率音頻回放。如上所述,低功率音頻回放可以包括在重新進(jìn)入低功率空閑狀態(tài)之前周期性地將處理器120從低功率空閑狀態(tài)喚醒以準(zhǔn)備用于回放的新的音頻數(shù)據(jù)塊。在框316中,計(jì)算設(shè)備100可以確定目前使用場(chǎng)景是否包括屏幕上交互使用。當(dāng)退出處理器空閑狀態(tài)時(shí),增加處理器120的功耗可以改進(jìn)用戶界面響應(yīng)性、動(dòng)畫(huà)性能或其他交互性能。在框318中,計(jì)算設(shè)備100可以確定目前使用場(chǎng)景是否包括I/O受限(I/O-bound)工作負(fù)載。對(duì)于I/O受限工作負(fù)載,處理器120可以在等待在一個(gè)或多個(gè)I/O操作完成時(shí)發(fā)信號(hào)的I/O中斷時(shí)在低功率空閑狀態(tài)中空閑。響應(yīng)于中斷,處理器120可以在返回到低功率空閑狀態(tài)之前準(zhǔn)備下一個(gè)I/O操作。在框320中,計(jì)算設(shè)備100可以標(biāo)識(shí)包括在退出低功率空閑狀態(tài)之后執(zhí)行的高處理器使用突發(fā)的任何使用場(chǎng)景。在那些使用場(chǎng)景中,增加性能和功耗可以允許處理器120更快地完成處理,并從而將計(jì)算設(shè)備100更快地返回到低功率空閑狀態(tài)。因此,對(duì)于那些場(chǎng)景,功率提升可以改進(jìn)總體能量效率。在框322中,計(jì)算設(shè)備100確定是否應(yīng)當(dāng)對(duì)目前使用場(chǎng)景應(yīng)用功率提升。如果不是,則方法300分支到框328,如下所述。如果應(yīng)當(dāng)應(yīng)用功率提升,則方法300分支到框324。在框324中,計(jì)算設(shè)備100應(yīng)用提升的功率管理策略210。提升的功率管理策略210使處理器120和/或計(jì)算設(shè)備100的其他部件增加性能并增加功耗。在一些實(shí)施例中,在框326中,計(jì)算設(shè)備100可以生成對(duì)計(jì)算設(shè)備100的硬件的提示,以增加性能和功耗。處理器120可以基于由軟件提供的提示以及基于諸如硬件能力、可用電源、熱節(jié)流限制和其他因素之類的其他因素來(lái)調(diào)整性能和功耗。例如,在一些實(shí)施例中,計(jì)算設(shè)備100可以增加處理器120的p狀態(tài)。增加處理器120的p狀態(tài)使處理器120增加其頻率和/或電壓,從而改善性能以及增加功耗。附加地或替代地,在一些實(shí)施例中,計(jì)算設(shè)備100可以改變一個(gè)或多個(gè)能量性能偏差(EPB)模型特定寄存器(MSR)的值。處理器120可以基于提供給EPBMSR的值來(lái)調(diào)整其性能和功耗的內(nèi)部平衡。不是為處理器120指定一個(gè)或多個(gè)離散頻率水平,而是EPBMSR可以允許軟件指定處理器120嘗試實(shí)現(xiàn)的相對(duì)性能水平的范圍。例如,在一些實(shí)施例中,處理器120可以提供IA32_ENERGY_PERF_BIAS寄存器。IA32_ENERGY_PERF_BIAS寄存器可以允許計(jì)算設(shè)備100指定從最大性能變化到最大能量節(jié)省的四位值。附加地或替代地,在一些實(shí)施例中,處理器120可以支持硬件控制的性能狀態(tài)(HWP),其基于由軟件提供的提示來(lái)自主選擇性能狀態(tài)。處理器120可以提供若干MSR,包括用于指定最小所需性能、最大預(yù)期性能、期望性能、能量性能偏好的提示以及其他提示的寄存器。在應(yīng)用提升的功率管理策略210之后,方法300進(jìn)行到框332,如下所述。返回參考框322,如果不應(yīng)當(dāng)應(yīng)用功率提升,則方法300分支到框328。在框328中,計(jì)算設(shè)備100應(yīng)用默認(rèn)功率管理策略212。默認(rèn)功率管理策略212傾向于指定比提升的功率管理策略210低的性能和低的功耗。例如,默認(rèn)功率管理策略212可以基于處理器120的近來(lái)的利用來(lái)設(shè)置處理器120的性能和功率使用,當(dāng)處理器120的近來(lái)的利用已經(jīng)為高時(shí)增加性能和功率使用。計(jì)算設(shè)備100可以周期性地評(píng)估處理器利用(例如,每30毫秒)并且基于該評(píng)估來(lái)調(diào)整處理器120。因此,當(dāng)處理器利用為低時(shí)退出低功率空閑狀態(tài)時(shí),處理器120可以最初執(zhí)行在其最低性能活動(dòng)狀態(tài)中。甚至當(dāng)被充分利用時(shí),處理器120可能需要一個(gè)或多個(gè)評(píng)估周期(例如,至少30毫秒)來(lái)上升(rampup)到全性能和全功率使用。特別地,服務(wù)器計(jì)算設(shè)備和操作系統(tǒng)可以具有相對(duì)長(zhǎng)的上升時(shí)段以實(shí)現(xiàn)全性能和功耗。在一些實(shí)施例中,在框330中,計(jì)算設(shè)備100可以生成對(duì)計(jì)算設(shè)備100的硬件的提示以降低功耗和性能。例如,類似于上面結(jié)合框326所描述的提示,計(jì)算設(shè)備100可以使用一個(gè)或多個(gè)EPBMSR來(lái)降低處理器120的p狀態(tài)或指定降低的能量使用和/或降低的性能。在應(yīng)用默認(rèn)功率管理策略212之后,方法300前進(jìn)到框332。在框332中,計(jì)算設(shè)備100使用處理器120來(lái)執(zhí)行活動(dòng)處理。例如,計(jì)算設(shè)備100可以在ACPIS0和/或C0活動(dòng)狀態(tài)中執(zhí)行計(jì)算或其他操作,諸如準(zhǔn)備用于回放的音頻數(shù)據(jù)、處理用戶交互或動(dòng)畫(huà)、準(zhǔn)備I/O操作或其他操作。在活動(dòng)處理器狀態(tài)期間計(jì)算設(shè)備100的特定性能和功耗取決于已經(jīng)應(yīng)用了哪個(gè)功率管理策略210、212。在框334中,計(jì)算設(shè)備100確定是否返回到低功率空閑狀態(tài)。例如當(dāng)完成特定操作的處理時(shí),諸如當(dāng)已經(jīng)準(zhǔn)備好音頻數(shù)據(jù)用于回放時(shí)或者當(dāng)I/O操作已經(jīng)被提交到I/O設(shè)備時(shí),計(jì)算設(shè)備100可以返回到低功率空閑狀態(tài)。作為另一示例,計(jì)算設(shè)備100可以響應(yīng)于諸如關(guān)閉顯示器132的命令之類的用戶命令而返回到低功率空閑狀態(tài)。如果沒(méi)有返回到低功率空閑狀態(tài),則方法300循環(huán)回到框310以繼續(xù)檢測(cè)目前使用場(chǎng)景。如果返回到低功率空閑狀態(tài),則方法300循環(huán)回到框302以進(jìn)入低功率空閑狀態(tài)。雖然被示為檢測(cè)目前使用場(chǎng)景、確定當(dāng)前場(chǎng)景是否有資格功率提升、并且響應(yīng)于退出低功率空閑狀態(tài)而應(yīng)用正確的功率管理策略210、212,但是應(yīng)當(dāng)理解計(jì)算設(shè)備100可以在其他時(shí)間執(zhí)行那些操作。例如,在一些實(shí)施例中,計(jì)算設(shè)備100可以檢測(cè)目前使用場(chǎng)景并且響應(yīng)于所請(qǐng)求的使用改變,諸如用戶輸入、軟件命令或類似事件來(lái)確定目前使用場(chǎng)景是否有資格功率提升。作為另一示例,計(jì)算設(shè)備100可以獨(dú)立于例如在單獨(dú)的操作系統(tǒng)任務(wù)或線程中進(jìn)入和退出低功率空閑狀態(tài)來(lái)檢測(cè)目前使用場(chǎng)景。類似地,在一些實(shí)施例中,計(jì)算設(shè)備100可以在任何時(shí)間應(yīng)用適當(dāng)?shù)墓β使芾聿呗?10、212并生成用于硬件的對(duì)應(yīng)提示,并且處理器120和/或計(jì)算設(shè)備100的其他部件可以在退出低功率空閑狀態(tài)時(shí)自動(dòng)地選擇性能和功耗的適當(dāng)平衡,而不需要來(lái)自計(jì)算設(shè)備100的軟件的進(jìn)一步輸入。示例下面提供本文公開(kāi)的技術(shù)的說(shuō)明性示例。這些技術(shù)的實(shí)施例可以包括下面描述的示例中的任何一個(gè)或多個(gè)以及任何組合。示例1包括一種用于協(xié)作硬件-軟件功率管理的計(jì)算設(shè)備,所述計(jì)算設(shè)備包括:場(chǎng)景評(píng)估模塊,用于(i)由所述計(jì)算設(shè)備檢測(cè)所述計(jì)算設(shè)備的目前使用場(chǎng)景,所述目前使用場(chǎng)景包括從低功率空閑狀態(tài)退出,以及(ii)確定所述目前使用場(chǎng)景是否有資格功率提升;以及功率狀態(tài)策略模塊,用于(i)響應(yīng)于確定所述目前使用場(chǎng)景有資格功率提升而應(yīng)用提升的功率管理策略,以及(ii)響應(yīng)于確定所述目前使用場(chǎng)景沒(méi)有資格功率提升而應(yīng)用默認(rèn)功率管理策略,其中所述提升的功率管理策略定義相對(duì)于所述默認(rèn)功率管理策略的所述計(jì)算設(shè)備的更高功耗。示例2包括示例1的主題,并且其中應(yīng)用所述提升的功率管理策略包括:響應(yīng)于所述低功率空閑狀態(tài)的退出而應(yīng)用所述提升的功率管理策略;以及應(yīng)用所述默認(rèn)功率管理策略包括響應(yīng)于所述低功率空閑狀態(tài)的退出而應(yīng)用所述默認(rèn)功率管理策略。示例3包括示例1和2中任一項(xiàng)的主題,并且其中檢測(cè)所述目前使用場(chǎng)景包括響應(yīng)于所述低功率空閑狀態(tài)的退出而檢測(cè)所述目前使用場(chǎng)景。示例4包括示例1-3中任一項(xiàng)的主題,并且其中所述低功率空閑狀態(tài)包括連接待機(jī)狀態(tài)。示例5包括示例1-4中任一項(xiàng)的主題,并且其中所述低功率空閑狀態(tài)包括低功率音頻回放狀態(tài)。示例6包括示例1-5中任一項(xiàng)的主題,并且其中確定所述目前使用場(chǎng)景是否有資格功率提升包括:將所述目前使用場(chǎng)景與預(yù)定義使用場(chǎng)景的登記進(jìn)行比較。示例7包括示例1-6中任一項(xiàng)的主題,并且其中確定所述目前使用場(chǎng)景是否有資格功率提升包括:確定所述目前使用場(chǎng)景是否是低功率音頻回放場(chǎng)景。示例8包括示例1-7中任一項(xiàng)的主題,并且其中確定所述目前使用場(chǎng)景是否有資格功率提升包括:確定所述目前使用場(chǎng)景是否是屏幕上交互場(chǎng)景。示例9包括示例1-8中任一項(xiàng)的主題,并且其中確定所述目前使用場(chǎng)景是否有資格功率提升包括:確定所述目前使用場(chǎng)景是否是I/O受限工作負(fù)載場(chǎng)景。示例10包括示例1-9中任一項(xiàng)的主題,并且其中確定所述目前使用場(chǎng)景是否有資格功率提升包括:確定所述目前使用場(chǎng)景是否包括跟隨在所述計(jì)算設(shè)備的空閑時(shí)段之后的高處理器使用的突發(fā)。示例11包括示例1-10中任一項(xiàng)的主題,并且其中應(yīng)用所述提升的功率管理策略包括:提示所述計(jì)算設(shè)備的處理器增加功耗;以及應(yīng)用所述默認(rèn)功率管理策略包括:提示所述處理器相對(duì)于所述提升的功率管理策略減少功耗。示例12包括示例1-11中任一項(xiàng)的主題,并且其中提示所述處理器增加功耗包括增加所述計(jì)算設(shè)備的處理器p狀態(tài)。示例13包括示例1-12中任一項(xiàng)的主題,并且其中增加所述處理器p狀態(tài)包括增加處理器頻率或處理器電壓。示例14包括示例1-13中任一項(xiàng)的主題,并且其中提示所述處理器相對(duì)于所述提升的功率管理策略減少功耗包括:根據(jù)所述計(jì)算設(shè)備的處理器利用來(lái)設(shè)置所述處理器p狀態(tài)。示例15包括示例1-14中任一項(xiàng)的主題,并且其中提示所述處理器增加功耗包括:將所述處理器的能量性能偏差(EPB)模型特定寄存器(MSR)設(shè)置為第一寄存器值;以及提示所述處理器相對(duì)于所述提升的功率管理策略減少功耗包括:將EPBMSR設(shè)置為第二寄存器值,其中所述第一寄存器值指示比所述第二寄存器值高的功耗。示例16包括一種用于協(xié)作硬件-軟件功率管理的方法,所述方法包括:由計(jì)算設(shè)備檢測(cè)所述計(jì)算設(shè)備的目前使用場(chǎng)景;由所述計(jì)算設(shè)備確定所述目前使用場(chǎng)景是否有資格功率提升;在所述目前使用場(chǎng)景期間由計(jì)算設(shè)備退出低功率空閑狀態(tài);響應(yīng)于確定所述目前使用場(chǎng)景有資格功率提升,由所述計(jì)算設(shè)備應(yīng)用提升的功率管理策略;以及響應(yīng)于確定所述目前使用場(chǎng)景沒(méi)有資格功率提升,由所述計(jì)算設(shè)備應(yīng)用默認(rèn)功率管理策略,其中所述提升的功率管理策略定義相對(duì)于所述默認(rèn)功率管理策略的所述計(jì)算設(shè)備的更高功耗。示例17包括示例16的主題,并且其中應(yīng)用所述提升的功率管理策略包括:響應(yīng)于退出所述低功率空閑狀態(tài)而應(yīng)用所述提升的功率管理策略;以及應(yīng)用所述默認(rèn)功率管理策略包括響應(yīng)于退出所述低功率空閑狀態(tài)而應(yīng)用所述默認(rèn)功率管理策略。示例18包括示例16和17中任一項(xiàng)的主題,并且其中檢測(cè)所述目前使用場(chǎng)景包括響應(yīng)于退出所述低功率空閑狀態(tài)來(lái)檢測(cè)所述目前使用場(chǎng)景。示例19包括示例16-18中任一項(xiàng)的主題,并且其中退出所述低功率空閑狀態(tài)包括退出連接待機(jī)狀態(tài)。示例20包括示例16-19中任一項(xiàng)的主題,并且其中退出所述低功率空閑狀態(tài)包括退出低功率音頻回放狀態(tài)。示例21包括示例16-20中任一項(xiàng)的主題,并且其中確定所述目前使用場(chǎng)景是否有資格功率提升包括:將所述目前使用場(chǎng)景與預(yù)定義使用場(chǎng)景的登記進(jìn)行比較。示例22包括示例16-21中任一項(xiàng)的主題,并且其中確定所述目前使用場(chǎng)景是否有資格功率提升包括:確定所述目前使用場(chǎng)景是否是低功率音頻回放場(chǎng)景。示例23包括示例16-22中任一項(xiàng)的主題,并且其中確定所述目前使用場(chǎng)景是否有資格功率提升包括:確定所述目前使用場(chǎng)景是否是屏幕上交互場(chǎng)景。示例24包括示例16-23中任一項(xiàng)的主題,并且其中確定所述目前使用場(chǎng)景是否有資格功率提升包括:確定所述目前使用場(chǎng)景是否是I/O受限工作負(fù)載場(chǎng)景。示例25包括示例16-24中任一項(xiàng)的主題,并且其中確定所述目前使用場(chǎng)景是否有資格功率提升包括:確定所述目前使用場(chǎng)景是否包括跟隨在所述計(jì)算設(shè)備的空閑時(shí)段之后的高處理器使用的突發(fā)。示例26包括示例16-25中任一項(xiàng)的主題,并且其中應(yīng)用所述提升的功率管理策略包括:提示所述計(jì)算設(shè)備的處理器增加功耗;以及應(yīng)用所述默認(rèn)功率管理策略包括:提示所述處理器相對(duì)于所述提升的功率管理策略減少功耗。示例27包括示例16-26中任一項(xiàng)的主題,并且其中提示所述處理器增加功耗包括增加所述計(jì)算設(shè)備的處理器p狀態(tài)。示例28包括示例16-27中任一項(xiàng)的主題,并且其中增加所述處理器p狀態(tài)包括增加處理器頻率或處理器電壓。示例29包括示例16-28中任一項(xiàng)的主題,并且其中提示所述處理器相對(duì)于所述提升的功率管理策略減少功耗包括:根據(jù)所述計(jì)算設(shè)備的處理器利用設(shè)置所述處理器p狀態(tài)。示例30包括示例16-29中任一項(xiàng)的主題,并且其中提示所述處理器增加功耗包括:將所述處理器的能量性能偏差(EPB)模型特定寄存器(MSR)設(shè)置為第一寄存器值;以及提示所述處理器相對(duì)于所述提升的功率管理策略減少功耗包括:將EPBMSR設(shè)置為第二寄存器值,其中所述第一寄存器值指示比所述第二寄存器值高的功耗。示例31包括一種計(jì)算設(shè)備,所述計(jì)算設(shè)備包括處理器;以及其中存儲(chǔ)有多個(gè)指令的存儲(chǔ)器,所述指令在由所述處理器執(zhí)行時(shí)使所述計(jì)算設(shè)備執(zhí)行示例16-30中任一項(xiàng)所述的方法。示例32包括一個(gè)或多個(gè)機(jī)器可讀存儲(chǔ)介質(zhì),其包括存儲(chǔ)在其上的多個(gè)指令,所述指令響應(yīng)于被執(zhí)行而導(dǎo)致計(jì)算設(shè)備執(zhí)行示例16-30中任一項(xiàng)的方法。示例33包括一種計(jì)算設(shè)備,所述計(jì)算設(shè)備包括用于執(zhí)行示例16-30中任一項(xiàng)所述的方法的裝置。示例34包括一種用于協(xié)作硬件-軟件功率管理的計(jì)算設(shè)備,所述計(jì)算設(shè)備包括用于檢測(cè)所述計(jì)算設(shè)備的目前使用場(chǎng)景的裝置;用于確定所述目前使用場(chǎng)景是否有資格功率提升的裝置;用于在所述目前使用場(chǎng)景期間退出低功率空閑狀態(tài)的裝置;用于響應(yīng)于確定所述目前使用場(chǎng)景有資格功率提升而應(yīng)用提升的功率管理策略的裝置;以及用于響應(yīng)于確定所述目前使用場(chǎng)景沒(méi)有資格功率提升而應(yīng)用默認(rèn)功率管理策略的裝置,其中所述提升的功率管理策略定義了相對(duì)于所述默認(rèn)功率管理策略的所述計(jì)算設(shè)備的更高功耗。示例35包括示例34的主題,并且其中用于應(yīng)用所述提升的功率管理策略的裝置包括:用于響應(yīng)于退出所述低功率空閑狀態(tài)而應(yīng)用所述提升的功率管理策略的裝置;并且用于應(yīng)用所述默認(rèn)功率管理策略的裝置包括用于響應(yīng)于退出所述低功率空閑狀態(tài)而應(yīng)用所述默認(rèn)功率管理策略的裝置。示例36包括示例34和35中任一項(xiàng)的主題,并且其中用于檢測(cè)所述目前使用場(chǎng)景的裝置包括用于響應(yīng)于退出所述低功率空閑狀態(tài)來(lái)檢測(cè)所述目前使用場(chǎng)景的裝置。示例37包括示例34-36中任一項(xiàng)的主題,并且其中用于退出所述低功率空閑狀態(tài)的裝置包括用于退出連接待機(jī)狀態(tài)的裝置。示例38包括示例34-37中任一項(xiàng)的主題,并且其中用于退出所述低功率空閑狀態(tài)的裝置包括用于退出低功率音頻回放狀態(tài)的裝置。示例39包括示例34-38中任一項(xiàng)的主題,并且其中用于確定所述目前使用場(chǎng)景是否有資格功率提升的裝置包括用于將所述目前使用場(chǎng)景與預(yù)定義使用場(chǎng)景的登記進(jìn)行比較的裝置。示例40包括示例34-39中任一項(xiàng)的主題,并且其中用于確定所述目前使用場(chǎng)景是否有資格功率提升的裝置包括用于確定所述目前使用場(chǎng)景是否是低功率音頻回放場(chǎng)景的裝置。示例41包括示例34-40中任一項(xiàng)的主題,并且其中用于確定所述目前使用場(chǎng)景是否有資格功率提升的裝置包括用于確定所述目前使用場(chǎng)景是否是屏幕上交互場(chǎng)景的裝置。示例42包括示例34-41中任一項(xiàng)的主題,并且其中用于確定所述目前使用場(chǎng)景是否有資格功率提升的裝置包括用于確定所述目前使用場(chǎng)景是否是I/O受限工作負(fù)載場(chǎng)景的裝置。示例43包括示例34-42中任一項(xiàng)的主題,并且其中用于確定所述目前使用場(chǎng)景是否有資格功率提升的裝置包括用于確定所述目前使用場(chǎng)景是否包括跟隨在所述計(jì)算設(shè)備的空閑時(shí)段之后的高處理器使用的突發(fā)的裝置。示例44包括示例34-43中任一項(xiàng)的主題,并且其中用于應(yīng)用所述提升的功率管理策略的裝置包括用于提示所述計(jì)算設(shè)備的處理器增加功耗的裝置;并且用于應(yīng)用所述默認(rèn)功率管理策略的裝置包括用于提示所述處理器相對(duì)于所述提升的功率管理策略減少功耗的裝置。示例45包括示例34-44中任一項(xiàng)的主題,并且其中用于提示所述處理器增加功耗的裝置包括用于增加所述計(jì)算設(shè)備的處理器p狀態(tài)的裝置。示例46包括示例34-45中任一項(xiàng)的主題,并且其中用于增加所述處理器p狀態(tài)的裝置包括用于增加處理器頻率或處理器電壓的裝置。示例47包括示例34-46中任一項(xiàng)的主題,并且其中用于提示所述處理器相對(duì)于所述提升的功率管理策略減少功耗的裝置包括用于根據(jù)所述計(jì)算設(shè)備的處理器利用來(lái)設(shè)置所述處理器p狀態(tài)的裝置。示例48包括示例34-47中任一項(xiàng)的主題,并且其中用于提示所述處理器增加功耗的裝置包括用于將所述處理器的能量性能偏差(EPB)模型特定寄存器(MSR)設(shè)置為第一寄存器值的裝置;以及用于提示所述處理器相對(duì)于所述提升的功率管理策略減少功耗的裝置包括用于將EPBMSR設(shè)置為第二寄存器值的裝置,其中所述第一寄存器值指示比所述第二寄存器值高的功耗。當(dāng)前第1頁(yè)1 2 3