羅 超 ,彭玉濤 ,彭 碩
(1井岡山大學網絡信息中心 江西 吉安 343009)
(2井岡山大學電子與信息工程學院 江西 吉安 343009)
基于云計算的多CPU能效和度量的改進
羅 超1,彭玉濤1,彭 碩2
(1井岡山大學網絡信息中心 江西 吉安 343009)
(2井岡山大學電子與信息工程學院 江西 吉安 343009)
提出一種云計算環(huán)境下得到能效輸出的最大值的必要條件;從簡化能效計算步驟提高計算效率出發(fā),對計算機功率和CPU工作頻率狀態(tài)間關系的數學表達進行了改進,通過CPU高發(fā)率和頻率來計算云環(huán)境下能效,達到簡化能效測量步驟的目的,從而能夠對云系統(tǒng)的能效進行高效準確的評估,并為云環(huán)境下的多CPU能效測量和優(yōu)化工作奠定扎實的基礎。
云計算;CPU架構;能效度量
云計算本身非常缺乏或者是根本沒有對降低能耗的專門方案和設計,現有研究中只有對軟件性能進行評價的模型,且一般有兩個指標進行關聯(lián),而本文擬確立的模型將從運算和能耗這兩個角度來衡量軟件的性能;建立了有效的能效評估模型,對云計算的能量消耗就可以更準確、有效地評估能耗,從而進一步控制成本,最終為能耗評價研究領域提供有效的方法和技術[1]。
云計算的運行功率無法在系統(tǒng)中所有節(jié)點中大量存在,而無法適應的節(jié)點又會讓過多的系統(tǒng)能源產生更多無謂消耗。同時,復雜的節(jié)點設計方案又會導致不能對所有階段進行硬件安裝和軟件測量,實際功耗的測量就無法進行。如果測量結果誤差過大,模型輸出結果會有更大誤差,同時系統(tǒng)間的數據和時鐘同步同樣是需要解決的一個難題。
本文嘗試提出一中計算測量能效的模型,通過對云系統(tǒng)中各個階段進行測量后,輸入CPU工作狀態(tài),建立一個云計算系統(tǒng)的能效消耗的規(guī)律,通過編程模型的建立,對云系統(tǒng)運算時產生的CPU集成型歸納總結出云系統(tǒng)運行時的能耗規(guī)律,最后得出了能效模型和測量方法是有效且可行的。
通常用每秒所執(zhí)行的浮點運算次數(簡稱FLOPS)來描述計算機的標準執(zhí)行效率,單字長定點指令平均執(zhí)行速度用來描述單位時間內CPU的執(zhí)行速度,瓦特來描述電路元器件在單位時間內發(fā)出或者吸收的電能。因此,一般用FLOPS/Watt來描述單位時間內電路系統(tǒng)消耗的能效,它標書一定時間內的能耗浮點運算次數[2,3]。
用T時間內系統(tǒng)處理的任務L(T)(單位U)和能耗E(T)(單位焦耳)分別替換FLOPS和Watt,我們定義T時刻內能效(T)為
運行中的計算機云計算系統(tǒng)時,硬件所消耗的功率是不變即時額定的,中央處理器的頻率同樣是不變即額定的,當中央處理器以最大的功率進行滿負荷運行,那么可以認為計算機云系統(tǒng)運行時能效消耗的理論值為系統(tǒng)的額定功率和中央處理器主頻的相除比值。但是在實際的運行過程中,中央處理器的全額運行功率和使用率很大程度上取決于系統(tǒng)全速運行時的算法規(guī)則,計算系統(tǒng)的能量動態(tài)發(fā)生調整時,中央處理器的主頻也會實時變化。因此,云計算實際的消耗值需要根據實際運行的測量值來計算[5]。
能效測量分測量L(T)和測量E(T)。由公式(2)可知,對fc(t)上積分得到L(T)。f(t)任務量大小和操作系統(tǒng)的Scaling算法。CPU可以工作在5種模式下。而ωc(t)取決于算法本身,密集型算法時CPU的使用率會接近100%;而執(zhí)行I/O密集型算法時,CPU由于要等候I/O,因此使用率較低。所以,fc(t)和ωc(t)的函數表達無法準確找到,但L(T)可以由測量后得出結果。
如果Δt足夠小,公式(5)的結果就是L(T)的值。其中,f(Δt.j)和ω(Δt.j)都能夠通過監(jiān)控代理測量獲得。有規(guī)律的采集CPU頻率及使用率。最后匯總運算節(jié)點的測量值,可得到云系統(tǒng)的負載。
測量方法有多種。但所有的方法都需要計算機云計算系統(tǒng)的輸入輸出功率是額定的,但在實際使用時,輸出和輸入的功率卻是隨著使用頻率實時動態(tài)調整的,在公式計算式,每隔一段時間就可以對計算機系統(tǒng)的節(jié)點整理出一次正在運行的功率的采集,如公式(5)。
當輸出結果小于某一個閾值時,公式(6)的值就是計算機云計算系統(tǒng)需要得到的值。但是在實際使用當中,許多硬件設備和軟件系統(tǒng)并沒有對實時功率的測量提供必要的接口,這就加大了測量的難度??煽紤]為云系統(tǒng)內的所有網絡計算機節(jié)點都安裝功率檢測測量器,但是這樣的話就需要大量的傳感器布置,成本太高,且難以做到數據實時同步和匯總,解決方案也較為復雜。那么可以利用以下公式(7)~公式(9)來進行計算獲?。?/p>
由前面內容介紹的測量方法可以測得輸入閾值和輸出的閾值)的值,同時可以得出單位時間內系統(tǒng)運行的額定功率消耗能量和效能。
在獨立的節(jié)點運行環(huán)境中,硬件和軟件的運行都可以采用強制性單線程執(zhí)行休眠,并定時喚醒的方法,中央處理器可以在額定功率下按照按照正弦曲線規(guī)律進行波動運行,最終,得到計算機云系統(tǒng)子節(jié)點輸出大量值域連續(xù)的模型輸出值,這些輸出值可以用來測量計算機云系統(tǒng)每個子節(jié)點的運行總功率。
接下來,系統(tǒng)測量可以采用圓周率蒙特卡羅算法[24]務,該算法在對系統(tǒng)效率曲線進行計算有很大的優(yōu)勢。使用時,首先調整改算法在線程數目上的初始設置,我們以中央處理器的初始使用功率來設置,圖1展示了在實驗條件下實時能效的計算結果??梢钥闯觯瑹o論中央處理器在何種頻率下運行工作,能效發(fā)生的峰值始終發(fā)生在特定的時刻,這與理論推導是相吻合。
圖1 不同頻率下 CPU 使用率和實時能效之間的關系
由實驗結果可得出以下結論:
(1)對于運算節(jié)點,CPU在高頻使用時WordCount最多,Sort次之,MRBench最少,
(2)實驗中某一節(jié)點在調度室可以同時對其他節(jié)點進行影響,并在空閑節(jié)點對計算機云系統(tǒng)的整體能效發(fā)生重要作用。
(3)CPU使用率和頻率是正向傾斜居多。結合前文推導的能效最優(yōu)條件,可認為,負向傾斜中CPU的高頻居多時可進行能效優(yōu)化。
[1] Elnozahy EN,Kistler M,Rajamony R.Energy-Efficient server clusters.In:Falsafi B,Vijaykumar TN,eds.Proc.of the 2nd Int’l Workshop on Power-Aware Computer Systems(PACS 2002).Cambridge:Springer-Verlag,2003,179-197.[doi:10.1007/3-540-36612-1_12]
[2] Younge AJ,von Laszewski G,Wang LZ,Lopez-Alarcon S,Carithers W.Efficient management for computing envents.In:Proc.of the Int’l Green Computing Conf.Chicago:IEEE,2010,357-364.[doi:10.1109/GREENCOMP.2010.5598294]
[3] Lee YC.Energy scheduling for distred comting systems under difent operating conditions.on Parallel and Systems,2011,22(8):1374-1381.[doi:10.1109/TPDS.2010.208][4] DFSIO program.Hadoop source distribution:src/test/org/apache/hadoop/fs/TestDFSIO.
[5] Rivoire S,Shah MA,Ranganathan P,Kozyrakis C.JouleSort:A balanced energy-efficiency benchmark.In: Chan CY,Qoi BC,Zhou A,eds.Proc.of the ACM SIGMOD Int’l Conf.on Management of Data.Beijing: ACM Press,2007.365-376.[doi:10.1145/1247480.1247522]
Improvement of Multi-CPU Energy Efficiency and Measurement based on Cloud Computing
Luo Chao1, Peng Yutao1, Peng Shuo2
1. Network Information Center, Jinggangshan University,Ji’an Jiangxi, 343009; 2. School of Electronics and Information Engineering, Jinggangshan University, Ji’an Jiangxi, 343009
This paper proposes an essential condition for producing a maximal energy efficiency output under acloud computing environment. Energy efficiency computing procedures are simplified to increase computing efficiency, and improvement is made to the mathematical expressions of the relationship between computer power and the CPU operatingfrequency. The energy efficiency is computed under cloud environment by using the high CPU usage and frequency. In this way, energy efficiency of the cloud system can be evaluated in an efficient and accurate manner, thereby laying a solidfoundation for multi-CPU energy efficiency measurement and optimization under cloud environment.
Cloud computing;CPU architecture;Energy efficiency measurement
TP316 【文獻標識碼】A 【文章編號】1009-5624(2018)01-0001-02
江西省教育廳科技計劃項目(GJJ160742)
羅超(1978-),男,江西吉安人,碩士,高級實驗師,主要從事人工智能、數據挖掘和算法分析方面的研究。