?

基于ConvLSTM 的移動邊緣計算服務器能耗模型

2024-02-18 13:46李小龍楊凌峰
應用科學學報 2024年1期
關鍵詞:密集型內存數據中心

李小龍,李 曦,楊凌峰,黃 華

1.湖南工商大學計算機學院,湖南 長沙 410205

2.湖南工商大學前沿交叉學院,湖南 長沙 410205

隨著智能交通[1]、智能醫療[2]、人工智能[3]和虛擬現實[4]等數字產業的進一步發展,計算能力的需求也在不斷增加。作為信息產業的支柱,邊緣數據中心的數量不斷擴大。最新研究[5-6]表明,數據中心的能源需求預計將從2014 年全球總電力消耗的1%增加到2025 年的3%。數據中心頻繁產生大量冗余服務,用來維護服務的穩定性和可靠性。然而,服務器的使用具有周期性,這會導致大量資源的浪費[7]。節約數據中心能耗[8-10]不僅可以節約資源和降低數據中心成本,還有助于減少二氧化碳排放。在數據中心的能源消耗中,約52% 用于提供IT設備,38% 用于提供支持IT 設備的冷卻系統[11]。冷卻系統和支持設施的能源消耗易于管理,而IT 設備的能源消耗占比最多,且隨著運行條件的變化而變化。對數據中心的能源消耗進行有效監測和預測可以提高資源利用率和服務質量,節省系統資源。實時的數據中心能耗建??梢詾楣澞軆灮惴ㄌ峁┲笇Ш鸵罁?。

建立一種能夠實時準確預測服務器能耗的模型有助于提前了解服務器狀態,這對于優化服務器能耗至關重要[12-13]。目前,開發服務器能耗模型的方法主要分為兩類:基于資源利用率的建模方法[14-17]和基于性能監測計數器的建模方法[18-25]。

基于資源利用率的能耗模型主要是利用服務器組件(如CPU 和內存)的利用率來構建的。文獻[14] 提出了一種邊緣服務器的能耗模型,指出服務器的總能耗由處理器、內存、磁盤等組件的能耗組成。CPU 的能耗模型根據處理器的不同狀態建立。文獻[15] 認為能耗模型可以通過提取處理器、內存、磁盤等組件的主要參數來構建。文獻[16] 提出了一種基于基本功率和有功功率確定能耗的預測方法,通過云監測計算獲得有功功率,通過硬件測量獲得基本功率。實驗結果表明,該方法在CPU 測試中的平均誤差率為4.22%。文獻[17] 提出了虛擬機遷移算法,使虛擬機從主機服務器遷移到客戶服務器,降低服務器的總能耗。以上網絡的優點是簡單方便且易于實現。然而,這些網絡僅考慮了服務器的少數參數,缺乏對服務器整體狀況的考慮。

近年來,一些學者使用神經網絡進行邊緣服務器能耗建模和定量評估,因為神經網絡可以在復雜條件下提取數據特征,并具有非線性擬合的優勢[18-19]。文獻[20] 提出了使用長短期記憶循環神經網絡(long short-term memory recurrent neural network,LSTM-RNN)模型進行電力生產預測的方法,對光伏電站的發電量進行建模,取得了良好的效果。文獻[21] 提出了結合特征選擇和神經網絡構建能耗模型的方法,將服務器的日常工作模式劃分為CPU 密集型、I/O 密集型和WEB 密集型,并通過構建這3 種場景的網絡模型驗證了模型的有效性。文獻[22] 驗證了使用反向傳播(back propagation,BP)神經網絡、Elman 神經網絡和長短期記憶神經網絡構建的模型在CPU 密集型、內存密集型、I/O 密集型和混合任務類型的工作負載下比多元線性回歸和支持向量回歸具有更好的性能。文獻[23] 提出了一種基于Elman 神經網絡的服務器能耗預測模型,可以根據服務器運行過程中的參數預測服務器的能耗。文獻[24]使用改進和優化的BP 神經網絡對目標用戶信用體系進行預測,以完成能源管理系統的現代化改造。文獻[25] 基于神經網絡和參數選擇構建了一種新型的能耗模型,實驗結果表明,該模型具有良好的性能。文獻[26] 提出基于支持向量機的實時能耗預測方法,可以有效處理工作負載類型的變化,在CPU 密集型、WEB 密集型和I/O 密集型任務上對所提出的模型進行了廣泛而全面的評估。

