TW202236053A - Hilite﹔用於嵌入式系統單晶片(soc)之電源管理的分層及輕量級模仿學習 - Google Patents
Hilite﹔用於嵌入式系統單晶片(soc)之電源管理的分層及輕量級模仿學習 Download PDFInfo
- Publication number
- TW202236053A TW202236053A TW110139397A TW110139397A TW202236053A TW 202236053 A TW202236053 A TW 202236053A TW 110139397 A TW110139397 A TW 110139397A TW 110139397 A TW110139397 A TW 110139397A TW 202236053 A TW202236053 A TW 202236053A
- Authority
- TW
- Taiwan
- Prior art keywords
- policies
- level
- power
- dpm
- soc
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 46
- 238000012545 processing Methods 0.000 claims description 29
- 238000003066 decision tree Methods 0.000 claims description 6
- 238000010801 machine learning Methods 0.000 claims description 5
- 238000012549 training Methods 0.000 claims description 5
- 238000004088 simulation Methods 0.000 claims description 4
- 238000013528 artificial neural network Methods 0.000 claims 2
- 238000013459 approach Methods 0.000 abstract description 9
- 238000013461 design Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000011156 evaluation Methods 0.000 description 8
- 230000006872 improvement Effects 0.000 description 5
- 239000003607 modifier Substances 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005265 energy consumption Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000015556 catabolic process Effects 0.000 description 3
- 238000002790 cross-validation Methods 0.000 description 3
- 238000006731 degradation reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 238000010408 sweeping Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
- 210000000689 upper leg Anatomy 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Supply And Distribution Of Alternating Current (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
本發明提供用於嵌入式系統單晶片(SoC)之電源管理的分層及輕量級模仿學習(IL),在本文中亦稱為HiLITE。現代SoC使用動態電源管理(DPM)技術以改良能量效率。然而,現有技術無法在異質平台上在同時考量多個目標(例如,能量及即時要求)之情況下有效地調適運行時間決策。為了解決此需要,本文中描述之實施例提出HiLITE,即最大化能量效率同時滿足對嵌入式SoC之軟性即時限制之一分層IL架構。此方法首先使用IL訓練DPM政策;接著,其在運行時間應用一迴歸政策以最小化時限超過。相較於最先進方法,HiLITE將能量延遲積平均改良達40%,且將時限超過減少多達76%。另外,該等經訓練政策不僅達成高準確度,而且亦具有可忽略的預測時間額外負載及小記憶體佔用面積。
Description
本發明係關於處理裝置之電源管理。
系統單晶片(SoC)應經設計以滿足積極的效能要求同時應對有限電池容量、熱設計功率(TDP)及即時(RT)限制。在此方向上之一步驟由利用異質性(例如,當需要高效能時使用大核心及另外切換至小核心)組成。另外,可在運行時間使用諸如動態電壓及頻率縮放(DVFS)及電源閘控(PG)之技術以管理SoC之功率消耗。然而,運行時間決策之設計空間隨著核心數目、頻率位準及電源狀態而組合地急劇擴大。另外,當前平台服務具有相異特性及要求之廣泛多種應用。廣泛設計空間及不斷增長之種類的應用需要有效地管理嵌入式異質平台之功率及效能之新運行時間技術。
對異質平台之先前工作使用機器學習以相對於在商業SoC中存在之動態電源管理(DPM)技術改良能量效率。然而,此等研究未考量RT限制及PG。同樣地,分層電源管理技術不標定此等度量;代替性地,其等使用強化學習(RL)及專用啟發法用於均質平台中之能量最佳化。標定諸如RT之額外限制係重要的,且若DPM技術未應用特定機制以解決此等限制,則其等遞送次優結果。例如,此一方法導致RT應用之高時限超過(deadline miss)。
一些先前工作使用RL以最佳化RT限制。然而,RL隨著狀態及動作空間增加而在大小上以指數方式增加。代替性地,模仿學習(IL)由此等工作使用以訓練有效地探索一大設計空間之一DPM政策。一個方法考量RT及PG,但僅針對DVFS及PG在兩個基於啟發法之政策之間選擇。此等先前方法之各者僅考量均質平台及通常單核心處理器,因此,此等技術無法有效地最佳化一異質SoC。因此,鑑於當前SoC中之限制,需要能夠依據不同目標及限制調適運行時間決策之新技術。
提供用於嵌入式系統單晶片(SoC)之電源管理的分層及輕量級模仿學習(IL),在本文中亦稱為HiLITE。現代SoC使用動態電源管理(DPM)技術以改良能量效率。然而,現有技術無法在異質平台上在同時考量多個目標(例如,能量及即時要求)之情況下有效地調適運行時間決策。為了解決此需要,本文中描述之實施例提出HiLITE,即最大化能量效率同時滿足對嵌入式SoC之軟性即時限制之一分層IL架構。
此方法首先使用IL訓練DPM政策;接著,其在運行時間應用一迴歸政策以最小化時限超過。相較於最先進方法,HiLITE將能量延遲積平均改良達40%,且將時限超過減少多達76%。另外,該等經訓練政策不僅達成高準確度,而且亦具有可忽略的預測時間額外負載(overhead)及小記憶體佔用面積。
一例示性實施例提供一種用於一異質SoC中之分層電源管理之方法。該方法包含:獲得複數個應用任務以供該異質SoC執行;獲得用於在該複數個應用任務之執行期間減小一能量延遲積之IL政策;及在一第一層級應用該等IL政策以預測用於執行該複數個應用任務之電源要求。
另一例示性實施例提供一種DPM架構。該DPM架構包含:一異質SoC模擬器,其經組態以模擬一異質SoC對複數個應用任務之執行;及一電源管理器,其經組態以在該複數個任務之執行期間將基於IL之電源政策應用至該異質SoC。該電源管理器包含:一第一層級,其經組態以基於預測用於實施該等基於IL之電源政策之電源要求作出處理電源決策;及一第二層級,其經組態以在運行時間期間調整該等第一層級處理電源決策。
熟習此項技術者在閱讀與隨附圖式相關聯之較佳實施例之以下詳細描述之後將瞭解本發明之範疇且認知本發明之額外態樣。
政府支援
本發明係在根據國防高級研究計劃局授予的FA8650-18-2-7860的政府支援下完成。政府對本發明具有某些權力。
相關申請案
本申請案主張2020年10月22日申請之臨時專利申請案第63/104,269號之權利,該案之揭示內容之全文藉此以引用的方式併入本文中。
下文闡述之實施例表示使熟習此項技術者能夠實踐實施例且繪示實踐實施例之最佳模式之必要資訊。在鑑於隨附圖式閱讀以下描述之後,熟習此項技術者將理解本發明之概念且將辨識在本文中未特定解決之此等概念之應用。應理解,此等概念及應用落在本發明及隨附發明申請專利範圍之範疇內。
亦將理解,雖然在本文中可使用術語第一、第二等來描述各種元件,但此等元件不應受限於此等術語。此等術語僅用以區分一元件與另一元件。例如,一第一元件可被稱為一第二元件,且類似地,一第二元件可被稱為一第一元件而不脫離本發明之範疇。如本文中使用,術語「及/或」包含一或多個相關聯經列舉物項之任何及全部組合。
應理解,當諸如一層、區域或基板之一元件被稱為在另一元件「上」或延伸至另一元件「上」時,其可直接在該另一元件上或直接延伸至該另一元件上,或亦可存在中介元件。相比之下,當一元件被稱為「直接」在另一元件「上」或「直接」延伸至另一元件「上」時,不存在中介元件。同樣地,應理解,當諸如一層、區域或基板之一元件被稱為在另一元件「上方」或在另一元件「上方」延伸時,其可直接在該另一元件上方或直接在該另一元件上方延伸,或亦可存在中介元件。相比之下,當一元件被稱為「直接」在另一元件「上方」或「直接」在另一元件「上方」延伸時,不存在中介元件。亦應理解,當一元件被稱為「連接」或「耦合」至另一元件時,其可直接連接或耦合至該另一元件,或可存在中介元件。相比之下,當一元件被稱為「直接連接」或「直接耦合」至另一元件時,不存在中介元件。
可在本文中使用諸如「下方」或「上方」或「上」或「下」或「水平」或「垂直」之相對術語以描述一個元件、層或區域與另一元件、層或區域之一關係,如圖中繪示。應理解,除在圖中描繪之定向之外,此等術語及上文論述之彼等術語旨在亦涵蓋裝置之不同定向。
本文中使用之術語僅係出於描述特定實施例之目的且不旨在限制本發明。如本文中使用,單數形式「一(a/an)」及「該」旨在亦包含複數形式,除非背景內容清楚另外指示。將進一步理解,當在本文中使用時,術語「包括(comprises/comprising)」及/或「包含(includes/including)」指定所述特徵、整數、步驟、操作、元件及/或組件之存在,但不排除一或多個其他特徵、整數、步驟、操作、元件、組件及/或其等之群組之存在或添加。
除非另外定義,否則本文中使用之全部術語(包含技術及科學術語)具有與本發明所屬之技術之一般技術者所通常理解之相同意義。應進一步理解,本文中使用之術語應被解譯為具有與其等在本說明書及相關技術之背景內容中之含義一致之一含義且將不以一理想化或過於正式的意義解譯,除非在本文中明確如此定義。
提供用於嵌入式系統單晶片(SoC)之電源管理的分層及輕量級模仿學習(IL),在本文中亦稱為HiLITE。現代SoC使用動態電源管理(DPM)技術以改良能量效率。然而,現有技術無法在異質平台上在同時考量多個目標(例如,能量及即時要求)之情況下有效地調適運行時間決策。為了解決此需要,本文中描述之實施例提出HiLITE,即最大化能量效率同時滿足對嵌入式SoC之軟性即時限制之一分層IL架構。
此方法首先使用IL訓練DPM政策;接著,其在運行時間應用一迴歸政策以最小化時限超過。相較於最先進方法,HiLITE將能量延遲積平均改良達40%,且將時限超過減少多達76%。另外,經訓練政策不僅達成高準確度,而且亦具有可忽略的預測時間額外負載及小記憶體佔用面積。
I.
介紹
本發明提出HiLITE,即使用IL以最小化能量延遲積(EDP)同時應對SoC中之軟性即時(RT)限制之一分層DPM架構。為此目的,首先使用域特定應用(即,無線通信及雷達系統)之功率及效能資料建構一預言機(oracle)。接著,藉由調整ILTTLE及大叢集中之頻率及作用核心數目而在考量軟性時限之同時訓練IL政策以達成低EDP。
一離線設定政策可設定成功地用於能量最佳化之操作點,但其可歸因於工作負荷及排程之不可預測動態變動而超過時限。因此,本發明進一步提出微調政策決策以解決此等變動之一新穎線上迴歸政策。
本文中描述之實施例可提供以下優點:
包括用於最大化能量效率之輕量級IL政策及用於微調SoC組態以滿足RT限制之一迴歸政策之一分層架構。
用於應對執行時限同時最佳化能量消耗之設計及運行時間方法。
針對一商業SoC相對於效能、功率及溫度驗證模擬結果。
II.
分層時限感知 DPM
圖1係HiLITE 10之一例示性實施例之一示意圖。此部分呈現如圖1中繪示之HiLITE 10中之預言機產生方法論及時限感知IL政策12。
A. 預言機產生
為了特性化電源管理組態(例如,叢集頻率)對系統效能及能量消耗之影響,且為了實現預言機產生,建構由固定數目個訊框組成之微基準。訊框係由各應用處理之資料之基本單元,因此各訊框針對大多數目標應用含有64個位元。各微基準針對各所支援組態在Odroid-XU3板上運行且儲存效能計數器、執行時間及功率消耗。因此,當評估不同頻率位準及核心數目之微基準時,此方法論保留工作負荷。在評估中,各微基準由十個訊框組成且足夠長以收集可靠統計資料。基於資源之可靠性及其等被注入系統中之速率並行執行各微基準內之訊框。最後,一工作負荷係此等微基準之一集合。
使用五個應用(在部分III-B中呈現)針對一微基準中之十個訊框評估全部可能組合,從而導致1001個獨有微基準。使用頻率狀態之全部組合評估此等微基準之各者:八個用於大叢集(0.6至2.0 GHz)且五個用於LITTLE (0.6至1.4 GHz),使用一200 MHz步長,及全部數目個核心(1至4個大及1至4個LITTLE);此導致多於640K個樣本。基於此等樣本,預言機在考量RT限制之同時選取最小化各微基準之EDP之組態。預言機(針對各微基準k為
)在方程式1中被表達為:
其中
C表示頻率點及核心數目之全部可能組合(
f
points (LITTLE) ×
f
points (big) ×
N
cores (LITTLE) ×
N
cores (big))。指數
k表示基於每一微基準之
F個訊框及
A個應用之二項式係數之各獨有微基準。
E
k(C
i)
及
t
k(C
i)
分別表示在組態
C
i 下之一給定微基準之能量消耗及執行時間。最後,
D
k 係微基準
k之時限。
預言機分別針對預測頻率及核心數目之政策以以下格式產生兩個元組:(
f
big ,
f
little )、(
N
big ,
N
little )。類似地,針對迴歸政策,將經量測執行時間用作預言機。
B. 模仿學習政策
精確模仿訓練緊跟著預言機之後之一政策。然而,其可經受誤差傳播,即,先前狀態中之誤差影響下一個狀態之決策。為了解決此問題,採用被稱為DAgger之一IL方法,其經應用至全部三個經提出政策(頻率、核心數目及執行時間之預測)。更精確言之,以每一控制時間間隔(通常50至100 ms),IL政策12作出經應用至系統且與預言機比較之一預測。若預測不同於預言機,則此樣本經彙總至資料集且執行繼續。若預測與預言機一致,則不採取行動。在執行結束之後,經彙總資料集用於重新訓練IL政策12以便教示IL政策12自在先前反覆期間所出的誤差學習。
提出設計及運行時間技術兩者以應對時限限制。更精確言之,在設計時間,修改預言機產生以考量RT時限限制16,如方程式1中。在運行時間,採用一分層方法以估計執行時間,此解決工作負荷運行時間變動。
演算法1描繪HiLITE 10之經提出分層結構;以各控制時間間隔應用此演算法。首先,IL政策12獲取當前系統狀態及硬體計數器14,接著針對頻率及核心數目執行推斷。僅在微基準具有一時限之情況下啟動迴歸政策。接著,比較經預測執行時間
t
pred (演算法1中之行8)與時限;若經預測執行時間大於時限
D
k ,則應用以下措施:1)將大及LITTLE叢集之頻率/電壓增加達一個增量(行12至13);及2)若頻率已經為兩個叢集之最大值,則將作用核心之數目增加達一(行17)。否則,若經預測時間不超過時限,則執行遵循1級IL政策12繼續。電源閘控(PG)經應用至各叢集之非作用核心。首先增加頻率,此係因為接通一額外核心比增加一作用核心之頻率引發更多額外負載。
由於在運行時間應用分層方法,故僅視需要微調頻率及核心數目。若在設計時間完全應用此方法論,則預言機決策針對全部樣本高估所需頻率及核心數目以自分層方法達成相同位準之時限超過。此相對於分層IL政策12將EDP增加達約20%。因此,分層方法藉由在運行時間提供一通用且更有效的解決方案而解決此等問題。
III.
評估結果 A. 方法論及評估設定
由於實施例關注於輕量級IL技術,故決策樹用於層級1且一迴歸樹用於層級2以達成快速訓練及推斷。針對訓練,使用留一法交叉驗證以自資料集完全移除來自一特定應用之訊框。接著,運行含有來自經移除應用之訊框之一工作負荷以測試對未見應用之模型一般化。針對測試,具有50個微基準之工作負荷經考量且執行5次(小於1%之標準偏差)。針對各執行,應用10個DAgger反覆。
使用目標應用評估兩個主要場景:1)具有與多達5個平行訊框並行處理之1.25個訊框之一平均值之一通信系統之常規工作負荷;及2)具有平均3個平行訊框及多達8個訊框(即,100%之利用率,此係因為總共存在8個核心)之重工作負荷。
藉由針對各微基準產生定界隨機時限(
D
k )而在不同RT限制場景下測試所提出方法。此容許基於經剖析要求產生時限限制而非手動地輸入各微基準之時限,因此,容許不同場景之一靈活評估。為了達成此,自一指定低(
D
TLow )與高(
D
THigh )臨限值之間之一均勻分佈
U產生一隨機數
R。此等臨限值可在自0%至100%之範圍內。接著,R乘以微基準之執行時間之範圍且加上最小執行時間
。因此,微基準k之時限由方程式2給定:
以滿足困難度之降序評估以下時限範圍:
D
T =0-5%、
D
T =5-10%及
D
T =10-20%。
B. 模擬架構概述及驗證
擴展在S. E. Arda等人之「DS3:A System-Level Domain-Specific System-on-Chip Simulation Framework」,
IEEE Transactions on Computers,第69卷,第8號,第1248至1262頁,2020年(下文中稱為「DS3」,其揭示內容之全文以引用的方式併入本文中)中提出之系統級SoC模擬器18以併入所提出IL技術。
平台模型:為了確保高保真度,使用Odroid-XU3之效能監測單元(PMU)、電流及溫度感測器來校準模擬器18。此板容許僅在叢集層級改變頻率且不應用PG。為了使設計更靈活且探索更佳功率/效能權衡,在模擬器18中實施每核心PG技術。
基準應用:自無線通信及雷達處理域考量五個多執行緒參考應用:WiFi傳輸器(WiFi-TX)、WiFi接收器(WiFi-RX)、距離偵測(Range-Det)、單載波傳輸器(SCT)及單載波接收器(SCR)。全部此等係具有軟性RT限制之串流應用之代表性實例。
資料收集:應用之原始碼使用效能應用程式設計介面(PAPI)呼叫儀測(instrumented)以在Odroid-XU3上剖析功率、效能及硬體計數器資料。
在運行基準應用之同時,比較由模擬器18報告之執行時間、功率及溫度與一Odroid-XU3上之量測。當針對多執行緒應用掃略LITTLE及大核心頻率時,針對此三個度量,模擬器18僅具有平均2.8%、6.1%及2.4%之誤差。類似地,在掃略時,不同數目個核心分別導致平均2.7%、1.3%及3.8%之誤差。可在DS3中找到針對單及多執行緒應用及驗證資料兩者之完整評估。
C. 準確度評估
圖2係隨著DAgger針對各應用使用留一法(LOO)交叉驗證反覆地訓練政策之決策樹準確度之一圖形表示。決策樹在應用DAgger反覆時快速地學習且達成平均99.1%之準確度。第一反覆處之準確度在自11.8%至73.3%之範圍內,且藉由第四反覆,全部政策已經高於90%。緊跟著預言機,迴歸政策(層級2)達成99.7%之一R2度量。政策每一預測耗費自0.013 ms至0.617 ms,此在50至100 ms之控制曆元(epoch)內係可忽略的。同樣地,記憶體要求在自3 KB至280 KB之範圍內。
圖3係相對於頻率之總預測(
)及核心數目(
)正規化之一直方圖之一圖形表示。帶圈頻率描繪LITTLE之最大頻率(1.4 GHz)及大叢集之最大頻率(2 GHz)。各條表示叢集類型及工作負荷之一組合,即,以不同色彩描繪ILTTLE及大叢集,同時使用不同圖案描繪常規及重工作負荷。當運行一常規負荷時,
在85%之時間選取LITTLE之最大頻率(即,1.4 GHz)及大叢集之高頻率(在1.6 GHz下為65%且在2 GHz下為28%)。同時,
在多於95%之時間選取三個或更少LITTLE核心及兩個或更少大核心。此展示當工作負荷不重時,政策有效地關閉核心。針對重工作負荷,頻率主要位於0.8 GHz至1.6 GHz內,且
主要選取3及4個核心(約90%之時間),使得EDP在若干訊框被並行處理時最小化。
D. 與最先進技術之比較
針對效能、省電、按需及DyPO比較本文中描述之方法。前三個屬於Linux調節器且後續者使用機器學習以調整頻率及核心數目。評估HiLITE之兩個版本:首先,藉由僅改變叢集之頻率(HiLITE
(F) ),且第二,藉由改變頻率及核心數目兩者(HiLITE
(F-C) )。
EDP 評估:圖4A係相對於效能調節器之一正規化EDP之一圖形表示。HiLITE
(F) 分別達成常規及重工作負荷場景之2%及29%之減少。前一種情況導致更小改良,此係因為預言機頻率針對大多數執行係高的,如上文相對於圖3論述。當應用HiLITE
(F-C) 時,EDP改良針對相同運行時間場景相對於效能調節器上升至34%及43%。相較於DyPO,HiLITE
(F-C) 在常規及重工作負荷下分別達成51%及29%更低之EDP。DyPO無法有效地探索此一大設計空間,此係因為其採用邏輯迴歸,接著為k均值叢集化;又,DyPO未利用PG來進一步改良能量效率。另外,HiLITE
(F-C) 緊跟著預言機,其在預言機之標記之0.4%內(其係用於比較之上限)。
執行時間評估:圖4B係相對於效能調節器之一正規化執行時間之一圖形表示。HiLITE相對於效能模式達成低效能降級(16%至21%)。而其他基線具有顯著更高降級:省電為136%至221%、按需為5%至54%且DyPO為61%至137%。
能量消耗評估:圖4C係相對於效能調節器之一正規化能量消耗之一圖形表示。HiLITE
(F-C) 相對於在一常規及重工作負荷下之效能模式分別達成43%及52%之能量節省。
E. 即時限制下之評估
圖5係一正規化EDP及針對不同技術及時限臨限值之超過時限之百分比之一圖形表示。由於DyPO具有顯著高於HiLITE
(F-C) 之效能降級(此導致甚至更高時限超過),故HiLITE
(F-C) 被選作基線。HiLITE
(
RT)
表示啟用RT最佳化且在
DT =0至5% (即,最嚴格時限)下之HiLITE;此針對常規及重工作負荷分別將時限超過自87%減少至11%,且自88%減少至40%。歸因於多個訊框被並行處理,後一種情況中之減少更低。針對
D
T =5至10%,針對常規工作負荷(70%之時限超過減少至0%)且針對重工作負荷(52%至17%)觀察到相同趨勢。此等時限限制之進一步放鬆針對兩個工作負荷將超過時限驅向零。
針對常規工作負荷,EDP額外負載低,平均僅2%,而在一重工作負荷下,在最小化EDP與滿足時限之間存在一權衡。若確定時限之優先級,則EDP改良自43%轉變至25%,此係因為需要增加頻率以滿足時限。
此評估展示,在不使用RT資訊之情況下產生一預言機導致高數目個時限超過(接近90%)。相比之下,所提出方法將RF資訊添加至預言機產生且使用一動態迴歸政策以解決執行時間之運行時間變動。
IV.
電腦系統
圖6係根據本文中揭示之實施例之適用於使用IL實施HiLITE 10之一電腦系統600之一方塊圖。本文中描述之實施例可包含或實施為電腦系統600,其包括能夠包含韌體、硬體及/或執行可用於執行上文描述之任何方法或功能之軟體指令之任何運算或電子裝置。在此方面,電腦系統600可為包含於一電子板卡(諸如一印刷電路板(PCB))、一伺服器、一個人電腦、一桌上型電腦、一膝上型電腦、一電腦陣列、一個人數位助理(PDA)、一運算墊、一行動裝置或任何其他裝置中之一電路或若干電路且可表示(例如)一伺服器或一使用者電腦。
在此實施例中,例示性電腦系統600包含一處理裝置602或處理器、一系統記憶體604及一系統匯流排606。系統記憶體604可包含非揮發性記憶體608及揮發性記憶體610。非揮發性記憶體608可包含唯讀記憶體(ROM)、可擦除可程式化唯讀記憶體(EPROM)、電可擦除可程式化唯讀記憶體(EEPROM)及類似者。揮發性記憶體610通常包含隨機存取記憶體(RAM) (例如,動態隨機存取記憶體(DRAM),諸如同步DRAM (SDRAM))。一基本輸入/輸出系統(BIOS) 612可儲存於非揮發性記憶體608中且可包含有助於在電腦系統600內之元件之間傳送資訊之基本常式。
系統匯流排606為系統組件(包含(但不限於)系統記憶體604及處理裝置602)提供一介面。系統匯流排606可為可使用各種市售匯流排架構之任何者進一步互連至一記憶體匯流排(使用或不使用一記憶體控制器)、一周邊匯流排及/或一區域匯流排之若干類型之匯流排結構之任何者。
處理裝置602表示一或多個市售或專屬通用處理裝置,諸如一微處理器、中央處理單元(CPU)或類似者。更特定言之,處理裝置602可為一複雜指令集運算(CISC)微處理器、一精簡指令集運算(RISC)微處理器、一超長指令字(VLIW)微處理器、實施其他指令集之一處理器,或實施指令集之一組合之其他處理器。處理裝置602經組態以執行用於執行本文中論述之操作及步驟之處理邏輯指令。
在此方面,結合本文中揭示之實施例描述之各種闡釋性邏輯區塊、模組及電路可使用處理裝置602實施或執行,該處理裝置602可為一微處理器、場可程式化閘陣列(FPGA)、一數位信號處理器(DSP)、一特定應用積體電路(ASIC)或其他可程式化邏輯裝置、一離散閘或電晶體邏輯、離散硬體組件或經設計以執行本文中描述之功能之其等之任何組合。此外,處理裝置602可為一微處理器,或可為任何習知處理器、控制器、微控制器或狀態機。處理裝置602亦可實施為運算裝置之一組合(例如,一DSP及一微處理器之一組合、複數個微處理器、一或多個微處理器結合一DSP核心或任何其他此組態)。
電腦系統600可進一步包含或耦合至可表示一內部或外部硬碟機(HDD)、快閃記憶體或類似者之一非暫時性電腦可讀儲存媒體(諸如一儲存裝置614)。儲存裝置614及與電腦可讀媒體及電腦可使用媒體相關聯之其他碟機可提供資料、資料結構、電腦可執行指令及類似者之非揮發性儲存。雖然上文對電腦可讀媒體之描述係指一HDD,但應瞭解,可由一電腦讀取之其他類型之媒體(諸如光碟、盒式磁帶、快閃記憶卡、匣式磁帶及類似者)亦可用於運算環境中且此外,任何此等媒體可含有用於執行所揭示實施例之新穎方法之電腦可執行指令。
一作業系統616及任何數目個程式模組618或其他應用程式可儲存於揮發性記憶體610中,其中程式模組618表示對應於可諸如透過處理裝置602上之指令620完整或部分實施本文中描述之功能性之程式、應用程式、函數及類似者之各種各樣的電腦可執行指令。程式模組618亦可駐留在由儲存裝置614提供之儲存機構上。因而,本文中描述之功能性之全部或一部分可實施為儲存於一暫時性或非暫時性電腦可使用或電腦可讀儲存媒體(諸如儲存裝置614、揮發性記憶體610、非揮發性記憶體608、指令620及類似者)上之一電腦程式產品。電腦程式產品包含複雜程式化指令(諸如複雜電腦可讀程式碼)以引起處理裝置602實行實施本文中描述之功能所需之步驟。
一操作者(諸如使用者)亦可能夠透過一鍵盤、一指標裝置(諸如一滑鼠)或一觸敏表面(諸如顯示裝置)經由一輸入裝置介面622或透過一網頁介面、終端程式或類似者經由一通信介面624遠端地將一或多個組態命令鍵入電腦系統600。通信介面624可係有線或無線的且促進經由一通信網路以一直接或間接方式與任何數目個裝置之通信。一輸出裝置(諸如一顯示裝置)可耦合至系統匯流排606且藉由一視訊埠626驅動。至電腦系統600之額外輸入及輸出可視需要透過系統匯流排606提供以實施本文中描述之實施例。
描述在本文中之任何例示性實施例中描述之操作步驟以提供實例及論述。可以除所繪示序列之外之許多不同序列執行所述操作。此外,經描述在一單一操作步驟中之操作可實際上在數個不同步驟中執行。另外,可組合在例示性實施例中論述之一或多個操作步驟。
熟習此項技術者將認知對本發明之較佳實施例之改良及修改。考量在本文中及下文之發明申請專利範圍中揭示之概念之範疇內之全部此等改良及修改。
10:分層及輕量級模仿學習(HiLITE)
12:時限感知模仿學習(IL)政策
14:硬體計數器
16:即時(RT)時限限制
18:系統級系統單晶片(SoC)模擬器
600:電腦系統
602:處理裝置
604:系統記憶體
606:系統匯流排
608:非揮發性記憶體
610:揮發性記憶體
612:基本輸入/輸出系統(BIOS)
614:儲存裝置
616:作業系統
618:程式模組
620:指令
622:輸入裝置介面
624:通信介面
626:視訊埠
併入本說明書中且形成本說明書之一部分之隨附圖式繪示本發明之若干態樣且與描述一起用於解釋本發明之原理。
圖1係用於嵌入式系統單晶片(SoC)之電源管理的分層及輕量級模仿學習(IL) (在本文中亦稱為HiLITE)之一例示性實施例之一示意圖。
圖2係隨著DAgger針對各應用使用留一法(LOO)交叉驗證反覆地訓練政策之決策樹準確度之一圖形表示。
圖4A係相對於效能調節器之一正規化能量延遲積(EDP)之一圖形表示。
圖4B係相對於效能調節器之一正規化執行時間之一圖形表示。
圖4C係相對於效能調節器之一正規化能量消耗之一圖形表示。
圖5係一正規化EDP及針對不同技術及時限臨限值之超過時限之百分比之一圖形表示。
圖6係根據本文中揭示之實施例之適用於實施HiLITE之一電腦系統之一方塊圖。
10:分層及輕量級模仿學習(HiLITE)
12:時限感知模仿學習(IL)政策
14:硬體計數器
16:即時(RT)時限限制
18:系統級系統單晶片(SoC)模擬器
Claims (20)
- 一種用於一異質系統單晶片(SoC)中之分層電源管理之方法,該方法包括: 獲得複數個應用任務以供該異質SoC執行; 獲得用於在該複數個應用任務之執行期間減小一能量延遲積之模仿學習(IL)政策;及 在一第一層級應用該等IL政策以預測用於執行該複數個應用任務之電源要求。
- 如請求項1之方法,其中該複數個應用任務包括待藉由該異質SoC在運行時間期間多任務化之複數個異質任務。
- 如請求項1之方法,其中: 該複數個應用任務具有至少一個執行時限;且 在該第一層級應用該等IL政策包括根據該至少一個執行時限應用該等IL政策。
- 如請求項3之方法,其進一步包括在運行時間期間在一第二層級動態地調整該複數個應用任務之一或多者之執行時間以滿足該至少一個執行時限。
- 如請求項1之方法,其中在該第一層級應用該等IL政策以預測該等電源要求包括預測用於根據執行時限執行該複數個應用任務之一頻率及處理元件之數目。
- 如請求項5之方法,其中在該第一層級應用該等IL政策包括針對該異質SoC產生一處理排程。
- 如請求項6之方法,其進一步包括在運行時間期間在一第二層級動態地調整該異質SoC之該處理排程以滿足該等執行時限。
- 如請求項1之方法,其中獲得該等IL政策包括使用監督式機器學習離線訓練該等IL政策。
- 如請求項8之方法,其中獲得該等IL政策進一步包括: 建構一動態預言機;及 使用該動態預言機訓練該等IL政策。
- 如請求項9之方法,其中獲得該等IL政策進一步包括使用該異質SoC之一模擬產生用於該等IL政策之訓練資料。
- 一種動態電源管理(DPM)架構,其包括: 一異質系統單晶片(SoC)模擬器,其經組態以模擬一異質SoC對複數個應用任務之執行;及 一電源管理器,其經組態以在該複數個任務之執行期間將基於模仿學習(IL)之電源政策應用至該異質SoC,該電源管理器包括: 一第一層級,其經組態以基於預測用於實施該等基於IL之電源政策之電源要求作出處理電源決策;及 一第二層級,其經組態以在運行時間期間調整該等第一層級處理電源決策。
- 如請求項11之DPM架構,其進一步包括經組態以使用該異質SoC模擬器訓練該電源管理器之該等基於IL之電源政策之一預言機。
- 如請求項12之DPM架構,其中該預言機經組態以訓練該電源管理器之該等基於IL之電源政策以減小該異質SoC模擬器之延遲、能量或能量延遲積(EDP)之一或多者。
- 如請求項11之DPM架構,其中該電源管理器之該第一層級預測用於執行該複數個應用任務之一頻率及處理元件之數目。
- 如請求項14之DPM架構,其中該等第一層級處理電源決策包括用於基於用於執行該複數個應用任務之該經預測頻率及處理元件之數目調整處理元件頻率之一排程。
- 如請求項15之DPM架構,其中該第二層級進一步經組態以預測執行時間且根據該異質SoC之即時條件動態地調整該等第一層級處理電源決策。
- 如請求項16之DPM架構,其中: 該複數個應用任務具有至少一個執行時限; 由該第一層級產生之該排程經預測以滿足該至少一個執行時限;且 該第二層級動態地調整該等第一層級處理電源決策以即時滿足該至少一個執行時限。
- 如請求項11之DPM架構,其中該電源管理器之該第一層級係使用包括一決策樹、一迴歸樹或一神經網路之一或多者之監督式機器學習訓練。
- 如請求項18之DPM架構,其中該電源管理器之該第二層級係使用包括一決策樹、一迴歸樹或一神經網路之一或多者之監督式機器學習訓練。
- 如請求項11之DPM架構,其中該異質SoC包括一或多個通用處理器叢集及一或多個硬體加速器叢集。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063104269P | 2020-10-22 | 2020-10-22 | |
US63/104,269 | 2020-10-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202236053A true TW202236053A (zh) | 2022-09-16 |
Family
ID=81290110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110139397A TW202236053A (zh) | 2020-10-22 | 2021-10-22 | Hilite﹔用於嵌入式系統單晶片(soc)之電源管理的分層及輕量級模仿學習 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230393637A1 (zh) |
DE (1) | DE212021000491U1 (zh) |
TW (1) | TW202236053A (zh) |
WO (1) | WO2022087428A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8286014B2 (en) * | 2008-03-25 | 2012-10-09 | Intel Corporation | Power management for a system on a chip (SoC) |
US10146286B2 (en) * | 2016-01-14 | 2018-12-04 | Intel Corporation | Dynamically updating a power management policy of a processor |
US11269656B2 (en) * | 2017-11-30 | 2022-03-08 | Samsung Electronics Co., Ltd. | Method and device for setting operating system |
US10853147B2 (en) * | 2018-02-20 | 2020-12-01 | Microsoft Technology Licensing, Llc | Dynamic processor power management |
-
2021
- 2021-10-22 TW TW110139397A patent/TW202236053A/zh unknown
- 2021-10-22 US US18/249,876 patent/US20230393637A1/en active Pending
- 2021-10-22 WO PCT/US2021/056275 patent/WO2022087428A1/en active Application Filing
- 2021-10-22 DE DE212021000491.1U patent/DE212021000491U1/de active Active
Also Published As
Publication number | Publication date |
---|---|
DE212021000491U1 (de) | 2023-08-25 |
WO2022087428A1 (en) | 2022-04-28 |
US20230393637A1 (en) | 2023-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11429181B2 (en) | Techniques for self-tuning of computing systems | |
Gupta et al. | Dypo: Dynamic pareto-optimal configuration selection for heterogeneous mpsocs | |
US7814485B2 (en) | System and method for adaptive power management based on processor utilization and cache misses | |
US7346787B2 (en) | System and method for adaptive power management | |
US10725524B2 (en) | Method and systems for energy efficiency and energy conservation including on-off keying for power control | |
US7716006B2 (en) | Workload scheduling in multi-core processors | |
Rajamani et al. | Application-aware power management | |
US8230249B2 (en) | Dynamic selection of server states for servers in a cluster of servers | |
Lin et al. | A taxonomy and survey of power models and power modeling for cloud servers | |
GB2539748A (en) | Configuring power management functionality in a processor | |
Sartor et al. | HiLITE: Hierarchical and lightweight imitation learning for power management of embedded SoCs | |
Bertran et al. | Counter-based power modeling methods: Top-down vs. bottom-up | |
US10423201B2 (en) | Method and apparatus for demand estimation for energy management of client systems | |
Hou et al. | ANT-Man: Towards agile power management in the microservice era | |
US7925873B2 (en) | Method and apparatus for controlling operating parameters in a computer system | |
Dong et al. | Lazy scheduling based disk energy optimization method | |
TW202236053A (zh) | Hilite﹔用於嵌入式系統單晶片(soc)之電源管理的分層及輕量級模仿學習 | |
CN110618861A (zh) | 一种Hadoop集群节能系统 | |
Hajiamini et al. | Impact of cache voltage scaling on energy-time pareto frontier in multicore systems | |
Jia et al. | RAEF: Energy-efficient resource allocation through energy fungibility in serverless | |
Katsaragakis et al. | Adjacent LSTM-Based Page Scheduling for Hybrid DRAM/NVM Memory Systems | |
CN106708238B (zh) | 一种针对存在大量迭代的高性能计算应用的能耗管理方法 | |
Liu et al. | Fast power and energy management for future many-core systems | |
Zhang et al. | Cross-architecture prediction based scheduling for energy efficient execution on single-ISA heterogeneous chip-multiprocessors | |
Roba et al. | An enhanced approach to dynamic power management for the Linux cpuidle subsystem |