摘要:提出一種基于活躍態(tài)的動態(tài)電源管理預測算法,充分利用了活躍態(tài)和空閑時間段的關系,并且加入動態(tài)自適應調節(jié)因子,不僅對較大變化的時間段預測誤差小,而且能快速調整適應工作負載的變化。實驗表明該算法優(yōu)于傳統(tǒng)算法。
關鍵詞:動態(tài)電源管理; 預測算法; 超時算法; 節(jié)能
中圖分類號:TP301.6文獻標志碼:A
文章編號:1001-3695(2007)07-0058-03
0引言
隨著多媒體技術和Internet的迅猛發(fā)展,采用電池供電的數碼掌上設備和無線設備越來越普及。如何使用有限的能量滿足盡可能多的應用需求,也即節(jié)能技術,成為嵌入式設計人員的重要目標。要實現節(jié)能,首先要研究和設計低功耗的硬件電路[1]。然而僅使用低功耗的硬件是不夠的,還必須從軟件層次來進行管理。當系統(tǒng)中運行的任務需要連續(xù)使用設備但又不需要最大性能運行時,可以通過調節(jié)電壓或頻率來達到節(jié)能的目的,稱為動態(tài)電壓調節(jié)(DVS)[2]。另一種節(jié)能技術是在設備空閑時把設備置為低功耗狀態(tài)或者直接關閉,當有請求到來時再置為運行狀態(tài),稱為動態(tài)電源管理(DPM)[3]。
2預測算法設計
2.1問題的提出
文獻[7]中提出的預測算法雖然能根據負載自動調整,但是也存在以下問題:
(1)式(2)中的a值是常量,需要根據實驗結果手工調整;負載變化大時可能對應的a值不同。
3實驗及數據分析
該實驗所采用的平臺是FreeScale M5275EVB開發(fā)板和嵌入式操作系統(tǒng)eCos,修改了其中的網卡驅動以進行檢測空閑狀態(tài)和實現算法。實驗中并不直接關閉網絡芯片,而是模擬關閉,對預測得到的值進行分析計算,并對幾種常見算法進行比較。在實驗中,取m=1.5,k=0.99。
本文采用了以下幾種度量方法:
(1)誤差率(Error Ratio)
(2)命中率(Hit Ratio)
定義命中為兩種情況:①不該關閉時沒有關閉;②應該關閉時關閉了。其余的情況屬于沒有命中。基于超時算法的真實空閑時間段從TW后開始算起。應該關閉的情況是指真實值大于TBE,關閉才會節(jié)省能量;否則不僅能耗比正常運行時的高,還會帶來性能下降。所以命中只表示沒有浪費能量,并不一定能節(jié)省能量。
(3)節(jié)省的能量(Energy Saving)
該實驗只是模擬實驗,沒有實施具體的硬件關閉操作,所以能耗是通過計算得出的。計算方法是處于關閉狀態(tài)的時間減去TBE。如果在真實空閑時間段小于TBE而被錯誤地關閉的話,得到的將是負值,表示有能量的浪費。計算每次關閉所節(jié)省的能量,累加得到節(jié)省的總能量。為了方便對比,把得到的值以該算法為基準進行標準化。
在實驗中,使用以上三種度量方法比較了超時檢測法Karlin[8]、預測算法Hwang[7]和本文算法APB。超時法不存在誤差率的概念,沒有進行對比。
圖3是Hwang[7]算法和本文算法的誤差率曲線。可以看出,空閑時間段22~83跳變以及30~10跳變時,Hwang算法產生了較大的誤差;由于以活躍態(tài)作參考,本文算法在一定程度上降低了誤差率。總體看來,本文算法的誤差率比Hwang算法更加平穩(wěn)。表1是三種算法平均誤差率、命中率和節(jié)省能量的對比。從表中可以看出,本文算法并沒有顯著地提高命中率,這主要與TBE大小有關。由于提高了預測準確率,節(jié)省了更多的能量。
4結束語
傳統(tǒng)的動態(tài)電源管理預測算法由于沒有考慮到活躍態(tài)對
空閑時間段的影響,對有較大變化的空閑時間段預測的誤差較大,而且工作負載變化時調整得比較緩慢。
本文所提出的算法利用了活躍態(tài)與空閑態(tài)的關系,根據活躍態(tài)預測即將到來的空閑時間段,從一定程度上降低了誤差率;引入了動態(tài)自適應因子a,在負載變化時可以迅速地調節(jié)到一個合理的范圍。由于本算法的特點,m值是固定的,也就是最大調節(jié)幅度固定,對突然到來的短時間空閑時間段預測比較準確,而對長時間空閑時間段的預測準確度不夠。這是該算法有待改進的地方。
參考文獻:
[1]DEVADAS S, MALIK S. A survey of optimization techniques targeting low power VLSI circuits: proc.of the 32nd Design Automation Conf[C].[S.l.]:[s.n.], 1995:242-247.
[2]JEJURIKAR R, PEREIRA C, GUPTA R. Leakage aware dynamic voltage scaling for real-time embedded systems: proc.of the Design and Automation Conf(DAC 2004)[C].[S.l.]:[s.n.], 2004:275-280.
[3]BENINI L, BOGLIOLO A, MICHELI G D. A survey of design techniques for system-level dynamic power management[J]. IEEE Transactions on VLSI Systems, 2000,8(3):299-315.
[4]GOLDING R, BOSH P, WILKES J. Idleness is not sloth: proc.of the Winter SENIX Technical Conf[C].[S.l.]:[s.n.], 1995:201-212.
[5]SRIVASTAVA M B, CHANDRAKASAN A P, BRODERSON R W. Predictive system shutdown and other architectural techniques for energy efficient programmable computation[J]. IEEE Trans on VLSI Systems, 1996,4(1):24-54.
[6]LU Y H, BENINI L, MICHELI G D.Operating-system directed power reduction: proc. of the International Symposium on Low Power Electronics and Design[C].[S.l.]: Stanford University, 2000:37-42.
[7]HWANG C H, WU A C. A predictive system shutdown method for energy saving of event-driven computation: proc.of the International Conference on Computer-Aided Design[C].[S.l.]:[s.n.], 1997:28-32.
[8]KARLIN A, MANASSE M, McGEOCHL, et al. Competitive radomized algorithms for nonuniform problems[J]. Algorithmica, 1994,11(6):542-571.
[9]DOUGLIS F, KRISHNAN P, BERSHAD B. Adaptive disk spin-down technique for mobile computing: proc.of the 2nd USENIX Symp Mobile and Location-Independent Computing[C].[S.l.]:[s.n.], 1995:121-137.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文”