為了有效地測量和評估數據中心的能耗,傳統方法使用傳感器和其他硬件來監測能耗,但由于可擴展性差且成本高,難以應用于異構數據中心[27-28]?;谲浖谋O測系統由于經濟高效和易于擴展的特點,適用于數據中心復雜的設備環境[29]。本文使用軟件收集相關參數,并基于卷積長短期記憶(convolutional long short-term memory,ConvLSTM)神經網絡構建服務器能耗模型。具體的工作如下:

1)基于服務器狀態建立了一種細粒度的功率模型。與其他僅考慮單一任務狀態的功率模型不同,本文考慮了4 種類型,即CPU 密集型、I/O 密集型、內存密集型和混合型。

2)利用熵值法[30]篩選對服務器能耗影響更大的參數,并將其用于后續的能耗建模。

3)利用ConvLSTM 神經網絡,提出了一種用于移動邊緣計算的服務器智能能耗模型(intelligence server energy consumption model,IECM)。實驗結果證實了該模型的準確性和有效性。

1 相關工作

1.1 熵值法

特征數據的選擇有多種方式,熵值法是一種客觀的權重方法,它根據指標觀測值所提供的信息來確定指標的權重。該方法可以用于確定參數的權重,消除一些主觀因素的干擾,使結果更加科學和合理。使用熵值法進行綜合評估的步驟如下:

步驟1初始值歸一化

正向指標為

負向指標為

步驟2計算第j個指標中第i個指標的占比

每個評價指標的熵值可以定義為

式中:k=1/lnm,m為評價對象的數量。如果Yij=0,則排除指標j的評價對象i。

步驟3計算熵的冗余度,其公式為

步驟4計算每個評價指標的權重,其公式為

1.2 LSTM

LSTM 是為解決循環神經網絡(recurrent neural network,RNN)長期依賴問題及其可能帶來梯度消失和爆炸問題而提出的。LSTM 通過輸入門、輸出門和遺忘門這3 個關鍵門單元實現數據傳輸和處理,旨在保護和控制信息的流動。LSTM 的計算公式為

式中:it、ft和ht分別為輸入門、遺忘門和輸出門;Wi和bi分別為輸入門的權重和偏差;Wf和bf分別為遺忘門的權重和偏差;Wo和bo對應于輸出門的權重和偏差;xt、ht-1和ct-1分別表示LSTM 網絡中當前單元的輸入、上一個單元的輸出和狀態,運算符“?”表示Hadamard乘積,σ表示非線性激活函數。

1.3 ConvLSTM

本文使用的ConvLSTM 神經網絡與LSTM 具有相同的結構,計算公式為

式中:Xt表示當前單元的輸入;Ct-1和Ht-1分別對應于上一個單元的狀態和輸出;“*”為卷積運算;W表示核為k*k的2D 卷積濾波器;k為卷積核的大小。Wi、bi、Wf、bf、Wo和bo的定義與LSTM 的計算公式類似,但數據維度和處理方法不同。

2 IECM-服務器能耗模型

本部分介紹建立基于ConvLSTM 的服務器能耗模型的過程,包括數據收集、數據分析、特征參數選擇、神經網絡構建和模型評估。

2.1 能耗建模步驟

服務器能耗建模的過程如圖1 所示,包括以下5 個步驟:

圖1 能耗建模過程Figure 1 Process of energy consumption modeling

步驟1在移動邊緣計算服務器上安裝監控軟件,用于實時監測服務器硬件和軟件,以獲取運行時間數據,此步驟稱為數據收集;

步驟2在特征提取階段,將所需的監測項目保存在監控軟件中,并用作后續步驟中的特征參數;

步驟3在特征選擇階段,使用特征選擇算法獲取特征參數的權重,對于權重極小的參數,若其對結果影響較小,則丟棄,以提高模型準確性;

步驟4在模型建立階段,使用ConvLSTM 來建立移動邊緣計算服務器的能耗模型;

步驟5在模型評估階段,將服務器工作負載分為CPU 密集型、I/O 密集型、內存密集型和混合型4 種場景,使用建立的模型與其他模型在4 種不同場景下進行比較。

2.2 數據采樣過程

為了獲取目標服務器的特征數據需要在服務器上設置監測項目。傳統的監測項目需要安裝硬件監測設備以獲取相關參數,這種方法過程復雜、條件受限且代價昂貴。

