[go: up one dir, main page]

TWI619007B - 用於預測性控制之電腦實施方法、非暫時性電腦可讀媒體及處理裝置 - Google Patents

用於預測性控制之電腦實施方法、非暫時性電腦可讀媒體及處理裝置 Download PDF

Info

Publication number
TWI619007B
TWI619007B TW105111691A TW105111691A TWI619007B TW I619007 B TWI619007 B TW I619007B TW 105111691 A TW105111691 A TW 105111691A TW 105111691 A TW105111691 A TW 105111691A TW I619007 B TWI619007 B TW I619007B
Authority
TW
Taiwan
Prior art keywords
processing
task
future
processing device
tasks
Prior art date
Application number
TW105111691A
Other languages
English (en)
Other versions
TW201710830A (zh
Inventor
納嘉拉真 卡雅那山達嵐
傑S 尼根
詹姆士S 依斯梅爾
理查H 譚
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 TW201710830A publication Critical patent/TW201710830A/zh
Application granted granted Critical
Publication of TWI619007B publication Critical patent/TWI619007B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/329Power saving characterised by the action undertaken by task scheduling
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Power Sources (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本發明揭示用於進行以下操作之系統及方法:判定一處理裝置之一當前機器狀態;預測待由該處理裝置在一未來時間執行之一未來處理任務;及預測待在一第一時間(例如,一當前時間)與該未來處理任務之開始期間執行的插入處理任務之一清單。該未來處理任務具有一相關聯之初始狀態。一前饋熱預測模型判定在開始該未來處理任務時的一預測之未來機器狀態。可在該未來處理任務之該開始前應用熱量減輕處理程序,以符合用於開始該未來處理任務之該未來初始機器狀態。

Description

用於預測性控制之電腦實施方法、非暫時性電腦可讀媒體及處理裝置 [相關申請案]
本美國專利申請案依據35 U.S.C.§ 119(e)主張2015年6月5日申請且題為「PREDICTIVE CONTROL SYSTEMS AND METHODS」的美國專利申請案第62/171,964號(代理人案號4860.P26197Z)之優先權,該專利申請案按其與本發明一致之程度被以引用的方式併入本文中。
本美國專利申請案與以下美國專利申請案有關,其中之每一者按其與本發明一致之程度被以引用的方式併入本文中:(1)2014年9月30日申請之題為「THERMAL MITIGATION USING SELECTIVE TASK MODULATION」的申請案第14/503,318號(檔案編號P23569US1);及(2)2014年9月30日申請之題為「THERMALLY ADAPTIVE QUALITY-OF-SERVICE」的申請案第14/503,321號(檔案編號P23569US2)。
本發明係關於電子裝置之溫度控制之領域,且詳言之,在一項實施例中,係關於電子裝置之溫度控制之預測性方法。
在操作中,電子裝置消耗電力且產生熱量。裝置消耗之電力愈多,則裝置產生之熱量愈大。諸如膝上型電腦或桌上型電腦或攜帶型電子裝置之裝置可含有熱量產生組件,諸如,顯示器、一或多個處理 單元、硬碟及/或快閃記憶體或其他固態磁碟機記憶體及各種子系統(諸如,音訊、電信及記憶體)。消耗之電力量及產生之熱量可能很高,使得裝置包括用於冷卻該裝置之一或多個風扇。一些裝置可包括其他能量節省(及熱量減小)特徵,諸如,減小裝置中的處理器之或降低裝置中的顯示器之亮度。通常,電子裝置回應於電子裝置的量測之目前溫度調用熱量減少程序。熱量減少程序可影響裝置的使用者之經歷。舉例而言,風扇可在使用者正進行視訊會議時出現響聲,從而使使用者及視訊會議上之其他者難以相互聽到。在使用者正在玩處理器集中式視訊遊戲時,處理器之時脈速度可回應於量測之目前溫度而自動減小,藉此降低了在玩遊戲期間裝置之回應性。當使用者正嘗試搜尋地方以在晴朗的白天吃午餐時,顯示器之亮度可回應於裝置的量測之目前溫度而自動降低,從而使閱讀裝置之顯示器困難。先前技術之冷卻構件係回應於裝置的量測之目前溫度而調用,且可負面影響使用者使用該電子裝置之經歷。
本文中描述用於藉由預測使用者將執行之未來任務及在未來處理任務之開始前進行搶先操作以冷卻該裝置來最大化使用者使用電子處理裝置之經歷的實施例。在一實施例中,可緩慢且平穩地應用預備搶先操作以給予使用者連續最佳化之計算經歷的感覺。可回應於與量測之溫度截然不同的預測之溫度進行一或多個搶先操作以冷卻處理裝置。在一實施例中,可與回應於量測之溫度的閉合迴路冷卻操作一起執行搶先冷卻操作。
在一項實施例中,可自由使用者執行的過去處理任務之歷史判定未來處理任務。可預測用於處理任務之時間,且可使用過去處理任務之歷史預測插入處理任務之清單。可自用於處理任務的功率使用量之資料庫判定用於每一處理任務之功率要求,使得可估計第一時間 (或當前時間)與未來處理任務之開始時間之間的功率利用。電子裝置之當前溫度及插入處理任務之清單與其相關聯之功率要求(或其他熱設定檔資料)一起可輸入至前饋預測性模型以預測在未來處理任務之開始時間處理裝置將會處在之未來溫度。處理裝置可接著在逐漸導至未來處理任務之時間週期上開始冷卻處理裝置。在一實施例中,可藉由分析過去處理任務之歷史以判定過去處理任務中的使用者行為之型樣來判定未來任務。判定使用者行為之型樣可包括判定使用者開始一特定任務的在大致當天時間,判定使用者執行該特定任務之大致持續時間,判定使用者執行該特定任務的一週中之特定日,或此等之任何組合。在一實施例中,判定未來處理任務可包括檢驗來自行事曆應用程式之資料或剖析電子郵件應用程式中的電子郵件之文字,以便判定視訊會議之日期/時間。判定任務之功率要求可包括查找用於處理任務的遞增之功率使用量及用於該處理任務之估計之持續時間乘以該增量。在一實施例中,判定任務之功率要求可包括在處理任務之資料庫中查找該處理任務。針對未來處理任務準備處理裝置可包括將一或多個插入任務重新排程至稍後時間,降低一或多個插入任務之排程優先權,降低顯示器亮度,或減小處理器之時脈速度,或此等之組合。
在另一實施例中,可藉由判定用於處理任務之已知初始集合的初始功率利用(諸如,處理裝置之初始啟動流量)來產生用於處理任務的功率使用量要求之資料庫。接著,用於啟動之每一額外處理任務,可量測用於該處理任務之功率。在一實施例中,由處理任務使用之功率可在處理任務之執行之全部持續時間上量測,且加以儲存。在另一實施例中,由處理任務使用之功率可按諸如25毫秒(25ms)之時間增量取樣。可平均化且儲存在一或多個增量上使用之功率。工廠或「種子」功率使用量資料庫可預先安裝於電子裝置上。接著,實際量測之功率使用量可經獲取及儲存,且隨著時間的過去,校正或替換種子功 率使用量資料庫。熱管理處理程序可使用實際量測之功率使用量或預先安裝之功率使用量資料庫或兩者之間的加權因數,以預測由特定處理任務使用之功率量,及因此,產生之熱量。
在又一實施例中,可藉由監視新任務之開始來產生處理活動之資料庫。在電子裝置之核心內的處理程序可執行監視功能。替代地,監視功能可由背景處理程序執行。在另一實施例中,當核心偵測到新處理任務之開始時,核心可發送訊息或產生中斷。當新處理任務開始時,熱管理處理程序可在一時間週期內監視該處理程序,且判定該處理程序消耗是否大於一臨限功率量。若不,則可能不值得將處理活動儲存在資料庫中。若判定新處理程序產生大於臨限功率量,則可儲存處理機器之當前狀態,且可將新處理程序之開始記錄於處理程序歷史資料庫中。當新處理任務終止時,由處理任務在其執行期間使用的總功率量亦可與處理任務之總執行時間一起儲存在處理程序歷史資料庫中。在一實施例中,由處理任務使用之平均功率可按例如25ms之增量儲存。
在另一實施例中,可自處理任務歷史資料庫判定使用者行為之型樣。可將查詢發出至資料庫以判定使用者型樣,諸如,判定使用者在工作日之何時間第一次存取其處理裝置,及判定使用者執行之第一處理任務(諸如,檢查電子郵件),及執行第一處理程序之時間長短。若型樣經識別,則可將該型樣作為獲悉之型樣記錄存儲在處理任務歷史資料庫中。在一實施例中,儲存之機器狀態可與獲悉之型樣記錄相關聯。舉例而言,使用者可在連接至Wi-Fi時始終執行視訊會議,以節省高成本蜂巢式頻寬。類似地,使用者可始終在家經由諸如乙太網路連接之有線連接來執行玩遊戲。
在又一實施例中,使用者可同步以下各者中之一或多者:使用者歷史資料庫、功率使用量資料庫或複數個處理裝置上之機器狀態。 在一實施例中,可將複數個處理裝置皆對同一使用者註冊。可使用同步服務執行同步。在一些實施例中,若電子裝置之類型或大小不同,則不儲存功率使用量資訊中之至少一些。舉例而言,iPhone®可具有與iMac®實質上不同的功率使用量資料,且因此,同步功率使用量資料庫可能無意義。然而,獲悉之型樣(諸如,在每日上午9點檢查個人之電子郵件)可獨立於用以存取電子郵件的處理裝置之類型而相關。
一些實施例在一環境中包括一或多個應用程式設計介面(API),其中經由該一或多個介面呼叫與其他程式碼互動之呼叫程式碼。可經由呼叫程式與正被呼叫之程式碼之間的API傳送進一步可包括各種參數的各種功能呼叫、訊息或其他類型之調用。此外,API可給呼叫程式碼提供使用在API中定義及在被呼叫之程式碼中實施的資料類型或類別之能力。
至少某些實施例包括其中呼叫軟體組件經由API與被呼叫之軟體組件互動之環境。用於在此環境中經由API操作之方法包括經由該API傳送一或多個功能呼叫、訊息或其他類型之調用或參數。
其他特徵及優勢將自隨附圖式及自實施方式顯而易見。
100‧‧‧處理裝置/處理器裝置
101‧‧‧膝上型電腦
102‧‧‧平板電腦
103‧‧‧智慧型手機
110‧‧‧硬體/硬體組件
111‧‧‧電源
112‧‧‧圖形處理器
113‧‧‧音訊組件/音訊
114‧‧‧通信組件
115‧‧‧冷卻組件/冷卻設備/冷卻風扇/冷卻硬體
116‧‧‧顯示器
117‧‧‧輸入裝置
118‧‧‧儲存器/儲存裝置
118A‧‧‧資料庫
118B‧‧‧處理任務歷史
120‧‧‧作業系統核心
121‧‧‧熱及功率量測與裝置控制模組
122‧‧‧處理程序管理器/排程器
123‧‧‧核心處理程序/核心任務
130‧‧‧使用者處理程序/使用者應用程式
131‧‧‧行事曆應用程式
132‧‧‧視訊播放應用程式
133‧‧‧電子郵件應用程式
134‧‧‧視訊會議應用程式/視訊會議/視訊會議通話
135‧‧‧視訊遊戲/遊戲處理程序/視訊遊戲應用程式
136‧‧‧文書處理應用程式
140‧‧‧背景處理程序/背景任務/背景處理任務/網路
141‧‧‧資料庫索引
142‧‧‧排程或自動化之備份或同步
150‧‧‧熱狀態管理器
151‧‧‧熱狀態量測模組
152‧‧‧處理任務識別及功率要求模組
153‧‧‧未來機器狀態準備邏輯
200‧‧‧針對未來處理任務準備處理裝置之狀態之方法
210‧‧‧前饋熱預測模型
300‧‧‧機器狀態/機器狀態記錄
304‧‧‧參數3
305‧‧‧單一溫度量測/功率消耗量度
310‧‧‧中央處理單元(CPU)
315‧‧‧圖形處理單元(GPU)
320‧‧‧音訊系統
325‧‧‧Wi-Fi信號
330‧‧‧網路/網路連接/機器狀態屬性
335‧‧‧小區信號/蜂巢式信號
340‧‧‧顯示器/顯示器亮度
345‧‧‧儲存器
350‧‧‧電池/機器狀態屬性
355‧‧‧電池電量
360‧‧‧光偵測
365‧‧‧聲音偵測
370‧‧‧在家/機器狀態屬性/欄位
375‧‧‧運動偵測/欄位
385‧‧‧供應電壓位準
390‧‧‧天氣
400‧‧‧功率使用量記錄/資訊/資料庫記錄
401‧‧‧記錄識別符
402‧‧‧處理程序或裝置描述
403‧‧‧功率消耗時間增量△t
404‧‧‧在時間增量期間消耗之功率量
405‧‧‧處理優先權參數
406‧‧‧處理優先權參數值
410‧‧‧功率使用量記錄/主處理器
415‧‧‧冷卻風扇
420‧‧‧圖形處理器
425‧‧‧功率轉換器模組
430‧‧‧音訊編碼解碼器
440‧‧‧硬碟
445‧‧‧核心處理程序
450‧‧‧排程器處理程序
455‧‧‧系統閒置處理程序
460‧‧‧電子郵件應用程式記錄
465‧‧‧發送郵件執行緒記錄
470‧‧‧記錄
475‧‧‧記錄
500‧‧‧處理活動記錄/處理活動資料庫/處理活動歷史記錄/使用者處理歷史資料庫/新使用者活動記錄/使用者活動資料庫/使用者處理資訊
501‧‧‧用於特定處理活動之開始的時間戳
502‧‧‧活動之持續時間
503‧‧‧活動之命令或事件名稱
504‧‧‧應用程式
505‧‧‧執行緒
506‧‧‧功率量
507‧‧‧機器狀態記錄參考/欄位
510‧‧‧處理活動記錄
515‧‧‧處理活動記錄
520‧‧‧處理活動記錄
525‧‧‧處理活動記錄
530‧‧‧處理活動記錄
535‧‧‧處理活動記錄
540‧‧‧處理活動記錄
545‧‧‧處理活動記錄
550‧‧‧處理活動記錄
555‧‧‧處理活動記錄
560‧‧‧處理活動記錄
565‧‧‧處理活動記錄
570‧‧‧處理活動記錄
575‧‧‧處理活動記錄
580‧‧‧處理活動記錄/處理活動
585‧‧‧處理活動記錄
590‧‧‧處理活動記錄
600‧‧‧判定經預測或排程之未來處理任務、處理任務之開始時間及開始處理任務之初始狀態之方法
700‧‧‧判定自第一時間(例如,當前時間)直至用於未來預測或排程之處理任務(「未來處理任務」)之開始時間的經預測或排程之處理任務(「插入處理任務」)之方法
800‧‧‧針對選定未來處理任務準備處理裝置之方法
900‧‧‧產生用於處理任務的功率使用量記錄之初始「種子」資料庫之方法
901‧‧‧在處理裝置之使用期間產生用於處理任務的功率使用量記錄之歷史之方法
1000‧‧‧基於與處理裝置之使用者互動產生使用者處理任務之歷史之方法
1100‧‧‧用於自使用者處理任務之歷史判定使用者行為型樣之方法
1200‧‧‧同步系統/同步服務
1210‧‧‧後設資料伺服器
1220‧‧‧同步管理系統/同步系統管理器
1230‧‧‧內容伺服器
1505‧‧‧匯流排
1510‧‧‧處理器
1520‧‧‧隨機存取記憶體(RAM)或其他動態儲存裝置/主記憶體
1530‧‧‧唯讀記憶體(ROM)
1540‧‧‧資料儲存裝置/靜態儲存裝置
1550‧‧‧顯示裝置/顯示器
1560‧‧‧文數字輸入裝置
1570‧‧‧游標控制
1575‧‧‧溫度感測器
1580‧‧‧網路介面
1585‧‧‧天線
1587‧‧‧網路纜線
本發明之實施例係藉由實例來說明,但不作為限制,在隨附圖式之諸圖中,相似參考數字指類似元件。
圖1以方塊形式說明可執行針對未來處理任務之機器狀態準備的處理系統之系統組件。
圖2A以方塊形式說明針對未來處理任務準備處理裝置之狀態之方法之概述。
圖2B說明用於針對未來處理任務準備處理裝置之狀態之方法之流程圖。
圖3說明處理裝置之狀態之實例屬性。
圖4說明功率使用量資料庫之實例記錄及屬性。
圖5說明處理活動資料庫之實例記錄及屬性。
圖6說明根據一些實施例的判定經預測或排程之未來處理任務之方法之流程圖。
圖7說明自直至未來處理任務之預定時間判定插入經預測或排程之處理任務之方法之流程圖。
圖8說明根據一些實施例的針對未來處理任務準備處理裝置之方法之流程圖。
圖9A說明根據一些實施例的產生用於處理任務的功率使用量之初始「種子」資料庫之方法之流程圖。
圖9B說明根據一些實施例的針對特定使用者及裝置產生用於處理任務之功率使用量之歷史之方法之流程圖。
圖10說明根據一些實施例的產生使用者處理任務之歷史之方法之流程圖。
圖11說明用於自使用者處理任務之歷史判定使用者行為型樣之方法之流程圖。
圖12以方塊形式說明根據一些實施例的用於同步複數個處理裝置之功率使用量資料、機器狀態資料、使用者處理任務資料及使用者行為型樣之系統。
圖13說明用於同步複數個處理裝置之機器狀態、使用者處理任務歷史及使用者行為型樣之方法之流程圖。
圖14說明在本發明之一些實施例中可使用的軟體堆疊之一例示性實施例。
圖15為處理系統之一項實施例之方塊圖。
在實施例之以下詳細描述中,對隨附圖式進行參看,其中相似 參考指示類似元件,且其中藉由說明展示可實踐特定實施例之方式。足夠詳細地描述此等實施例以使熟習此項技術者能夠實踐本發明,且應理解,可利用其它實施例,且在不脫離本發明之範疇的情況下,可進行邏輯、機械、電、功能及其他改變。因此,以下詳細描述不以限制意義進行,且僅由所附申請專利範圍定義本發明之範疇。
針對考量處理裝置之當前操作狀態及經排程或預測以在第一預定時間(諸如,當前時間)與用於開始未來處理任務之時間之間在處理裝置上執行的處理任務之功率使用量要求實施針對電子處理裝置上之未來處理任務準備未來操作狀態之系統及方法描述實施例。處理裝置可採用搶先步驟以在開始於第一預定時間至未來處理任務之開始時間的持續時間上減少熱量。
圖1以方塊形式說明可執行用於針對未來處理任務之未來作業系統準備處理裝置之處理程序的處理裝置100之系統組件。
處理裝置可包括硬體110、作業系統核心120、使用者處理程序130及背景處理程序140。核心120可經由通信頻道1與硬體110通信。核心120可經由通信頻道2與使用者處理程序130通信,且經由通信頻道3與背景處理程序140通信。通信頻道3可實施熱狀態管理器150之組件與核心120中之熱及功率量測與控制121子系統之間的通信5及6。處理程序管理(或「排程器」)122可經由通信頻道4與核心處理程序123通信。通信頻道7可經由通信頻道1及3實施於儲存器118與任務識別及功率要求模組152之間。可使用處理程序間通信方法(諸如,訊息傳遞、通訊端及共用記憶體)及經由硬體頻道(諸如,I/O匯流排或耦接至I/O匯流排之I/O介面硬體)實施通信頻道。
硬體110可包括電源111、處理器112、音訊組件113、通信組件114、冷卻組件115、顯示器116、輸入裝置117及儲存器118。電源111可包括一或多個電池、電容器陣列、充電/壁式電源子系統或太陽能 面板。處理器112可包括中央處理單元(CPU)、圖形處理單元(GPU)、數位信號處理器(DSP)、數學共處理器、可程式化閘極陣列或微控制器。音訊113組件可包括一或多個編碼器/解碼器(編碼解碼器)、一音訊放大器、一或多個類比/數位轉換器(ADC)及一或多個數位/類比轉換器(DAC),以及一數位信號處理器。通信組件114可包括乙太網路收發器、Wi-Fi收發器及蜂巢式收發器、一或多個天線及衛星收發器(GPS)。冷卻設備可包括一或多個風扇、鰭式熱交換器、液體至空氣熱交換器或熱至電冷卻器(「帕爾貼」)冷卻器。顯示器116可包括陰極光線套管(CRT)、液晶顯示器(LCD)、發光二極體(LED)電漿顯示器、觸控式螢幕或點陣圖形顯示器。輸入裝置117可包括鍵盤、滑鼠、軌跡球、觸控介面等。儲存器118可包括硬碟、快閃記憶體、靜態記憶體、動態記憶體、CD/DVD ROM或唯讀記憶體晶片。如下文更詳細地描述,儲存器可包括功率使用量資料庫118A及處理任務歷史118B(或「活動」)資料庫。不同於被動鰭式熱交換器,此等硬體110組件中之每一者可消耗功率且產生熱量,且產生使用者在冷卻過程期間可聽到之噪音。
核心120可包括一熱及功率量測與裝置控制模組121、一處理程序管理器122(或「排程器」)及一或多個核心處理程序123。熱及功率量測與裝置控制模組121(「控制模組」)可量測硬體組件110中之一或多者的當前溫度,及亦量測處理器裝置100內部一或多個點處的空氣之內部溫度。控制模組121亦可控制硬體110之個別組件之操作。控制模組121與硬體110之間的通信1可經由輸入/輸出(I/O)匯流排。處理程序管理器122可包括控制使用者處理程序130、背景處理程序140及核心處理程序123之優先權及執行的排程邏輯。
使用者處理程序130可包括諸如以下各者的應用程式:行事曆應用程式131、諸如Netflix®或YouTube®之視訊播放應用程式132、電子 郵件應用程式133、視訊會議應用程式134、一或多個視訊遊戲135或諸如Apple® Pages或Microsoft® Word之文書處理應用程式136及其他應用程式。每一應用程式可作為使用者處理程序130中的處理程序執行。每一應用程式亦可具有一或多個執行緒,諸如,得到電子郵件,發送電子郵件、拼寫檢查文件、暫停電影、開始視訊會議或排程行事曆事件。使用者處理程序130之每一執行緒可利用一或多個硬體110組件,其中之每一者可消耗功率且產生熱量。
背景處理程序140可包括資料庫索引141(諸如,Apple Spotlight®資料庫之背景索引)、雲端服務(諸如,排程或自動化之備份或同步142)、熱狀態管理器150、印刷(未圖示)及其他背景處理程序。熱狀態管理器150可替代地實施為使用者處理程序130或核心處理程序123。
熱狀態管理器150可包括熱狀態量測模組151、處理任務識別及功率要求模組152、前饋熱預測模型210及未來機器狀態準備邏輯153。熱狀態量測模組151可經由通信通道6與核心120中之熱及功率量測與裝置控制模組121通信。熱狀態量測模組151可自一或多個硬體組件110接收一或多個溫度讀數且處理接收到之溫度讀數以判定處理裝置100之總體熱機器狀態。替代地,熱狀態量測151可維護一或多個溫度讀數之依序集合的緩衝器(未圖示)以用於精細的詳細溫度控制演算法。舉例而言,自遊戲處理程序135、資料在顯示器116上之顯示及圖形處理器112及音訊組件113之溫度讀數的一或多個執行緒之優先權可顯然看出,使用者正在玩圖形集中式視訊遊戲。若使用者具有在一小時內即將到來之視訊會議134,那麼未來機器狀態準備邏輯153可緩慢地提昇冷卻組件115,開始減小處理器112之時脈速率,減少音訊113中之低音元件,或降低顯示器解析度或亮度以準備即將到來之視訊會議134的功率及熱量要求。以下論述熱狀態管理器150之額外細節。
圖2A以方塊形式說明針對未來處理任務準備處理裝置100之狀態 之方法200之流程的概述。圖2B說明針對初始未來狀態準備處理裝置100以用於開始未來處理任務之方法200之更詳細流程圖。
在操作205中,判定處理裝置100之當前機器狀態。如以下圖3中所展示,當前機器狀態可簡單得為處理裝置100之單一溫度量測305(參數2)。此外,處理裝置之簡單操作狀態可包括在指定時間增量△t上之功率消耗量度305(參數1)(諸如,在100ms上之0.05W)。以下參看圖3論述處理裝置100之機器狀態300之另外細節。
當前機器狀態205溫度TC為至前饋熱預測模型210之輸入。至前饋預測模型210之額外輸入為具有用於未來任務之初始處理裝置溫度Ti及預測之插入處理任務700之清單的未來處理任務600之開始時間,及在第一預定時間(例如,當前時間)與用於開始未來處理任務之時間之間的其相關聯之功率使用量。以下進一步詳細地參看圖7描述操作700。前饋模型210之輸出為在未來處理任務將開始時處理裝置100的預測之熱狀態215 TP。將此預測之未來熱狀態TP與在未來處理任務將開始時的處理裝置100之初始未來狀態220 Ti比較,以判定是否需要在開始未來任務前自處理裝置100移除熱量。可使用模擬之電阻-電容(RC)網路實施前饋預測模型210。可使用差分等式、MatLab®執行階段模組或其他運算模組模擬RC網路。
在操作600中,可識別及選擇未來處理任務。可判定用於開始未來處理任務之時間。亦可針對未來處理任務何時將開始來判定處理裝置100之未來初始狀態Ti。舉例而言,未來處理任務可為一小時長視訊會議134。使用者可經由Wi-Fi連接按由Wi-Fi連接支援之最高視訊及音訊解析度且按相當高的音訊音量進行視訊會議134。此等因素中之每一者可對視訊會議134期間消耗的功率及因此視訊會議134期間產生之熱量有影響。以下參看圖6進一步詳細描述操作600。
在操作207中,可將當前機器狀態TC及自操作700判定的預測之 處理任務的清單及相關聯之功率要求輸入至前饋預測模型210。
在操作215中,可基於輸入當前機器狀態TC及在操作700中針對在預定時間(例如,當前時間)與未來任務之開始時間之間插入處理任務判定的處理任務之清單及相關聯之功率消耗值自前饋預測模型210輸出未來預測之熱狀態TP
在操作220中,自針對未來預測之任務(例如,視訊會議134通話(Wi-Fi連接、最高視訊及音訊解析度及響亮的視訊))由使用者之選擇消耗的估計之功率及產生之熱量判定在可預測未來任務開始時的處理裝置100之未來初始狀態Ti。Ti可經選擇使得在視訊會議通話134期間之使用者經歷不必對減少熱量有危害。舉例而言,可選擇處理裝置100之較佳初始未來狀態Ti使得冷卻風扇115不在一個小時長之視訊會議通話134之中間全速工作。
在操作225中,可自自前饋模型210獲得之未來預測之熱狀態TP及未來處理任務將開始前的處理裝置100之未來初始狀態Ti判定溫差△T。
若在操作225中判定之溫差△T指示需要熱量移除以達成未來初始狀態Ti,則在操作800中,可準備處理裝置100用於未來處理任務,如參看圖8更充分地描述。
圖3說明處理裝置100之機器狀態300之實例屬性。處理裝置100之機器狀態或僅「狀態」為處理裝置100在一時間點的狀態之快照。機器狀態記錄可具有時間戳(未圖示)。在最低限度下,快照可包括表示處理裝置100之當前溫度的單一溫度值。可將單一溫度值用作用於以上參看圖2描述的方法200之當前機器狀態TC
機器狀態300可進一步包括用於處理裝置100之個別組件(諸如,CPU 310、GPU 315等)的參數。每一組件可具有表示處理裝置100之當前狀態300的一或多個參數。
機器狀態300可包括儲存用於CPU 310及GPU 315中之每一者的當前時脈速率及/或量測之溫度。當前時脈速率可用以估計針對一時間增量由CPU 310及/或GPU 315消耗之功率量。功率消耗值可與一持續時間相乘以獲得針對該持續時間由CPU 310及/或GPU 315消耗之功率量。
機器狀態300可進一步包括儲存按每單位時間瓦特數量測之功率消耗速率△t,及/或諸如音訊系統320、網路330、小區信號335、顯示器340或儲存器345之一或多個組件的量測之溫度。可歸因於一特定組件之功率消耗值可與處理任務之持續時間相乘以判定在用於該特定組件之持續時間內的功率使用量。機器狀態300可進一步包括諸如網路330、小區信號335或Wi-Fi信號325(如在用於Wi-Fi 325之參數3(304)中所展示)、網路330及小區信號335之一些組件之信號品質參數。
包括用於組件之信號品質參數的機器狀態300可與使用該組件預測關於使用者處理程序130之未來使用者行為的使用者處理程序130相關。舉例而言,使用者可通常使用強Wi-Fi信號進行視訊會議通話134(諸如,在某人之家中),而小區信號強度可能低,且處理裝置100可根本未連接至網路(因此,不具有用於該網路之信號品質)。自此狀態資訊,可預測使用者將在家使用Wi-Fi進行排程之視訊會議通話134,且不需要任何小區信號或網路連接。因此,不同於Wi-Fi之蜂巢式及網路子系統可在視訊會議通話134期間關閉以節省功率且減少熱量。類似地,使用者可通常僅在連接至網路時玩高性能視訊遊戲135,且因此,可斷開Wi-Fi子系統以節省功率且減少熱量。
機器狀態300可進一步包括二元狀態資訊,諸如,電池350是否正充電,使用者是否在家370,處理裝置100當前是否在運動中375,或處理裝置100在待用模式中或是執行狀態中。二元狀態資訊可與使用者處理程序130相關以預測未來使用者行為及功率消耗。舉例而 言,使用者可通常在機器狀態300指示使用者不在家370、在運動中375、在步行及電池350在充電時在上午11:30發出對餐館之詢問。可預測,當其正步行去吃午餐時,使用者選擇餐館,因此裝置不在充電。因此,在詢問期間,可預測歸因於由電池充電器消耗之功率,將不產生熱量。可進一步預測,使用者不需要網路連接(例如,乙太網路纜線及埠),因此可斷開乙太網路子系統以減少熱量。然而,亦可預測使用者可使用Wi-Fi或蜂巢式通信來完成搜尋詢問。因此,當預測用於針對詢問之處理任務的功率使用量時,必須考量由Wi-Fi及蜂巢式子系統消耗之功率。
機器狀態300可進一步包括用於一或多個組件之位準(諸如,電池電量355、光偵測360、聲音偵測365或供應電壓位準385)的參數。包括此等位準之機器狀態300可由諸如顯示器亮度340、音訊音量320或電池充電350之組件而與功率使用量相關以預測未來功率使用量。舉例而言,若光偵測360偵測到高等級之環境光(諸如,白天),且使用者處理程序130指示使用者正當在運動375中時在在午餐時間詢問餐館,則可預測顯示器功率消耗將增加以允許使用者在明亮的環境光中看見顯示器。類似地,若聲音偵測(麥克風)365偵測到高環境噪音(諸如,街道構造或人群噪音),則當使用者處理程序130指示使用者正收聽音訊320時,可預測音訊功率消耗將增加以允許使用者在高環境噪音中聽到音訊。在另一實例中,若機器狀態300偵測到使用者在家370,且電池電荷電量355低於臨限值百分比,則可預測使用者將在家時對電池350充電。若充電速率350(參數3)低於插入式壁式充電器之充電速率,且運動偵測375指示使用者正在駕駛,則可預測使用者正使用較低安培攜帶型充電器充電,諸如,在汽車中。因此,可預測歸因於在汽車中對電池充電的功率使用量及熱量。
機器狀態300亦可包括自諸如氣象應用程式之應用程式獲得或自 查看天氣網頁之網際網路瀏覽器獲得的資訊。天氣390之當前狀態(諸如,雨、風及溫度預報)可包括於機器狀態記錄300中。
圖4說明功率使用量資料庫之實例記錄400及屬性。功率使用量資料庫含有表示由一或多個硬體組件及一或多個處理任務進行的量測或估計之功率使用量之記錄。功率使用量記錄400可用以預測由一或多個硬體組件110或處理任務使用之功率量,及因此由一或多個硬體組件110及/或處理任務產生之熱量。
處理裝置100可包括在使用者第一次對處理裝置100通電前在處理裝置100上可用的功率使用量記錄400之初始(「種子」)資料庫。當使用者使用處理裝置時,產生表示處理裝置100的使用者之實際使用之更多功率使用量資料庫記錄400。熱狀態管理器150中之任務識別及功率要求邏輯152可基於使用者之實際使用對與處理裝置100包括在一起之功率使用量記錄400將加權因數應用於功率使用量記錄400。在一實施例中,使用者使用處理裝置100愈長,則加權因數對由處理裝置100的使用者之使用產生之功率使用量記錄400愈有利。在一實施例中,可更新功率使用量記錄400之初始資料庫,例如,在作業系統處理程序或其他更新處理程序期間。以下在圖9A及9B中更充分地描述兩個類型之功率使用量記錄400的產生。
功率使用量資料庫400可用以預測針對廣泛多種處理任務之功率使用量及針對特定硬體子系統之功率使用量。每一功率使用量記錄410至475(例如)可具有一識別符401、一處理程序或裝置描述402、一功率消耗時間增量△t(403)、在時間增量期間消耗之功率量404及一或多個參數405及參數值406。一或多個功率使用量記錄可用以預測在一或多個使用者處理程序130、背景處理程序140及/或核心處理程序123或處理裝置100中之一或多個硬體組件110之執行之時間週期上消耗的功率量。識別符401可為用於資料庫記錄之任何唯一識別符。在一實 施例中,功率使用量記錄識別符401可使用編碼方案,諸如,功率使用量記錄係關於硬體組件之高位元為零方式,及功率使用量記錄係關於諸如使用者處理程序130之使用者處理程序之高位元為一方式。在一實施例中,功率使用量記錄可具有指示諸如硬體、核心處理程序、背景處理程序、使用者處理程序或使用者處理程序之執行緒的功率使用量記錄類型(未圖示)之欄位。用於功率使用量記錄之時間增量△t可為用於功率使用量記錄的任何有意義之時間增量。舉例而言,由冷卻風扇使用之功率可不改變得非常快,且因此,時間增量(例如,100ms)可適合於量測由冷卻風扇消耗之功率,但不針對可快速改變時脈速度之處理器。在一實施例中,對於功率使用量記錄400,可關於在時間增量期間消耗之功率量判定時間增量,使得功率量測之解析度在時間增量上具有足夠粒度以表示正量測之功率使用量。舉例而言,功率量測可能能夠按1毫瓦解析度進行,且因此,可將用於主處理器之時間增量選擇為足夠長(例如,25ms),以達成按0.01瓦特之功率量測,以利用1毫瓦解析度。
當正以2.2GHz之時脈速率操作CPU時,主處理器410或CPU可在25ms之時間增量上消耗0.02瓦特。可以可變作用時間循環使冷卻風扇415運轉。舉例而言,冷卻風扇415當以全速之5%運轉時,可在100ms上消耗0.08瓦特。圖形處理器420或GPU可在按2.0GHz操作時在25ms內消耗0.01W。功率轉換器模組425(諸如,電池充電器)可在100ms之操作上消耗0.05瓦特。音訊編碼解碼器430可在100ms上消耗0.01瓦特。當按諸如20%之指定輸出位準(參數405)操作時,音訊放大器可在100ms上消耗0.05瓦特。當以充分自旋速度操作時,硬碟440可在100ms上消耗0.06瓦特。
特定處理程序亦可具有功率使用量記錄400。核心處理程序445功率使用量記錄(諸如,對於圖1之核心處理程序123)可指示核心處理 程序在25ms上消耗0.001瓦特。核心處理程序可具有高或最高處理器排程優先權,諸如,0xFF。排程器處理程序450功率使用量記錄(諸如,對於處理程序管理器122)可指示排程處理程序在25ms上消耗0.001瓦特。排程器處理程序可具有高處理器排程優先權,諸如,0xFE。系統閒置處理程序455功率使用量記錄可指示系統閒置處理程序在100ms上消耗0.002瓦特之功率。系統閒置處理程序通常具有低或最低處理器排程優先權,諸如,0x01。
諸如電子郵件應用程式133、視訊會議應用程式134或視訊遊戲應用程式135之使用者處理程序130可分別具有功率使用量記錄460、465、470或475。每一功率使用量記錄可具有用於使用者處理程序的針對功率使用量之時間增量403、功率使用量量404及處理優先權參數405及處理優先權參數值406。每一應用程式處理程序130可具有針對特定執行緒之功率使用量資料庫記錄,例如,電子郵件應用程式135可具有發送郵件執行緒,其具有功率使用量記錄465。用於音訊應用程式之應用程式處理程序可具有利用音訊放大器的用於收聽音樂之執行緒,及用於將一或多個歌曲燒錄至利用CD-ROM儲存裝置之CD-ROM但不利用音訊放大器之另一執行緒。在一實施例中,用於一執行緒(例如,電子郵件應用程式、發送郵件執行緒465)之功率使用量記錄可表示由在該執行緒之執行中使用的一或多個硬體組件在時間增量△t內進行的功率使用量。在一實施例中,用於一處理程序(例如,電子郵件應用程式460)之功率使用量記錄可表示在一時間增量△t內用於該處理程序之一或多個執行緒的平均功率,且可進一步包括由在該處理程序之一或多個執行緒之執行中使用的一或多個硬體組件110進行之平均功率使用量。在另一實例中,當以處理優先權0x50執行視訊會議應用程式134時,視訊會議應用程式134可具有表示由應用程式在25ms之時間增量上使用之功率(0.002瓦特)的功率使用量記錄470。當 以處理優先權0x60執行時,視訊遊戲135(例如,Mortal Kombat®)可在25ms上消耗0.003瓦特。一應用程式或一應用程式之執行緒可具有一個以上功率使用量記錄,其中記錄參數中之一或多者不同。舉例而言,若使用者通常在視訊會議134前玩視訊遊戲135,則針對視訊會議134準備處理裝置100之未來狀態之方法可包括在視訊會議134前將視訊遊戲135之處理優先權自0x50降低至0x40以減少功率消耗及熱量產生。因此,可按0x50之處理優先權針對視訊遊戲儲存一功率使用量記錄,且按處理優先權0x40針對視訊遊戲儲存另一功率使用量記錄。
圖5說明處理活動資料庫之實例記錄500及屬性。以下參看圖10描述產生處理活動資料庫之方法。以下參看圖11描述自處理活動資料庫判定使用者行為型樣之方法。
處理活動記錄500含有與處理裝置100互動的使用者之活動之歷史。處理活動可包括事件(例如,滑鼠點選、螢幕輕觸、按鈕按壓等)、自使用者輸入產生的命令(例如,檔案|開啟,或諸如Command-Shit-Q之鍵序列)及回應於使用者輸入(共同地及個別地,「處理活動」)啟動之處理程序及執行緒。處理活動資料庫記錄(例如,500)可含有用於特定處理活動之開始的時間戳501、活動之持續時間502、活動之命令或事件名稱503、回應於命令或事件503啟動之應用程式504及/或作為命令或事件503之結果啟動的執行緒505。處理活動記錄500可進一步包括在活動之持續時間502內消耗的功率量506。與處理活動相關聯之功率量506可由核心120中之熱及功率量測與裝置控制模組121量測。在一實施例中,可自活動之持續時間與儲存在功率使用量記錄400中之功率使用量速率相乘來計算與處理活動相關聯之功率量。在一實施例中,用於活動的量測及計算之功率使用量值兩者可儲存(未圖示)於處理活動記錄500中。處理活動記錄500可進一步包括至機器狀態記錄300之參考507。機器狀態記錄在上文參看圖3描述。處 理活動記錄(例如,530或535)可與由機器狀態記錄參考507參考之機器狀態記錄300相關,以判定與處理裝置100互動的使用者行為中之型樣。在一實施例中,機器狀態記錄300經產生且關於處理活動記錄500儲存。在一實施例中,處理活動記錄500可參考現有儲存之機器狀態記錄300。
在一實例中,處理活動記錄530可表示回應於點選事件503啟動NetFlix®之處理活動。在此實例中,NetFlix®應用程式504藉由執行緒505啟動。由欄位507參考之機器狀態記錄300或處理活動記錄530可含有由儲存裝置118進行的功率使用量之指示以擷取NetFlix®應用程式之可執行影像以供執行。由處理活動記錄530之欄位507參考的機器狀態記錄300可進一步指示使用者將顯示器340解析度(參數3)設定在最高最大解析度,且將音訊系統320設定在最高音訊品質(參數3),此可消耗比降低之音訊或視訊品質多的功率。機器狀態記錄300可進一步指示使用者用網路連接330且不用Wi-Fi 325或蜂巢式信號335連接至NetFlix®。實例處理活動記錄510至570表示回應於命令或事件503偵測到之處理活動。亦可藉由獲悉一段時間週期上的處理活動中之型樣來產生處理活動記錄500。
可將用於處理活動的獲悉之型樣的處理活動記錄500與較之回應於事件或命令或處理程序或執行緒儲存之處理活動記錄500相同或少的屬性儲存在一起。如以下參看圖11更充分地描述,可藉由分析處理活動記錄500獲悉處理活動型樣。表示處理活動575的獲悉之型樣的處理活動記錄可為此使用者在每個工作日上午9:00進行一小時長視訊會議,其中機器狀態特性如在機器狀態記錄0x00014785中所指示。在另一實例中,處理活動580的獲悉之行為之處理活動記錄可為,在星期五晚上8:00,此使用者使用約12瓦特之功率玩一小時的視訊遊戲。類似地,獲悉之活動585的一實例處理活動記錄可為,在工作日上午 6:00,此使用者使用0.10瓦特之功率在電子郵件上花5分鐘時間。
圖6說明判定經預測或排程之未來處理任務、處理任務之開始時間及開始處理任務之初始狀態之方法600之流程圖。
在操作605中,可藉由搜索經排程之行事曆活動之資料庫來判定經排程之未來任務。行事曆應用程式(例如,如圖1上展示之使用者處理程序130)可包括單次排程及重複排程之任務的清單。舉例而言,行事曆應用程式131資料可指示使用者在每週一早上9:00具有重複的視訊會議134。
在操作610中,方法600可視情況在本週一早上9:00在自使用者之主管至該主管之團隊中所有成員的電子郵件中搜尋電子郵件應用程式133之電子郵件資料(如在圖1上所展示),以尋找關於未來處理任務(例如,視訊電話會議134)之排程的資訊。操作610亦可包括搜尋連絡人應用程式之連絡人資料檔案以尋找未來排程之處理任務的記號。舉例而言,連絡人記錄可指示使用者已排程在本週五晚上9:00在她的家中與連絡人一起觀看NetFlix®上的視訊。
在操作615中,方法600可詢問處理活動資料庫500以判定定期發生之任何處理任務。舉例而言,若當前日為星期一,則詢問可選擇在一或多個過去之星期一上午8:00與上午10:00間開始的處理活動歷史記錄500。在另一實例中,詢問可包括與選定處理活動(諸如,在週末上午10:00與上午11:00之間當用於處理活動之機器狀態指示使用者不在家時執行的處理活動)有關之機器狀態。
在操作620中,在判定未來預測之任務前,其功率使用量低於預定臨限值之處理任務可經自詢問結果篩除。
在自詢問傳回多個未來事件之情況下,在操作625中,方法600可視情況自多個未來處理任務選擇以識別準備機器狀態所針對的預測之未來任務。在一實施例中,操作625可自詢問結果中之多個未來處 理任務當中選擇具有最高功率消耗的未來預測之任務。在一實施例中,操作625可自詢問結果中之多個未來處理任務當中選擇最長持續時間之未來處理任務。在一實施例中,操作625可自詢問結果中之多個未來處理任務當中選擇具有最高優先權之未來處理任務。在又一實施例中,操作625可選擇具有指示使用者行為之重複型樣及因此使用者將執行此預測之未來任務的較高可能性的多數處理活動記錄500之未來處理任務。在再一實施例中,操作625可自多個未來預測之處理任務當中選擇一未來預測之處理任務,其具有最類似於當前機器狀態之機器狀態。舉例而言,當前機器狀態可指示使用者在家(機器狀態屬性370)且正對處理裝置100充電(機器狀態屬性350,參數3,高充電速率),且處理裝置100耦接至網路(機器狀態屬性330)。當使用者在家、連接至網路且對處理裝置100充電時,此機器狀態可最緊密地與使用者先前已大致在詢問時間窗內執行的視訊會議134之未來處理任務相關。
在操作630中,判定是否存在自其選擇將準備未來機器狀態所針對之未來預測之處理任務的至少一個未來處理任務。若如此,則在操作635中,選擇一或多個處理任務用於準備未來機器狀態以執行一或多個未來預測之處理任務。否則,方法600結束。
若在操作600中,選擇將為處理裝置100準備用於其之未來機器狀態的至少一個未來處理任務(「選定未來處理任務」),則由處理任務在第一時間(例如,當前時間)與用於選定未來處理任務(「插入處理任務」)之開始時間之間消耗的能量及產生之熱量可影響在選定未來處理任務之開始時間的未來機器狀態。因此,為了針對選定未來處理任務準備機器狀態,可能需要判定功率消耗及由插入任務產生之熱量。
圖7說明判定自第一時間(例如,當前時間)直至用於未來預測或 排程之處理任務(「未來處理任務」)之開始時間的經預測或排程之處理任務(「插入處理任務」)之方法700之流程圖。在一實施例中,第一時間可為係在未來處理任務之開始時間前之預定時間量的時間。自由插入任務消耗之功率產生的熱量可能需要遷移以針對未來處理任務準備處理裝置100機器狀態。舉例而言,若使用者在視訊會議(未來處理任務)前玩視訊遊戲(插入處理任務),且視訊遊戲需要實質上的CPU及GPU性能及高音訊音量達一小時,則處理裝置100可具有需要在視訊會議前被耗散之實質上熱量累積。藉由建立插入處理任務之清單及判定與每一處理任務相關聯之功率要求及熱量產生,處理裝置100可在選定未來處理任務之開始前採取早期行動來減輕熱量堆積。
在操作705中,可針對可已分別使用一或多個行事曆、電子郵件或連絡人應用程式排程之處理任務搜尋一或多個行事曆、電子郵件或連絡人應用程式資料。舉例而言,使用者之工作電子郵件可含有用於開始於星期一上午9:00且經排程以持續一小時的排程之視訊會議之行事曆項。使用者之個人行事曆可含有針對星期五晚上8:00使用高解析度圖形、網際網路連接及聲音系統玩多使用者視訊遊戲的經排程之任務。連絡人項可含有使用者使用其處理裝置100上之應用程式(諸如,NetFlix®或Hulu®)而具有與朋友一起在星期六晚上8:00看電影的經排程之約會之文字備忘。可將經排程之處理任務添加至在第一時間與用於選定未來處理任務之未來開始時間之間的插入處理任務之清單。在一實施例中,第一時間可為當前時間。在一實施例中,第一時間可為在選定未來處理任務之開始時間前的預定時間量。在另一實施例中,第一時間可為在選定未來處理任務之開始時間前的指定時間。
在操作710中,處理裝置100可針對歷史上已在時間窗期間執行之處理任務詢問使用者處理活動之歷史(例如,使用者處理程序130)。在一實施例中,詢問可限於涵蓋第一時間及用於選定未來處理 任務之開始時間的指定時間範圍。在一實施例中,第一時間可為當前時間。替代地,第一時間可為在選定未來處理任務之開始時間前的預定時間量。在一實施例中,若處理任務已兩次發生在涵蓋第一時間及選定未來處理任務之開始時間的時間範圍內,則處理任務可選自詢問結果以用於包括在插入處理任務之清單中。若處理任務已兩次發生在一星期中之同一日,在涵蓋第一時間及選定未來任務之開始時間的時間範圍內,則可選擇一任務用於包括在插入處理任務之清單中。在一實施例中,詢問可包括獲悉之型樣記錄,諸如,以上描述的圖5之記錄575至590。在一實施例中,詢問可涵蓋在當前日前之一或多日的指定時間範圍。在一實施例中,一或多日可限於本週之一或多個特定日。在一實施例中,一或多日可限於工作日,或限於週末。在一實施例中,一或多日可包括或不包括假期。
在操作715中,處理裝置100可針對歷史上已在指定時間窗執行之處理任務詢問系統處理活動之歷史(例如,背景處理程序140歷史或核心處理程序123)。如在操作705及710中,可將時間及/或日限制應用至詢問。
在操作720中,處理裝置100可詢問當前排程之處理任務,例如,在諸如在排程器122中之處理程序排程佇列中的處理程序。如在操作710中,可將時間及/或日限制應用至詢問。
在操作725中,可針對涵蓋第一時間及未來處理任務之開始時間的時間範圍產生在操作705、710、715及720內識別的插入處理任務之清單。
在操作730中,插入任務之清單可視情況包括選定未來處理任務。
在操作735中,對於插入處理任務之清單中的每一處理任務,可判定用於執行處理任務之功率要求。可藉由將由在執行處理任務時使 用之一或多個資源(例如,CPU、GPU、記憶體、儲存器、網路、Wi-Fi音訊等)消耗之功率求和來判定用於處理任務之功率使用量。用於硬體組件110之功率使用量資料在以上關於參看圖4之功率使用量記錄400描述。在一實施例中,可自由處理任務使用之功率增量判定用於處理任務之功率使用量(如在例如圖4之電子郵件應用程式功率使用量記錄460中所展示),且可將增量與處理任務之持續時間相乘。在另一實施例中,可自如上文參看圖5描述之處理活動記錄500判定用於處理任務之功率使用量。
在操作740中,插入任務之清單可視情況經篩選以不包括具有小於預定功率使用量之功率使用量量的處理任務。不包括具有最低功率使用量之處理任務可簡化需要用來判定產生之熱量及在用於選定未來處理任務之開始時間前自處理裝置100耗散之熱量的處理。
可將插入處理任務之清單及相關聯之功率消耗值與處理裝置100之當前機器狀態TC一起輸入至前饋熱預測模型210。前饋預測模型210可在選定未來處理任務之開始的時間輸出預測之熱狀態TP。未來選定任務具有為用於開始選定未來處理任務之較佳狀態的相關聯之初始熱狀態Ti。舉例而言,若選定未來處理任務為一小時長視訊會議,則在視訊會議開始時用於處理裝置100之較佳初始狀態Ti可為熱狀態,使得冷卻風扇在視訊會議期間不以全速上作。若TP大於Ti,則可能需要至(例如)視訊會議開始時執行準備操作以達成熱狀態Ti。準備操作可包括熱量之產生的減少及產生的熱量之減輕。
圖8說明根據一些實施例的針對選定未來處理任務準備處理裝置100之方法800之流程圖。方法800可實施於背景處理程序140(諸如,熱狀態管理器150)中。在一實施例中,熱狀態管理器150可實施為核心處理程序123或在熱及功率量測與裝置控制121內。在另一實施例中,熱狀態管理器150可實施為使用者處理程序130。
在操作805,判定在開始選定未來處理任務時的預測之熱狀態TP是否小於用於開始未來處理任務之初始熱狀態Ti。TP係基於插入任務之清單及相關聯之功率消耗,如以上在圖7之方法700中所展示。若TP小於Ti,則在選定未來處理任務之開始前應不需要準備操作,且方法800結束。
若在操作805中判定在開始選定未來處理任務時的預測之熱狀態TP大於用於開始選定未來處理任務之初始熱狀態Ti,則在操作810中判定至未來處理任務開始時冷卻單獨將使TP降低至Ti以下。此可藉由判定需要自處理裝置100移除以達成未來初始熱狀態Ti之熱量及判定冷卻設備115(風扇、冷卻鰭片、熱電冷卻器、流體冷卻等)之冷卻速率足夠在選定未來處理任務之開始前可用之時間量內移除判定之熱量。
若冷卻單獨地將在選定未來任務之開始前達成熱狀態Ti,則在操作815中,熱及功率量測與裝置控制模組121可設定冷卻硬體115以在選定未來處理任務之開始前移除判定之熱量,且方法800結束。在一實施例中,將冷卻硬體115設定在恆定冷卻速率,直至未來處理任務之開始。在另一實施例中,使用冷卻設定檔設定冷卻硬體115之冷卻速率。冷卻設定檔可包括冷卻速率提昇至一預定臨限值速率,接著將冷卻速率下降至待在用於未來處理任務之開始時間使用的冷卻速率。冷卻設定檔可進一步包括至預定冷卻速率之提昇,接著為恆定冷卻速率之週期,接著為至待在用於未來處理任務之開始時間使用的冷卻速率之下降。
若在操作810中判定至選定未來處理任務開始時冷卻硬體115單獨將不達成熱狀態Ti,則可使用一或多個熱量減輕技術。在操作820中,熱量減輕技術可包括重新排程一或多個背景任務140,直至已完成選定未來處理任務後。重新排程可藉由熱狀態管理器150請求排程 器減少由背景處理任務140產生之熱量及排程器122判定重新安排哪一(些)背景處理任務來實現。在一實施例中,熱狀態管理器150可為核心處理程序123且可與核心120及排程器122通信以判定應重新安排哪一(些)處理程序以減輕熱量之產生。此外,在一實施例中,熱狀態管理器150可指導熱及功率量測與裝置控制模組121設定將結合背景處理任務140之重新排程減輕熱量的用於冷卻硬體115之等級。
在操作825中,可判定在操作815及820中重新排程背景任務及視情況設定用於冷卻硬體115之冷卻速率是否將使預測之未來狀態TP減小至低於用於開始未來處理任務之未來初始狀態Ti。若如此,則方法800結束,否則,方法800在操作830繼續。
在操作830中,可使用一或多個熱量減輕技術以將TP減小至低於Ti。在一實施例中,除了重新排程背景任務140及藉由冷卻設備115減少熱量之外,處理裝置100亦可使用以下熱量減輕技術中之一或多者:減小用於一或多個處理任務之處理器時脈速度;減小至處理裝置100之供應電壓;降低視訊串流解析度;減小顯示器亮度;減小通信資料速率;降低音訊音量;減少音訊子系統中之低音響應或此等之任何組合。在一實施例中,以平穩且連續方式應用一或多個熱量減輕技術使得在熱量減輕操作期間使用者感知大體一致之操作方式及一致之性能等級。在一實施例中,熱量減輕技術中之一或多者可為可使用者組態。舉例而言,使用者可能能夠組態排程器122可降低優先權、重新安排或減小處理器時脈速率的應用程式或執行緒之次序。舉例而言,使用者可能能夠組態視訊會議應用程式以回應於偵測到網路頻寬品質已降級而使用降低之視訊解析度。
圖9A說明產生用於處理任務的功率使用量400記錄之初始「種子」資料庫之方法900之流程圖。處理裝置100可包括用於處理任務的功率使用量記錄400之初始資料庫,且進一步包括當使用者使用處理 裝置100時產生的額外功率使用量資訊之資料庫400。在一實施例中,當額外功率使用量資訊由處理裝置100之使用產生時,加權因數可對由使用者對處理裝置100之使用產生的功率使用量資訊給予較多權重。
在操作905中,處理裝置100可量測且儲存表示在時間增量△t期間的處理任務之基線集合之初始功率使用量位準W0。功率使用量可由熱及功率量測與裝置控制模組121量測。處理任務之基線集合可包括僅彼等有必要致使處理裝置100可操作之核心處理程序123。速率W0/△t表示用於處理任務之基線集合的功率消耗速率,且可進一步包括執行處理任務之基線集合所必要的硬體組件110。
在操作910中,將計數器i初始化至1。
在操作915中,啟動下一處理程序Pi
在操作920中,量測針對時間增量△t之遞增功率使用量Wi(高於W0)。處理程序識別符PIDi及視情況處理程序描述可經產生且與Wi及△t一起儲存於功率使用量資料庫記錄400中。
在操作925中,判定是否存在更多的處理程序要啟動。若不,則方法900結束。另外,處理程序900在操作930處繼續。
在操作930中,遞增計數器i,且方法在操作915處恢復。
圖9B說明在處理裝置100之使用期間產生用於處理任務的功率使用量記錄400之歷史之方法901之流程圖。相較之下,圖9A描述在一特定使用者接收且使用處理裝置100前建置功率使用量記錄400之初始「種子」資料庫。
如以上參看圖9A所描述,操作905在時間增量△t期間量測且儲存用於處理任務之基線集合的功率使用量W0。處理程序之基線集合可為在處理裝置100之通電期間啟動的初始處理程序。注意,圖9A中的處理任務之基線集合可與此處圖9B中的處理任務之基線集合不同。 舉例而言,用於處理任務之基線集合的工廠或初始「種子」功率使用量可已針對比正在處理裝置100上使用的作業系統之當前型式早的作業系統型式。因此,隨著時間的過去,判定處理裝置100上之處理任務的功率使用量可涉及將根據圖9B的實際獲悉之功率值Wi加權得比圖9A中獲悉的工廠產生之功率使用量值多。
在操作907中,判定針對W0的處理任務之基線集合是否與在圖9A方法900中獲悉的基線處理程序之工廠集合不同。若如此,則在操作908中,將用於在圖9B之操作905中量測的處理任務之基線集合的功率使用量之重要性權重增大超過用於在於圖9A之操作905中的功率使用量記錄之初始「種子」資料庫中的處理任務之基線集合之W0。方法901在操作910處繼續。
在操作910中,可將計數器i初始化至1。在一實施例中,使用不同初始化值。
在操作915中,可啟動下一處理程序Pi
在操作920中,可量測針對時間增量△t之遞增功率使用量Wi(高於W0)。功率使用量可由熱及功率量測與裝置控制模組121量測。處理程序識別符PIDi及視情況處理程序描述可經產生且與Wi及△t一起儲存於功率使用量資料庫記錄400中。
在操作922中,可判定Wi與在圖9A之方法900中針對具有相同PIDi之處理任務產生的初始「種子」資料庫中之工廠Wi不同。若如此,則在操作923中,可增大用於此PIDi之權重,使得由處理裝置100之使用獲悉之此Wi圖9A之功率使用量記錄400之初始「種子」資料庫有利。
在操作925中,可判定是否存在更多的處理程序要啟動。若不,則方法901結束。若存在更多處理程序要啟動,則在操作930中,遞增計數器i且方法901在操作915處繼續。
圖10說明基於與處理裝置100之使用者互動產生使用者處理任務之歷史之方法1000之流程圖。與以上在圖9A圖9B中所描述之功率使用量資料庫400相同,使用者處理任務500之歷史可包括使用者活動之初始「種子」資料庫及使用者活動的獲悉之集合。當經由處理裝置100之使用產生使用者處理歷史時,加權因數可比處理任務之初始「種子」資料庫對獲悉之處理任務有利。由於使用者處理歷史資料庫嘗試獲悉處理裝置100之特定使用者之型樣,因此初始「種子」資料庫可相當稀少,且有利於獲悉之使用者活動的加權因數可比對於獲悉之功率使用量記錄大。針對工廠設定及如經由處理裝置100之使用獲悉兩者,對於給定處理任務,功率使用量應大體類似。然而行為之使用者型樣可相當具體地針對每一不同使用者。
可自指示用於使用者之一或多個裝置類型的使用者行為型樣之人群源資料產生用於使用者處理歷史(活動)之初始種子資料庫。舉例而言,多數使用者可在早晨起床時之上午6:00且在中午且再次在使用者回到家時之下午6:00檢閱其電子郵件。製造商之工程師可基於人群源資料或自營銷資訊產生使用者處理任務500之初始種子資料庫。使用者處理任務之初始種子資料庫可具體針對來自特定地理位置之使用者。在一實施例中,處理任務之初始種子資料庫可在使用者對處理裝置100通電之第一時間自製造商之網站下載,或將處理裝置100對在一地理區中的製造商之服務註冊。舉例而言,初始「種子」使用者處理歷史資料庫500可適合於矽谷居民,但不同的初始「種子」使用者處理歷史資料庫500可適合於中西部農場主。在一實施例中,使用者可使用處理裝置上之應用程式選擇個人設定檔或使用者類型及/或特定地理區。回應於該選擇,可將適當初始種子使用者處理歷史資料庫500下載至處理裝置100。
在操作1005中,熱狀態管理器150可接收影響功率使用量及熱量 產生的活動之通知。該通知可自排程器122、自核心120或自熱及功率管理及裝置控制121接收。活動可包括使用者應用程式130之啟動、應用程式之執行緒、背景處理任務140之啟動或核心任務123之處理。
在操作1010中,熱狀態管理器150可在功率使用量資料庫記錄400中查找與該活動相關聯之功率使用量及熱量產生。在一實施例中,任務識別及功率需要模組152可查找與該任務相關聯之功率及熱量產生。
可能不需要追蹤用於使用非常小的功率量之活動之功率使用量。舉例而言,游標定位活動可能需要僅少量功率,而呈現操作可消耗大量功率且自圖形處理器單元(GPU)產生熱量。因此,在操作1015中,判定活動是否影響功率使用量或產生之熱量大於臨限量。若活動中使用之功率量或產生之熱量小於臨限量,則方法1000在操作1005處恢復,否則方法在操作1020處恢復。
在操作1020中,可判定當前機器狀態,且可儲存當前機器狀態。參看以上圖3描述機器狀態記錄。在一實施例中,當前機器狀態(例如)由核心120定期更新。在此情況下,「判定」當前機器狀態包括讀取保持與方法1000獨立地更新之當前機器狀態之快照。
在操作1025中,可判定活動是否啟動新處理程序或執行緒。若如此,則在操作1035中,可產生且儲存新使用者活動記錄500。以上參看圖5描述使用者活動記錄500。接著,方法1000在操作1005處恢復。
若在操作1025中判定活動並非新處理程序或執行緒之啟動,則相對於回應於在操作1025中判定活動啟動一新處理程序或執行緒而先前在操作1035中產生且儲存之初始活動記錄,功率有可能已由此現有處理程序或執行緒在逝去之時間中消耗。
在操作1030中,可判定用於處理程序或執行緒之功率使用量。 又,可判定處理程序或執行緒已執行之時間。接著,方法1000在操作1035處恢復,在該操作處,可針對該處理程序或執行緒產生使用者活動記錄500,且將其與用於該處理程序或執行緒之功率使用量及執行時間一起儲存。在一實施例中,可將使用者活動記錄500與機器狀態記錄300相結合地儲存,在活動記錄500之欄位507中參考。舉例而言,一處理程序可已為使用者正使用應用程式Apple TV®觀看視訊。機器狀態300可已為使用者在家經由網路連接而不使用Wi-Fi或蜂巢式資料觀看視訊,且同時視訊及音訊解析度處於最高品質。機器狀態資訊300當與使用者活動記錄500相關聯時可用以獲悉使用者活動行為之型樣。
圖11說明用於自使用者處理任務之歷史判定使用者行為型樣之方法1100之流程圖。使用者行為之型樣在預測使用者將執行之未來處理任務及在預測之未來處理任務之開始前為使用者準備處理裝置100之機器狀態時有幫助。
在操作1105中,可對使用者活動資料庫500起始詢問以判定使用者行為中之型樣。可按時間範圍、一週中之某一日、使用大於臨限功率量之特定處理程序或其他準則將詢問變窄以使搜尋識別使用者行為中之型樣變窄。
在操作1110中,識別具有當一活動在以上圖10之方法1000中產生新處理程序或執行緒時產生的初始活動記錄之活動。一活動可具有匹配之結束記錄,已在其中儲存該處理程序或執行緒之持續時間及該處理程序或執行緒在該持續時間上之功率使用量。
在操作1115中,可分析針對具有匹配開始及結束記錄之處理程序或執行緒的詢問結果。分析可包括針對匹配開始/結束記錄之次級詢問以限制詢問結果。次級詢問可按一特定應用程式、按一星期中之特定日、按特定當天時間、按工作日、按假期、按週末、按一特定機器 狀態或機器狀態資訊之子集或按其他型樣準則來限制詢問結果。
在操作1120中,判定是否已識別型樣。型樣可為(例如)此使用者在每個工作日上午約6:00檢查電子郵件,或此使用者在星期五晚上約8:00觀看NetFlix®。在一實施例中,型樣還可包括一特定機器狀態。舉例而言,型樣可指示此使用者在工作日在家中僅使用高充電速率充電器(壁式充電器),且在工作日整個白天時長期間使用低充電速率(例如,USB充電器)。機器狀態還可包括此使用者在晚上在家中在高解析度視訊上始終使用網路連接(例如,乙太網路)玩視訊遊戲。此等機器狀態特徵可幫助預測用於未來處理活動之機器狀態,且可另外用以判定熱量減輕處理程序。舉例而言,當使用者在家藉由網路連接玩視訊遊戲時,可斷開Wi-Fi及蜂巢式資料子系統以在使用者玩視訊遊戲時節省功率且減少熱量產生。
在操作1125中,一或多個獲悉之處理程序型樣記錄經產生且儲存於使用者活動記錄500中。實例型樣記錄包括參看圖以上圖5之記錄575、580、585及590。在一實施例中,機器狀態記錄300可與獲悉之處理程序型樣記錄相關聯地儲存。在一實施例中,用於獲悉之處理程序型樣的機器狀態記錄可具有一特定機器狀態記錄數目範圍,諸如,具有高階位元集合。替代地,用於獲悉之處理程序型樣的機器狀態記錄300可具有將機器狀態記錄300識別為與獲悉之處理程序型樣相關聯的欄位(未圖示)。
圖12以方塊形式說明用於同步用於複數個處理裝置100之功率使用量資訊、機器狀態資訊、使用者處理任務歷史及使用者行為型樣(共同地,機器狀態準備資料)之系統1200。
使用者可擁有多個處理裝置100(例如,膝上型電腦101、平板電腦102及智慧型手機103)。在一實施例中,可將每一處理裝置100向同步服務1200註冊。使用者可具有可用以同步機器狀態準備資料的處理 裝置100之其使用之型樣。此外,經給定自第一處理裝置101獲悉或獲得之資訊之情況下,同步系統1200可用以針對選定未來任務準備第二處理裝置102。
在一實施例中,跨多個裝置同步機器狀態準備資料可包括同步機器狀態資訊300、功率使用量資訊400及處理活動記錄500。共用機器狀態資訊可包括第一處理裝置通知第二處理裝置關於第一處理裝置之當前狀態。在一實例中,第一處理裝置可檢測到Comcast®網路服務在下午6:00出故障。此外,或替代地,第一處理裝置可自網際網路警報或電子郵件訊息獲悉Comcast®網路自下午6:00起停用。可將第一處理裝置上之機器狀態記錄300與使用者之第二處理裝置同步,使得該第二裝置可獲悉Comcast®自下午6:00起停用。在另一實例中,第一處理裝置可為使用者之iPhone®,且第二處理裝置可使用者之iPad®。iPhone®之當前機器狀態可為使用者不在家(圖3,機器狀態記錄300,欄位370,參數1),且iPhone®當前在運動(欄位375,參數2)駕駛中。一或多個GPS讀數與日期之時間及一星期中之某一日一起可指示使用者正駕車回家。iPad®可已獲悉使用者在其返回家中時使用Hulu®在iPad®上觀看新聞之使用者行為型樣。在於使用者之iPhone®與iPad®之間同步機器狀態300後,iPad®可獲悉使用者正在回家之路上。iPad®可正針對未來處理任務準備用於iPad®之機器狀態:使用者在其返回家中時在其iPad®上在Hulu®上觀看新聞。iPad®之機器狀態之準備可根據本文中描述之圖2A2B。此外,藉由當使用者及其iPhone®到家時同步機器狀態,iPad®可自iPhone®獲悉使用者現在在家,且iPad®可在其較佳新聞頻道上啟動Hulu®。
同步系統1200可包括一後設資料伺服器1210及一或多個內容伺服器1230。在一項實施例中,內容伺服器1230可儲存一或多個類型之使用者資料集合,諸如,機器狀態300、功率使用量資訊400及使用者 處理資訊500,包括後設資料、資料庫記錄及索引。在一實施例中,內容伺服器1230可為能夠儲存廣泛多種不同使用者資料集合類型之雲端儲存器服務。在一項實施例中,同步系統1200可進一步包括一同步管理系統1220。一開始,用戶端裝置100可在同步系統1200上儲存來自用戶端裝置100之檔案系統的一或多個使用者資料集合。使用者資料集合(諸如,用戶端裝置100上之機器狀態資料庫300)可儲存於同步系統1200上。在一項實施例中,使用者資料集合可組塊至經組塊資料部分且儲存於一或多個內容伺服器1230上。描述使用者資料集合之後設資料及關於使用者資料集合之經組塊部分之後設資料可儲存於後設資料伺服器1210上的一同步後設資料資料庫中。在一項實施例中,可使用同步系統管理器1220管理後設資料伺服器1210及內容伺服器1230。
管理後設資料伺服器1210可包括將軟體提供至後設資料伺服器1210以解決使用者之各種版本之資料集合之間的衝突,包括自產生資料集合的軟體之不同版本產生的衝突。舉例而言,若使用者之一個用戶端裝置(例如,101)具有為版本2.0之文書處理程式軟體,且使用者使用彼用戶端裝置及軟體產生文書處理文件,且稍後使用同步系統1200將該文件下載至具有文書處理程式軟體之版本1.0的使用者之不同用戶端裝置(例如,102),版本1.0軟體可能不能夠開啟及/或編輯由軟體版本2.0產生之文件。同步系統管理器1260可將軟體更新及補片提供至後設資料伺服器1210以調適文件以用於供文書處理軟體之版本1.0及版本2.0使用。類似地,第一用戶端裝置101上之機器狀態300可利用不由第二用戶端裝置102支援之特徵,或具有在第二用戶端裝置102上不同之規格。舉例而言,用戶端裝置101可具有基於GPS信號利用「位置」特徵之機器。用戶端裝置102可僅能夠藉由小區塔估算、區碼(area code)或IP位址來偵測位置。同步系統管理器1220可在與用 戶端裝置102同步預測符前修改用戶端裝置101之機器狀態中的「位置」特徵。替代地,在同步預測符前,同步系統管理器1220可自預測符移除不由目標用戶端裝置支援之特徵。在一實施例中,在同步前,可關於對預測符進行之改變用旗標標記或以其他方式標記修改之預測符。
同步系統1200可經由網路140介接至用戶端裝置100。網路140可為網際網路、無線網路、蜂巢式網路、區域網路或此等之任何組合。雖然同步系統管理器1220、後設資料伺服器1210及內容伺服器1230已經展示為經由網路140連接之單獨元件,但此未必為該情況。同步系統管理器1220、後設資料伺服器1210或內容伺服器1230中之一或多者可實施於同一主機電腦系統上或實施於若干實體上分散之電腦系統上。此外,如上所述,內容伺服器1230可包括一或多個內容伺服器1230,其中之任一者或全部可儲存一或多個類型之使用者資料集合。同步系統管理器1220、後設資料伺服器1210及內容伺服器1230中之一或多者之間的通信可為藉由通訊端、訊息、共用記憶體、應用程式介面(API)、處理程序間通信或其他處理通信服務。以下參看圖14詳細地描述應用程式設計介面。
用戶端裝置100可包括桌上型電腦系統、膝上型電腦系統(諸如,用戶端裝置101)、平板電腦系統(諸如,用戶端裝置102)、蜂巢式電話(諸如,用戶端裝置103)、包括具備蜂巢式功能之個人數位助理(PDA)的PDA、機上盒、娛樂系統、遊戲裝置或其他消費者電子裝置。以下參看圖15詳細地描述用戶端裝置100之組件。
使用者資料集合可包括以下各者中之一或多者:機器狀態資料庫、使用者處理活動資料庫及功率使用量資料庫。使用者資料集合可進一步包括本機搜尋及回饋歷史資料庫、本機資料庫、資料檔案、資料夾或目錄、文書處理文件、試算表、簡報、電子郵件、文字、使用 者連絡人、書籤、資產(諸如,音樂、電影及其他購買之內容)、裝置設定及應用程式設定。此等中之每一者可為使用者資料集合。用戶端裝置100之使用者可基於每個裝置判定是否將或將不使用同步系統1200使一特定資料集合與使用者之用戶端裝置100之其他者同步。
關於使用者資料集合之後設資料可包括檔案系統後設資料及同步後設資料。檔案系統後設資料可包括檔案ID,諸如,POSIX檔案ID、文件ID、檔案之建立日期、檔案最後被修改之日期、最後修改檔案的裝置之識別符、修改該檔案的應用程式之識別符及應用程式之版本及該檔案之產生計數。對於資產(諸如,已遠端儲存在諸如iTunes®或Amazon Cloud®之服務處的購買之內容),關於該內容之後設資料可包括指向該內容所位於處之統一資源定位符(URL)。檔案系統後設資料可由每一用戶端裝置100之檔案系統產生。同步後設資料可包括跨使用者之用戶端裝置100唯一的用於檔案或目錄之通用唯一識別符(UUID),且可進一步包括ETAGS。ETAGS可指定用於文件或目錄的後設資料之特定版本。ETAGS可由同步系統100產生以管理使用者資料集合且解決用於一特定使用者資料集合的使用者資料之不同代之間的衝突。舉例而言,ETAG可用以區分使用者之簡歷之文書處理文件之不同代。
圖13說明用於同步複數個裝置之機器狀態、使用者處理任務歷史及使用者行為型樣中之一或多者的方法之流程圖。舉例而言,第一處理裝置可為iPhone®且第二處理裝置可為iPad®。
在操作205中,可判定及儲存第一處理裝置之機器狀態300,如上文參看圖2所描述。舉例而言,可判定使用者之iPhone®的機器狀態300。可判定在工作日下午7:00後使用者在運動中,在駕駛,且基於GPS座標,判定使用者正朝向家駕駛。
在操作1305中,可在使用者之裝置(例如,圖12之101、102及 103)中之一或多者之間同步機器狀態準備資訊。機器狀態準備資訊可包括機器狀態記錄300、功率使用量資訊400以及使用者處理活動及獲悉之型樣500。
在操作600中,可判定第二處理裝置之未來處理任務。未來處理任務可包括開始時間及在開始未來處理任務時之初始熱狀態Ti。舉例而言,iPad®可已獲悉在下午7:00後在工作日晚上使用者觀看新聞之行為。iPhone®可輔助iPad®針對未來處理任務準備自身。
在操作700中,可針對iPad®產生插入處理任務之清單。在一實施例中,第一處理裝置(iPhone®)可憑藉以上同步操作1305代表第二處理裝置(iPad®)產生插入任務之清單。與插入處理任務之清單中的每一任務相關聯之功率使用量可自第二裝置之功率使用量記錄400及使用者處理活動記錄500判定。在一實施例中,第一電子裝置可代表第二處理裝置判定對於插入處理任務之功率使用量要求。可使用同步系統1200在第一處理裝置與第二處理裝置之間同步插入任務之清單。
在操作207中,可將用於第二裝置之初始溫度TC輸入至前饋熱預測模型210中。可將插入任務之清單及用於插入任務的相關聯之功率使用量要求輸入至前饋預測模型210中。在一實施例中,第一處理裝置100(iPhone®)代表第二處理裝置(iPad®)執行前饋熱預測。前饋熱預測模型之輸出可包括第二處理裝置的預測之熱狀態TP
在操作800中,第二處理裝置可經準備使得第二處理裝置將在用於未來處理任務之開始時間具有初始狀態Ti。在一實施例中,若準備僅涉及一個裝置,則第二處理裝置可使用較嚴格之冷卻措施,因為使用者可能並不處於同時存在第一裝置和第二裝置兩者之情況。舉例而言,可按最大值使iPad®上之冷卻系統運轉,直至使用者之第一處理裝置(iPhone®)判定其機器狀態「在家」,使得使用者不面對兩個處理裝置。
在操作1310中,視情況,第二處理裝置啟動第二處理裝置上之未來處理任務。在一實施例中,當第一處理裝置偵測到其已「到家」時,第二處理裝置與第一處理裝置可同步機器狀態。回應於偵測到第一電子裝置(iPhone®)「在家」(且因此,使用者亦在家),第二處理裝置可啟動第二處理裝置上之未來處理任務。繼續以上實例,iPad®可回應於偵測到第一處理裝置之機器狀態指示第一處理裝置「在家」啟動新聞應用程式。
圖14(「軟體堆疊」)中,一例示性實施例,應用程式可使用若干服務API呼叫服務1或2,且使用若干OS API呼叫作業系統(OS)。服務1及2可使用若干OS API呼叫OS。
注意,服務2具有兩個API,其中之一者(服務2 API 1)接收來自應用程式1之呼叫且將值傳回至該應用程式,且另一者(服務2 API 2)接收來自應用程式2之呼叫且將值傳回至該應用程式,服務1(其可為例如軟體程式庫)呼叫OS API 1且自其接收傳回之值,且服務2(其可為例如軟體程式庫)呼叫API 1及OS API 2兩者且自其接收傳回之值,應用程式2呼叫API 2且自其接收傳回之值。
圖15為運算系統1500之一項實施例之方塊圖。圖15中說明之運算系統意欲表示包括(例如)桌上型電腦系統、膝上型電腦系統、蜂巢式電話、平板電腦、包括具備蜂巢式功能之個人數位助理(PDA)的PDA、機上盒、娛樂系統或其他消費者電子裝置之一系列運算系統(有線或無線)。蜂巢式電話可包括智慧型手機,諸如,Apple之iPhone®。平板電腦可包括(例如)Apple之iPad®或Microsoft之Surface®。替代性運算系統可包括更多、更少及/或不同組件。圖15之運算系統可用以提供用戶端裝置及/或服務器裝置。
運算系統1500包括匯流排1505或其他通信裝置以傳達資訊,及可處理資訊的耦接至匯流排1505之處理器1510。
雖然藉由單一處理器來說明運算系統1500,但運算系統1500可包括多個處理器及/或共處理器1510。運算系統1500進一步可包括耦接至匯流排1505之隨機存取記憶體(RAM)或其他動態儲存裝置1520(被稱作主記憶體),且可儲存資訊及可由處理器1510執行之指令。主記憶體1520亦可用以在由處理器1510執行指令期間儲存臨時變數或其他中間資訊。
運算系統1500亦可包括可儲存用於處理器1510之靜態資訊及指令的耦接至匯流排1505之唯讀記憶體(ROM)1530及/或其他靜態儲存裝置1540。資料儲存裝置1540可耦接至匯流排1505以儲存資訊及指令。資料儲存裝置1540(諸如,快閃記憶體或磁碟或光碟及對應的碟機)可耦接至運算系統1500。
運算系統1500亦可經由匯流排1505耦接至諸如陰極射線管(CRT)或液晶顯示器(LCD)之顯示裝置1550,以對使用者顯示資訊。運算系統1500亦可包括可耦接至匯流排1505之文數字輸入裝置1560(包括文數字及其他鍵)以將資訊及命令選擇傳達至處理器1510。另一類型之使用者輸入裝置為游標控制1570(諸如,觸控板、滑鼠、軌跡球或游標方向鍵)以將方向資訊及命令選擇傳達至處理器1510及控制顯示器1550上之游標移動。
運算系統1500進一步可包括一或多個網路介面1580以提供對諸如區域網路之網路的存取。網路介面1580可包括(例如)具有天線1585(其可表示一或多個天線)之一無線網路介面。運算系統1500可包括諸如WiFi、藍芽及蜂巢式電話介面之組合的多個無線網路介面。網路介面1580還可包括(例如)有線網路介面以經由網路纜線1587(其可為(例如)乙太網路纜線、同軸纜線、光纖纜線、串列纜線或並列纜線)與遠端裝置通信。
在一項實施例中,網路介面1580可提供對區域網路之存取,例 如,藉由遵守IEEE 802.11 b及/或IEEE 802.11 g標準,及/或無線網路介面可提供對個人區域網路之存取,例如,藉由遵守藍芽標準。亦可支援其他無線網路介面及/或協定。除了經由無線LAN標準通信之外,或替代經由無線LAN標準通信,網路介面1580可提供使用(例如)分時多重存取(TDMA)協定、全球行動通信系統(GSM)協定、分碼多重存取(CDMA)協定及/或任何其他類型之無線通信協定的無線通信。
處理系統1500可進一步包括溫度感測器1575。溫度感測器1575可包括熱電偶、晶片上熱偵測器I/O或其他感測器類型。可包括用於個別硬體組件(例如,CPU或GPU)或其他高功率高熱量組件之溫度感測器1575,且溫度感測器1575可進一步包括置放於處理裝置1500內以感測處理裝置1500內的空氣之溫度之一或多個溫度感測器。
在前述說明書中,已參照本發明之特定實施例描述了本發明。然而,在不脫離本發明之較寬泛精神及範疇的情況下可對其進行各種修改及改變將係明顯的。因此,應按說明性意義上而非限制性意義來看待說明書及圖式。
200‧‧‧針對未來處理任務準備處理裝置之狀態之方法
210‧‧‧前饋熱預測模型

Claims (30)

  1. 一種電腦實施方法,其包含:判定一處理裝置之一未來處理任務,該未來處理任務具有一未來開始時間;預測在一第一時間與該未來開始時間之間的該處理裝置之複數個處理任務,該複數個處理任務中之每一處理任務具有執行該處理任務的一相關聯之功率要求,其中判定該未來處理任務包含藉由使用該處理裝置來詢問先前已被執行之任務之一處理活動資料庫;基於該處理裝置之一當前溫度及執行該複數個處理任務中之一或多者的該等功率要求,預測該處理裝置在該未來開始時間將會處在的該處理裝置之一未來溫度TP;及回應於該TP大於一溫度TI,準備該處理裝置使得在該未來處理任務開始時該處理裝置之該溫度小於或等於該溫度TI
  2. 如請求項1之方法,其中該詢問之結果包含於該第一時間前之一星期內已被執行之任務,且該方法進一步包含:篩選該詢問之該等結果不包括在一預定持續時間期間消耗小於一臨限功率量之未來處理任務;及判定該未來處理任務包含選擇具有下列一或多者之一詢問結果:最長持續時間、每單位時間使用最高功率量或傳回指示一使用者之一行為型樣之最多處理活動記錄。
  3. 如請求項2之方法,其中使用者行為之一型樣包含以下各者中之一或多者:判定一使用者開始一特定任務之一大致當天時間;判定該使用者執行該特定任務之一大致持續時間;判定該使用者執行該特定任務的一星期中之一特定日;或此等各者之任何 組合。
  4. 如請求項1之方法,其中預測該複數個處理任務包含:詢問用於該處理裝置之一使用者之處理之一歷史,該等處理歷史上已在自該第一時間至該未來開始時間之一時間窗期間被執行;於來自處理之該歷史之該詢問之該等結果中查找一功率要求及用於每一處理之估計之持續時間;篩選處理之該歷史以不包括具有小於一臨限值之一功率要求之該等處理。
  5. 如請求項4之方法,其中該詢問進一步限制在下列其中一者:該星期之一特定日、任何週末日或任何工作日。
  6. 如請求項4之方法,其中判定該處理任務之該功率要求包含:將自功率使用量資料之該資料庫擷取的用於該處理任務之一遞增功率使用量乘以自過去處理任務之一歷史擷取的該處理任務之一預測之持續時間。
  7. 如請求項1之方法,其中準備該處理裝置包含以下各者中之一或多者:將該複數個預測之處理任務中之一或多者重新排程至稍後時間;或降低該複數個預測之處理任務中之一或多者的排程優先權。
  8. 如請求項1之方法,其中準備該處理裝置包含以下各者中之一或多者:降低音訊音量;降低音訊解析度;降低視訊解析度;或減小視訊圖框速率。
  9. 如請求項2之方法,其中預測該處理裝置之該複數個處理任務進一步包含:使過去處理任務與該處理裝置之一或多個感測器值相關。
  10. 如請求項9之方法,其中使一過去處理任務與該處理裝置之一或 多個感測器值相關包含使一過去處理任務之執行與以下各者中之一或多者相關:一位置、一當天時間、一星期中之某一日、該處理裝置是否連接至一網路或一網路之一信號強度。
  11. 一種利用可執行指令程式化之非暫時性電腦可讀媒體,該等可執行指令在經執行時執行包含以下操作之一方法:判定一處理裝置之一未來處理任務,該未來處理任務具有一未來開始時間,其中判定該未來處理任務包含藉由使用該處理裝置來詢問先前已被執行之任務之一處理活動資料庫;預測在一第一時間與該未來開始時間之間的該處理裝置之複數個處理任務,該複數個處理任務中之每一處理任務具有執行該處理任務的一相關聯之功率要求;基於該處理裝置之一當前溫度及執行該複數個處理任務中之一或多者的該等功率要求,預測該處理裝置在該未來開始時間將會處在的該處理裝置之一未來溫度TP;及回應於該TP大於一溫度TI,準備該處理裝置使得在該未來處理任務開始時該處理裝置之該溫度小於或等於該溫度TI
  12. 如請求項11之媒體,其中該詢問之結果包含於該第一時間前之一星期內已被執行之任務,且該方法進一步包含:篩選該詢問之該等結果不包括在一預定持續時間期間消耗小於一臨限功率量之未來處理任務;及判定該未來處理任務包含選擇具有下列一或多者之一詢問結果:最長持續時間、每單位時間使用最高功率量或傳回指示一使用者之一行為型樣之最多處理活動記錄。
  13. 如請求項12之媒體,其中使用者行為之一型樣包含以下各者中之一或多者:判定一使用者開始一特定任務之一大致當天時間;判定該使用者執行該特定任務之一大致持續時間;判定該 使用者執行該特定任務的一星期中之一特定日;或此等各者之任何組合。
  14. 如請求項11之媒體,其中預測該複數個處理任務包含:詢問用於該處理裝置之一使用者之處理之一歷史,該等處理歷史上已在自該第一時間至該未來開始時間之一時間窗期間被執行;於來自處理之該歷史之該詢問之該等結果中查找一功率要求及用於每一處理之估計之持續時間;篩選處理之該歷史以不包括具有小於一臨限值之一功率要求之該等處理。
  15. 如請求項11之媒體,其中該詢問進一步限制在下列其中一者:該星期之一特定日、任何週末日或任何工作日。
  16. 如請求項14之媒體,其中判定該處理任務之該功率要求包含:將自功率使用量資料之該資料庫擷取的用於該處理任務之一遞增功率使用量乘以自過去處理任務之一歷史擷取的該處理任務之一預測之持續時間。
  17. 如請求項11之媒體,其中準備該處理裝置包含以下各者中之一或多者:將該複數個預測之處理任務中之一或多者重新排程至稍後時間;或降低該複數個預測之處理任務中之一或多者的排程優先權。
  18. 如請求項11之媒體,其中準備該處理裝置包含以下各者中之一或多者:降低音訊音量;降低音訊解析度;降低視訊解析度;或減小視訊圖框速率。
  19. 如請求項12之媒體,其中預測該處理裝置之該複數個處理任務進一步包含:使過去處理任務與該處理裝置之一或多個感測器值相關。
  20. 如請求項19之媒體,其中使一過去處理任務與該處理裝置之一或多個感測器值相關包含使一過去處理任務之執行與以下各者中之一或多者相關:一位置、一當天時間、一星期中之某一日、該處理裝置是否連接至一網路或一網路之一信號強度。
  21. 一種處理裝置,其包含:一或多個處理器;一儲存器,其包含過去處理任務之一歷史及功率使用量資料之一資料庫,該儲存器耦接至該一或多個處理器;及一記憶體,其耦接至一或多個處理器,該記憶體係利用可執行指令程式化,該等可執行指令在經執行時執行包含以下操作之一方法:判定該處理裝置之一未來處理任務,該未來處理任務具有一未來開始時間,其中判定該未來處理任務包含藉由使用該處理裝置來詢問先前已被執行之任務之一處理活動資料庫;預測在一第一時間與該未來開始時間之間的該處理裝置之複數個處理任務,該複數個處理任務中之每一處理任務具有執行該處理任務的一相關聯之功率要求;基於該處理裝置之一當前溫度及執行該複數個處理任務中之一或多者的該等功率要求,預測該處理裝置在該未來開始時間將會處在的該處理裝置之一未來溫度TP;及回應於該TP大於一溫度TI,準備該處理裝置使得在該未來處理任務開始時該處理裝置之該溫度小於或等於該溫度TI
  22. 如請求項21之處理裝置,其中該詢問之結果包含於該第一時間前之一星期內已被執行之任務,且該等操作進一步包含:篩選該詢問之該等結果不包括在一預定持續時間期間消耗小於一臨限功率量之未來處理任務;及 判定該未來處理任務包含選擇具有下列一或多者之一詢問結果:最長持續時間、每單位時間使用最高功率量或傳回指示一使用者之一行為型樣之最多處理活動記錄。
  23. 如請求項22之處理裝置,其中使用者行為之一型樣包含以下各者中之一或多者:判定一使用者開始一特定任務之一大致當天時間;判定該使用者執行該特定任務之一大致持續時間;判定該使用者執行該特定任務的一星期中之一特定日;或此等各者之任何組合。
  24. 如請求項21之處理裝置,其中預測該複數個處理任務包含:詢問用於該處理裝置之一使用者之處理之一歷史,該等處理歷史上已在自該第一時間至該未來開始時間之一時間窗期間被執行;於來自處理之該歷史之該詢問之該等結果中查找一功率要求及用於每一處理之估計之持續時間;篩選處理之該歷史以不包括具有小於一臨限值之一功率要求之該等處理。
  25. 如請求項24之處理裝置,其中該詢問進一步限制在下列其中一者:該星期之一特定日、任何週末日或任何工作日。
  26. 如請求項24之處理裝置,其中判定該處理任務之該功率要求包含:將自功率使用量資料之該資料庫擷取的用於該處理任務之一遞增功率使用量乘以自過去處理任務之一歷史擷取的該處理任務之一預測之持續時間。
  27. 如請求項21之處理裝置,其中準備該處理裝置包含以下各者中之一或多者:將該複數個預測之處理任務中之一或多者重新排程至稍後時間;或降低該複數個預測之處理任務中之一或多者的排程優先權。
  28. 如請求項21之處理裝置,其中準備該處理裝置包含以下各者中之一或多者:降低音訊音量;降低音訊解析度;降低視訊解析度;或減小視訊圖框速率。
  29. 如請求項22之處理裝置,其中預測該處理裝置之該複數個處理任務進一步包含:使過去處理任務與該處理裝置之一或多個感測器值相關。
  30. 如請求項29之處理裝置,其中使一過去處理任務與該處理裝置之一或多個感測器值相關包含使一過去處理任務之執行與以下各者中之一或多者相關:一位置、一當天時間、一星期中之某一天、該處理裝置是否連接至一網路或一網路之一信號強度。
TW105111691A 2015-06-05 2016-04-14 用於預測性控制之電腦實施方法、非暫時性電腦可讀媒體及處理裝置 TWI619007B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562171964P 2015-06-05 2015-06-05
US62/171,964 2015-06-05
US14/871,526 US10671131B2 (en) 2015-06-05 2015-09-30 Predictive control systems and methods
US14/871,526 2015-09-30

Publications (2)

Publication Number Publication Date
TW201710830A TW201710830A (zh) 2017-03-16
TWI619007B true TWI619007B (zh) 2018-03-21

Family

ID=55650720

Family Applications (2)

Application Number Title Priority Date Filing Date
TW105111691A TWI619007B (zh) 2015-06-05 2016-04-14 用於預測性控制之電腦實施方法、非暫時性電腦可讀媒體及處理裝置
TW105205229U TWM539648U (zh) 2015-06-05 2016-04-14 預測性控制系統

Family Applications After (1)

Application Number Title Priority Date Filing Date
TW105205229U TWM539648U (zh) 2015-06-05 2016-04-14 預測性控制系統

Country Status (5)

Country Link
US (1) US10671131B2 (zh)
KR (1) KR102084838B1 (zh)
CN (1) CN107683443B (zh)
TW (2) TWI619007B (zh)
WO (1) WO2016195775A1 (zh)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201402879D0 (en) * 2014-02-18 2014-04-02 Zero360 Inc Display Control
US10083105B2 (en) 2015-06-05 2018-09-25 Apple Inc. Smart advice to charge notification
US11429883B2 (en) * 2015-11-13 2022-08-30 Microsoft Technology Licensing, Llc Enhanced computer experience from activity prediction
JP2018006642A (ja) * 2016-07-06 2018-01-11 富士通株式会社 電子機器
US10133610B2 (en) 2016-08-16 2018-11-20 International Business Machines Corporation System, method and recording medium for temperature-aware task scheduling
JP6799255B2 (ja) * 2016-11-22 2020-12-16 富士通株式会社 ジョブ消費電力推定プログラム、並列処理装置およびジョブ消費電力推定方法
US20180191629A1 (en) * 2016-12-30 2018-07-05 Intel Corporation Time-based flexible packet scheduling
WO2019159280A1 (ja) 2018-02-15 2019-08-22 千代田化工建設株式会社 プラント運転条件設定支援システム、学習装置、及び運転条件設定支援装置
US10680979B2 (en) * 2018-06-08 2020-06-09 Capital One Services, Llc System and method for proactive intervention to reduce high cost channel usage
CN109117813A (zh) * 2018-08-24 2019-01-01 北京新界教育科技有限公司 视频处理方法及装置
US11843621B2 (en) * 2019-03-08 2023-12-12 Forescout Technologies, Inc. Behavior based profiling
CN109829260B (zh) * 2019-03-29 2023-04-18 江苏精研科技股份有限公司 一种5g高速风扇的仿真设计方法
WO2020204990A1 (en) * 2019-04-01 2020-10-08 Fisher Controls International Llc Methods and apparatus to control communication data rates of low-energy devices
CN112208385B (zh) * 2019-07-10 2024-01-02 富泰华工业(深圳)有限公司 电池更换方法及控制装置
US11797356B2 (en) * 2019-09-14 2023-10-24 Tektronix, Inc. Multi-instrument behavior synchronization using jobs and milestones
US11900123B2 (en) * 2019-12-13 2024-02-13 Advanced Micro Devices, Inc. Marker-based processor instruction grouping
US20210191770A1 (en) * 2019-12-18 2021-06-24 Advanced Micro Devices, Inc. Preemptively cooling of processing unit compute elements
US11144421B2 (en) * 2019-12-31 2021-10-12 Micron Technology, Inc. Apparatus with temperature mitigation mechanism and methods for operating the same
KR20210128807A (ko) 2020-04-17 2021-10-27 삼성중공업 주식회사 해수 유입구 덮개
US11656664B2 (en) * 2020-06-05 2023-05-23 Apple Inc. Context aware thermal pressure prediction and reaction
US11301028B2 (en) * 2020-06-24 2022-04-12 Motorola Mobility Llc Time-based and temperature-based device thermal mitigation
CN112587920B (zh) * 2020-12-01 2024-09-24 Oppo(重庆)智能科技有限公司 设备控制方法、装置、电子设备及存储介质
US11934286B2 (en) * 2021-04-29 2024-03-19 Dell Products L.P. Subsystem power range configuration based on workload profile
TWI787955B (zh) * 2021-08-13 2022-12-21 國立臺灣科技大學 設備溫度異常的線上檢測方法和系統
TWI823183B (zh) * 2021-11-12 2023-11-21 台泥儲能科技股份有限公司 電力需量控制系統及其方法
US11972267B2 (en) * 2022-10-04 2024-04-30 International Business Machines Corporation Hibernation of computing device with faulty batteries
WO2024238930A1 (en) * 2023-05-18 2024-11-21 Sonos, Inc. Techniques for smart sleep
TWI882847B (zh) * 2024-06-21 2025-05-01 眾智光電科技股份有限公司 用於ai筆電之溫度感測器及溫度感測方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1655655A2 (en) * 2004-11-04 2006-05-10 Kabushiki Kaisha Toshiba Processor system with temperature sensor and control method of the same
US20110035078A1 (en) * 2008-04-21 2011-02-10 Adaptive Computing Enterprises Inc. formerly known as Cluster Resources, Inc. System and method for managing energy consumption in a compute environment
US20110157191A1 (en) * 2009-12-30 2011-06-30 Nvidia Corporation Method and system for artifically and dynamically limiting the framerate of a graphics processing unit
TW201303550A (zh) * 2010-12-21 2013-01-16 Intel Corp 用以配置微處理器中之熱設計功率的方法和裝置
TW201502765A (zh) * 2013-06-28 2015-01-16 Intel Corp 用於管理平台溫度之技術及系統
CN105205229A (zh) * 2015-09-02 2015-12-30 江苏省电力公司南京供电公司 一种高压单芯电缆应急负荷下的载流能力动态评估方法

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69728256T2 (de) 1996-01-31 2005-03-03 Asm America Inc., Phoenix Modellgestützte prädiktive regelung für thermische behandlungen
US7174194B2 (en) * 2000-10-24 2007-02-06 Texas Instruments Incorporated Temperature field controlled scheduling for processing systems
US7706856B2 (en) 2002-09-27 2010-04-27 General Electric Company System and method for predictive thermal output control of a medical device
EP1593072A2 (en) * 2003-02-07 2005-11-09 Power Measurement Ltd A method and system for calculating and distributing utility costs
JP4152348B2 (ja) * 2004-06-03 2008-09-17 株式会社ソニー・コンピュータエンタテインメント 電子デバイス冷却装置、電子デバイスシステムおよび電子デバイス冷却方法
US8374730B2 (en) 2005-08-25 2013-02-12 Apple Inc. Methods and apparatuses for dynamic thermal control
US20070192641A1 (en) * 2006-02-10 2007-08-16 Intel Corporation Method and apparatus to manage power consumption in a computer
US20070225871A1 (en) 2006-03-24 2007-09-27 Karstens Christopher K Managing predictable thermal environments
US8762097B2 (en) 2006-08-04 2014-06-24 Apple Inc. Method and apparatus for a thermal control system based on virtual temperature sensor
JP5189921B2 (ja) * 2008-08-02 2013-04-24 レノボ・シンガポール・プライベート・リミテッド コンピュータの放熱システム
US8224596B2 (en) * 2008-09-09 2012-07-17 International Business Machines Corporation Portable device battery optimization routing system
US8190276B2 (en) 2008-11-21 2012-05-29 Oracle America, Inc. Method and apparatus for controlling temperature variations in a computer system
US8631411B1 (en) * 2009-07-21 2014-01-14 The Research Foundation For The State University Of New York Energy aware processing load distribution system and method
US8538484B2 (en) * 2009-08-14 2013-09-17 Google Inc. Providing a user with feedback regarding power consumption in battery-operated electronic devices
US8280456B2 (en) 2009-08-14 2012-10-02 Google Inc. Providing a user with feedback regarding power consumption in battery-operated electronic devices
US8452463B2 (en) 2010-06-04 2013-05-28 Apple Inc. Adjusting the thermal behavior of a computing system using indirect information about ambient temperature
US8972217B2 (en) * 2010-06-08 2015-03-03 Schneider Electric It Corporation System and method for predicting temperature values in a data center
CN101916209B (zh) * 2010-08-06 2012-11-21 华东交通大学 一种多核处理器集群任务资源分配方法
US8984305B2 (en) 2010-12-21 2015-03-17 Intel Corporation Method and apparatus to configure thermal design power in a microprocessor
US10558544B2 (en) * 2011-02-14 2020-02-11 International Business Machines Corporation Multiple modeling paradigm for predictive analytics
US8688883B2 (en) * 2011-09-08 2014-04-01 Intel Corporation Increasing turbo mode residency of a processor
US10180665B2 (en) 2011-09-16 2019-01-15 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Fluid-cooled computer system with proactive cooling control using power consumption trend analysis
US9442773B2 (en) 2011-11-21 2016-09-13 Qualcomm Incorporated Thermally driven workload scheduling in a heterogeneous multi-processor system on a chip
US8909383B2 (en) 2011-12-22 2014-12-09 International Business Machines Corporation Proactive cooling of chips using workload information and controls
US9395807B2 (en) * 2012-05-23 2016-07-19 Canon Kabushiki Kaisha Power management apparatus, image forming apparatus and power management method
JP5929575B2 (ja) * 2012-07-11 2016-06-08 ソニー株式会社 消費電力管理装置及び消費電力管理システム
US10552774B2 (en) * 2013-02-11 2020-02-04 Amazon Technologies, Inc. Cost-minimizing task scheduler
CN103105923B (zh) * 2013-03-07 2015-05-27 鄂尔多斯市云泰互联科技有限公司 云计算中心的it业务节能调度方法及其系统
CN104158754B (zh) * 2014-07-08 2017-07-11 上海交通大学 基于热负载均衡的数据中心自适应性耗能管理方法
US10061366B2 (en) * 2015-11-17 2018-08-28 Microsoft Technology Licensing, Llc Schedule-based energy storage device selection

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1655655A2 (en) * 2004-11-04 2006-05-10 Kabushiki Kaisha Toshiba Processor system with temperature sensor and control method of the same
US20110035078A1 (en) * 2008-04-21 2011-02-10 Adaptive Computing Enterprises Inc. formerly known as Cluster Resources, Inc. System and method for managing energy consumption in a compute environment
US20110157191A1 (en) * 2009-12-30 2011-06-30 Nvidia Corporation Method and system for artifically and dynamically limiting the framerate of a graphics processing unit
TW201303550A (zh) * 2010-12-21 2013-01-16 Intel Corp 用以配置微處理器中之熱設計功率的方法和裝置
TW201502765A (zh) * 2013-06-28 2015-01-16 Intel Corp 用於管理平台溫度之技術及系統
CN105205229A (zh) * 2015-09-02 2015-12-30 江苏省电力公司南京供电公司 一种高压单芯电缆应急负荷下的载流能力动态评估方法

Also Published As

Publication number Publication date
WO2016195775A1 (en) 2016-12-08
KR102084838B1 (ko) 2020-03-04
US10671131B2 (en) 2020-06-02
US20160357232A1 (en) 2016-12-08
CN107683443A (zh) 2018-02-09
KR20180003576A (ko) 2018-01-09
TWM539648U (zh) 2017-04-11
TW201710830A (zh) 2017-03-16
CN107683443B (zh) 2021-06-18

Similar Documents

Publication Publication Date Title
TWI619007B (zh) 用於預測性控制之電腦實施方法、非暫時性電腦可讀媒體及處理裝置
US10872064B2 (en) Utilizing version vectors across server and client changes to determine device usage by type, app, and time of day
US10331483B1 (en) Scheduling data access jobs based on job priority and predicted execution time using historical execution data
RU2586869C2 (ru) Уведомления о приложениях
US9286568B2 (en) Battery drain analysis and prediction for wireless devices
KR102106744B1 (ko) 피어 이벤트 데이터에 기초한 모바일 디바이스의 동적 조정
US9405838B2 (en) Determining an active persona of a user device
US20190188007A1 (en) Method for Preloading Application, Storage Medium, and Terminal Device
CN101981531B (zh) 聚集循环调度以优化资源消耗
US8812586B1 (en) Correlating status information generated in a computer network
WO2018161842A1 (en) Optimization of energy management of mobile devices based on specific user and device metrics uploaded to cloud
US20190188005A1 (en) Method for Preloading Application, Storage Medium, and Terminal Device
US10574554B2 (en) Control of applications that use system resources
CN104937582A (zh) 数据同步
US11630851B2 (en) Systems and methods for providing predictions to applications executing on a computing device
US10565045B2 (en) Modularized collaborative performance issue diagnostic system
US20140136664A1 (en) Resource based mobile device application streaming
CN110419027B (zh) 管理应用的方法和使用该方法的计算设备
US20140122403A1 (en) Loading prediction method and electronic device using the same
Oliver et al. Data driven smartphone energy level prediction
CN119025267B (zh) 一种内置ai的万物智联操作系统及其控制方法
Muller et al. Engineering cyber physical systems
Wang et al. Fusing prefetch and delay-tolerant transfer for mobile videos
CN117971250A (zh) 应用安装方法、装置、电子设备和可读存储介质
US9805113B2 (en) Intelligent indexing

Legal Events

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