本文采用軟件監測來獲取必要的參數。常用的監測軟件有Zabbix1、Ganglia2 和Nagios3。Zabbix 支持自定義監測,但在需要傳輸大量數據時可能會有延遲現象。Ganglia 易于后期大規模擴展,但其沒有內置消息系統和告警機制。Nagios 的基礎功能較為簡單,其監測能力主要由插件提供,需要安裝和配置插件拓展功能?;诖?,本文選擇了具備內置消息系統和警報功能的Zabbix 與支持大規模部署的Ganglia 兩個軟件進行組合監測,由Zabbix 監測各種系統和應用程序,Ganglia 監測集群中各個節點的狀態和性能,以獲取全面且完整的監測數據。

2.3 特征數據選擇

2.3.1 數據獲取

大量的數據不但會增加模型資源開銷,而且也會降低模型的準確性。此本文使用熵值法來獲取特征選擇的參數。在特征選擇過程中,如果權重極小,則表示該值對結果影響很小,可以將其移除,以降低服務器負載,提高模型準確性。與其他僅考慮單一任務狀態的功率模型不同,本文實驗包括的4 種類型(CPU 密集型、I/O 密集型、內存密集型和混合型)涵蓋了不同的任務特性和資源需求,能更準確地體現系統在各種場景下的功率消耗情況。實驗過程中,將權重低于0.001 的參數丟棄。

本文的實驗硬件環境如表1 所示,測試數據集如表2 所示。CPUGrab-Ex 和Mem Test64是常用的服務器CPU 和內存壓力測試軟件。IOzone 是一個文件系統測試工具,用于測試不同操作系統下系統的讀寫性能。PCMARK10 中包含了現代工作場所中各種任務的綜合測試項目集。表3 列出了所有選定的參數。

表1 實驗環境Table 1 Experimental environment

表2 測試數據集Table 2 Data set for the test

表3 參數解釋Table 3 Parameters explanation

2.3.2 數據分析

獲取相關實驗數據后,通過熵值法進行特征分析和選擇。雖然每個實驗的特征數據不同,但大多數特征參數都有一定的規律。

表4 顯示了4 個實驗中權重值前10 的特征參數。在實驗中,CPU 利用率和內存利用率表示CPU 和內存的狀態,磁盤讀寫速率表示磁盤的工作狀態。

表4 4 種類型工作負載下權重排列前10 的參數Table 4 Parameters of the top ten weights in the four types of workloads

圖2 展示了在CPU 密集型負載下3 個主要特征參數和能耗值的趨勢。圖3 展示了在I/O密集型負載下3 個主要特征參數和能耗值的趨勢。圖4 展示了在內存密集型負載下3 個主要特征參數和能耗值的趨勢。圖5 展示了在混合型負載下3 個主要特征參數和能耗值的趨勢。

圖2 CPU 密集型負載下每個組件的參數值Figure 2 Parameter values of each component under CPU-intensive load

圖3 I/O 密集型負載下每個組件的參數值Figure 3 Parameter values of each component under I/O-intensive load

圖4 內存密集型負載下每個組件的參數值Figure 4 Parameter values of each component under memory intensive load

圖5 混合負載下每個組件的參數值Figure 5 Parameter values of each component under hybrid intensive load

從圖2~5 可以看出,服務器的能耗、CPU、內存和磁盤利用率隨著負載的波動而變化。然而,這些變化并不滿足特定的關系。為了更好地預測和量化服務器的能耗,考慮到ConvLSTM神經網絡具有良好的非線性擬合特性[31],選擇ConvLSTM 神經網絡來對服務器的能耗進行建模。

2.4 IECM 模型

IECM 模型旨在基于LSTM 的數據集中添加學習空間信息的功能。該模型將LSTM 單元中狀態與狀態之間的矩陣乘法替換為卷積運算,使算法能夠處理時空數據,并使用來自本地鄰居和先前狀態的輸入來確定網格中特定單元的未來狀態。ConvLSTM 的內部結構和模型圖如圖6 和7 所示。

圖6 ConvLSTM 的內部結構圖Figure 6 Internal structure diagram of ConvLSTM

圖7 ConvLSTM 的模型圖Figure 7 Model diagram of ConvLSTM

3 實驗結果與分析

3.1 實驗環境

本文實驗在CPU 密集型、I/O 密集型、內存密集型和混合型負載下進行。監測軟件每秒記錄1 次數據,共獲得40 個服務器數據項。實驗首先使用熵值法計算每個特征數據的權重,并排除一些權重較小的數據;其次對數據進行歸一化處理;然后按比例將數據分為訓練集和測試集;再使用Python 中Keras 庫的ConvLSTM2D 包構建神經網絡模型;最后,使用測試集評估模型并驗證其性能。為了更好地評估IECM 模型的性能,本文將其與BP[32]、LSTM[33]和多層感知機(multilayer perceptron,MLP)模型[34]進行比較。

3.2 實驗結果

為驗證提出模型IECM 的優勢,圖8~11 展示了4 種環境下每個神經網絡模型預測值和實際值??梢姡篊PU 密集型任務的服務器能耗最高,因為處理器消耗的能量比內存和I/O 組件多;BP 和LSTM 模型主要提取數據的時空特征,預測性能相對理想;MLP 模型的準確性處于中等水平,其深度學習速度較慢,容易陷入局部最優。IECM 模型整合了時間性和空間性,在4 個實驗中比其他3 個模型的性能效果更佳。此外,IECM 模型采用熵值法選擇了更多的參數,提高了模型的準確性。

圖8 在CPU 密集型工作負載下4 種算法的能耗比較Figure 8 Energy consumption comparison of the four algorithms under the CPU-intensive workload

圖9 在I/O 密集型工作負載下4 種算法的能耗比較Figure 9 Energy consumption comparison of the four algorithms under the I/Ointensive workload

圖10 在內存密集型工作負載下4 種算法的能耗比較Figure 10 Energy consumption comparison of the four algorithms under the memory-intensive workload

圖11 在混合工作負載下4 種算法的能耗比較Figure 11 Energy consumption comparison of the four algorithms under the hybrid workload

通過4 個實驗的比較,在混合型實驗中每個網絡的表現都不如其他3 個網絡,因為混合型實驗具有更多的變量,更難預測。

圖12 和13 展示了4 種模型(BP,LSTM,MLP 和IECM)在不同負載下的平均絕對誤差(mean absolute error,MAE)和平均相對誤差(mean relative error,MRE)。如圖12 所示,IECM 在4 個實驗環境中的MAE 值分別為0.72、0.76、0.92 和1.50,MAE 方面IECM 優于其他3 個能耗模型。如圖13 所示,IECM 在4 個實驗環境中的MRE 率分別為0.69%、1.33%、1.41% 和0.03%,與其他3 個能耗模型相比IECM 更好。BP 模型主要用于提取數據的空間特征,而LSTM 主要用于提取數據的時間特征。在CPU 密集型條件下,BP 模型的效果與LSTM 相似。然而,在I/O 密集型和內存密集型工作負載下,BP 模型的效果明顯優于LSTM。MLP 模型由于其學習速度慢、容易陷入局部最優而處于中等水平。IECM 模型采用熵值法且選擇了更多的參數,整合了時間性和空間性以提高模型的準確性和魯棒性。

圖12 MAE 比較Figure 12 Comparison of MAE

圖13 MRE 比較Figure 13 Comparison of MRE

4 結語

本文針對現有能耗模型對動態工作負載波動的低敏感性和低精度問題,提出了一種基于ConvLSTM 神經網絡的移動邊緣計算服務器能耗模型,有效評估和量化邊緣數據中心服務器的能耗。該模型使用熵值法篩選影響服務器能耗的參數,以此消除主觀因素的干擾,提高結果的合理性和科學性。針對服務器工作負載動態變化的問題,利用熵值法選定的參數使用ConvLSTM 神經網絡訓練和構建準確的功率模型。在CPU 密集型、I/O 密集型、內存密集型和混合型4 個數據集上的實驗結果表明:IECM 具有高精度和良好的魯棒性?;诒疚墓ぷ?,未來的研究點在于實時監測和控制服務器能耗,以提高服務器性能和效率為目標,構建準確、穩定的多目標模型,在此基礎上擴充多種硬件環境下的對比實驗,使模型的建立更加全面科學。

猜你喜歡
密集型內存數據中心
酒泉云計算大數據中心
外部高速緩存與非易失內存結合的混合內存體系結構特性評測
壓痛點密集型銀質針溫針灸治療肱骨外上髁炎的臨床觀察
“春夏秋冬”的內存
密集型快速冷卻技術在熱軋帶鋼生產線的應用
民航綠色云數據中心PUE控制
密集型自動化立體倉庫解析
知識密集型組織的商業模式創新策略——以網絡教育組織為例
基于云計算的交通運輸數據中心實現與應用
Overlay Network技術在云計算數據中心中的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合