云计算数据中心实时能耗建模
- 格式:pdf
- 大小:2.93 MB
- 文档页数:5
数据中心节能设计随着信息技术的快速发展,数据中心的数量和规模不断扩大,数据中心的能耗问题也日益突出。
数据中心的高能耗不仅对环境造成了巨大的压力,也给企业的运营成本带来了很大的负担。
因此,如何进行数据中心的节能设计,降低能耗,已成为当前亟待解决的问题。
一、合理规划数据中心布局数据中心的布局设计是节能设计的重要环节。
要合理选择数据中心的地理位置,尽量选择靠近城市中心或交通便利的地区,这样可以降低数据传输成本和能耗。
同时,要充分利用自然环境和地形条件,如利用自然风、太阳能等可再生能源来降低数据中心的能耗。
二、优化数据中心架构设计数据中心架构设计的优劣直接影响到数据中心的能耗。
因此,在进行数据中心架构设计时,要尽量优化数据中心的拓扑结构,减少数据中心的层级和节点,降低数据传输的能耗。
同时,要合理设计数据中心的冷却系统,充分利用自然环境和先进的技术手段,提高数据中心的能效。
三、采用先进的节能技术采用先进的节能技术是数据中心节能设计的关键。
例如,采用绿色能源技术、智能电源管理技术、高效制冷技术等。
这些技术的应用不仅可以降低数据中心的能耗,还可以提高数据中心的稳定性和可靠性。
四、合理配置数据中心设备数据中心的设备配置也是节能设计的重要环节。
要尽量选择高效、低能耗的设备,如采用服务器虚拟化技术、存储优化技术等。
同时,要合理配置设备的数量和容量,避免设备的闲置和浪费,降低数据中心的能耗。
数据中心的节能设计需要从多个方面入手,包括合理规划布局、优化架构设计、采用先进技术、合理配置设备等。
只有这样才能降低数据中心的能耗,提高数据中心的效率和经济性。
数据中心机房的节能设计随着信息技术的快速发展,数据中心机房已成为各行业的重要基础设施。
然而,数据中心机房的能耗问题也日益突出,给企业和环境带来了巨大的压力。
因此,如何进行节能设计,提高数据中心机房的能源利用效率,已成为当前亟待解决的问题。
本文将从以下几个方面探讨数据中心机房的节能设计。
软件学报ISSN 1000-9825, CODEN RUXUEW E-mail: jos@Journal of Software,2014,25(7):1371−1387 [doi: 10.13328/ki.jos.004604] +86-10-62562563 ©中国科学院软件研究所版权所有. Tel/Fax:∗面向云计算数据中心的能耗建模方法罗亮1, 吴文峻2, 张飞21(电子科技大学计算机科学与工程学院,四川成都 611731)2(北京航空航天大学计算机学院,北京 100191)通讯作者: 罗亮, E-mail: luoliang@摘要: 云计算对计算能力的需求,促进了大规模数据中心的飞速发展.与此同时,云计算数据中心产生了巨大的能耗.由于云计算的弹性服务和可扩展性等特性,云计算数据中心的硬件规模近年来极度膨胀,这使得过去分散的能耗问题变成了集中的能耗问题.因此,深入研究云计算数据中心的节能问题具有重要意义.为此,针对云计算数据中心的能耗问题,提出了一种精确度高的能耗模型来预测云计算数据中心单台服务器的能耗状况.精确的能量模型是很多能耗感知资源调度方法的研究基础,在大多数现有的云计算能耗研究中,多采用线性模型来描述能耗和资源利用率之间的关系.然而随着云计算数据中心服务器体系结构的变化,能耗和资源使用率的关系已经难以用简单的线性函数来描述.因此,从处理器性能计数器和系统使用情况入手,结合多元线性回归和非线性回归的数学方法,分析总结了不同参数和方法对服务器能耗建模的影响,提出了适合云计算数据中心基础架构的服务器能耗模型.实验结果表明,该能耗模型在只监控系统使用率的情况下,在系统稳定后,能耗预测精度可达到95%以上.关键词: 云计算;数据中心;能耗建模;资源调度算法中图法分类号: TP316中文引用格式: 罗亮,吴文峻,张飞.面向云计算数据中心的能耗建模方法.软件学报,2014,25(7):1371−1387.http://www.jos./1000-9825/4604.htm英文引用格式: Luo L, Wu WJ, Zhang F. Energy modeling based on cloud data center. Ruan Jian Xue Bao/Journal of Software,2014,25(7):1371−1387 (in Chinese)./1000-9825/4604.htmEnergy Modeling Based on Cloud Data CenterLUO Liang1, WU Wen-Jun2, ZHANG Fei21(School of Computer Science and Engineering, University of Electronic Science and Technology of China, Chengdu 611731, China)2(School of Computer Science and Technology, BeiHang University, Beijing 100191, China)Corresponding author: LUO Liang, E-mail: luoliang@Abstract: Energy efficiency of cloud data centers has received significant attention recently as data centers often consume significantresources in operation. Most of the existing energy-saving algorithms focus on resource consolidation for energy efficiency. Accurateenergy consumption model is the basis for these algorithms. This paper proposes an accurate energy model to predict energy consumptionof single machine. In most of the existing cloud computing energy studies, linear models are used to describe the relationship betweenenergy consumption and resource utilizations. However, with the changes in computer architecture, the relationship between energy andresource utilizations may not be linear. In fact, this paper explored a variety of regression analysis methods to estimate the energyconsumption accurately while using low computational overhead. Initially, multiple linear regression models are used, but they often donot produce good enough results. Afterwards, this paper chooses three non-linear models and finally settled with the polynomialregression with Lasso as it produces the best estimation. Experimental results show that in adoption of energy model presented in thispaper, the prediction accuracy can reach more than 95%.∗基金项目: 国家高技术研究发展计划(863)(2013AA01A210)收稿时间:2013-12-30; 修改时间: 2014-03-17; 定稿时间: 2014-05-061372 Journal of Software软件学报 V ol.25, No.7, July 2014 Key words: cloud computing; data center; energy modeling; resource scheduling algorithm能耗模型(energy model)是云数据中心重要的组成部分.在不间断运转的云数据中心,用户和管理者都需要了解他们的行为是如何影响计算机能耗的,从而采取相应的调节措施,达到优化能效的目的.随着硬件厂商对能耗的支持,很多组件已经支持能耗的实时测量,但是单纯的物理测量手段一方面不能预测未来的能耗需求;另一方面,它们也不能为资源使用情况和能耗之间提供有效的联系,而这两点恰恰是很多能效优化算法的切入点.如今,随着云数据中心规模的不断扩张,数据中心的能耗特点也变得复杂多变,很多研究人员也提出了切合他们实际的模型.然而,针对SaaS,PaaS和IaaS(software/platform/infrastructure as a service)的能效优化工作差别巨大,不同层次的能耗模型缺乏可移植性.因此,本文试图从云基础设施层面为云数据中心的服务器建立合理、可靠的能耗模型,并比较不同采样方式和数学方法对能耗模型的影响.首先,着重描述我们所构建的非线性能耗模型的特性;接下来,则在算法与实验上应用本文提出的能耗模型的研究成果,以验证本文所陈述的能耗模型的有效性,并且该能耗模型也有希望应用到其他能耗研究工作中.1 云数据中心的能耗模型1.1 能耗模型建立的原则通常来说,一个准确、高效的能耗模型对于云数据中心的能耗优化工作是非常重要的,虽然现在的硬件中集成了很多能耗模块或与能耗相关的组件,但这只能测量该模块或该节点的实时能耗.这些模块或组件不能预测未来的能耗,也不能把能耗与系统使用率进行有效且必要的联系.因此,我们需要一个准确而高效的能耗模块来为后续的资源调度算法提供有效支撑,能耗模型应该遵循以下原则:(1)全系统.建立的模型应该是系统使用信息与全系统的能耗关联起来,而非仅单独针对某个独立的组件建模;(2)精确.模型针对系统能效优化算法应该有足够的精确度,例如,该模型的平均相对偏差不超过10%.此外,先期建立的模型越精确,对后期优化工作越有利;(3)快速.能耗模型应尽可能地快速,甚至实时地预测能耗;(4)通用性.建模框架应该可以在不同的系统上通用,例如面对不同的处理器、不同的内存调控技术;(5)弹性.模型应该能够根据云计算环境的规模轻松地加以扩展或收缩;(6)简单.模型应尽可能地简单,在不影响预测准确性和支持节能优化方法的同时,应尽量减少输入参数的个数并降低模型的复杂度.1.2 能耗建模的基本流程能耗建模的基本流程如图1所示,它包括以下3个基本步骤:采集能耗及其相关的资源信息;根据回归分析的方法建立能耗模型;用该能耗模型监测系统能耗.具体流程如下:(1) 采样首先,在应用程序运行时采集系统能耗以及服务器能耗的影响因素.根据已有的研究[1,2],本文最后确定了采样的两个基本方向:处理器的性能计数器(performance counter)和系统使用率(system utilization).图2是收集能耗和特定资源信息的平台示意图.我们把需要进行能耗建模的服务器B通过电表连接到电源上,该电表能够实时收集自身的电流和电压信息,并及时把信息传输给收集电能信息的服务器A.确保通过该电表的电器只有服务器B,这样,服务器A收集到的能耗信息即为服务器B的能耗数据.如果电流电压数据分开显示,则我们就可以得到服务器B实时的能耗情况;而服务器B可以通过采样工具收集自身的资源信息.结合这两部分信息,就可以较为精确地获得建模所需的数据.为了更加有效地提取资源使用信息,我们通常需要在服务器B上运行标准检查程序Benchmark.罗亮 等:面向云计算数据中心的能耗建模方法1373(2) 建立能耗模型 一般情况下,服务器能耗变化情况是复杂的,多种因素混杂在一起.因此,我们必须把复杂的研究对象变为简单和理想化的研究对象,并符合我们之前提出的能耗建模的原则.然而,通过采样得到的资源信息因子对能耗贡献有强有弱,本文利用回归分析的方法,通过数学手段,合理地筛选能耗因子,从而减少被引入的因子数目,在不影响精确度的基础上达到降低模型复杂度的目的.(3) 检验能耗模型的精确度,并利用模型监测系统能耗根据能耗模型,我们就可以有选择地采集对能耗影响大的因素或组件,用于实时的系统能耗监测.Fig.1 Basic process of energy modeling图1 能耗建模的基本流程需要建立能耗模型的服务器B 电表数据记录服务器智能电表Fig.2 Diagram of energy sampling图2 能耗采样的示意图本文不讨论单独将节点服务器散热当作能耗模型的参数,虽然散热所消耗的能量巨大[3,4],但是采集热量参数需要额外的传感器和硬件,并且其建模方法和本文所陈述的方法有较大不同.因此,本文暂时不能把服务器散热当作参数来建立能耗模型,而是根据系统资源使用率,建立系统层的能耗模型.1.3 标准检查程序Benchmark为了获知节点服务器的性能,研究人员可以在该服务器上运行一组程序或操作,该程序即被称为标准检查程序(benchmark).Benchmark 通常与计算机硬件的某一部分性能相联系,例如处理器的浮点计算、硬盘的读写访问速度等.Benchmark 通常用在不同体系结构的计算机间的不同子系统的比较上.常见的Benchmark 包括:计算型,例如SPEC2006;硬盘I/O 型,例如I/Ozone;网络型,例如Netperf(见表1).采样 •采集系统的能耗•处理器性能计数器VS.系统使用率建立模型•根据不同的回归方法建立能耗模型•确立预测时需要的采样参数 预测 •预测系统能耗1374 Journal of Software软件学报 V ol.25, No.7, July 2014Table 1Common Benchmark and its types表1常见的Benchmark及其类型Benchmark类型名称计算类型CFPSPEC2006 CINT(gobmk);处理器、内存密集型NPB cg, mg, ep, lu等处理器、网络密集型bonnie处理器、I/O密集型iozone,Disk postmark,Netperf Netperf客户端网络密集型我们使用SPEC2006(Standard Performance Evaluation Cooperation)作为能耗建模过程中的Benchmark, SPEC是一个松散的开源机构,它是作为NCGA(National Computer Graphics Association)的一个小组于20世纪80年代创立的,这个小组的创始者来源于HP,DEC,MIPS,SUN,他们拥有一组标准检查程序以评测新机器的性能.第1组标准检查程序叫作SPEC89,包含10个程序;随后,SPEC92扩大到20个程序,包括6个整数程序和14个浮点程序,分别称为SPECint92,SPECfp92.随后,SPEC又发布了一些新的标准检查程序(如SPEC95, SPEChpc96,SPECweb96,SPEC2000等).SPEC2006是一个评估计算机在真实应用中计算性能的有效工具,这些真实场景包括机器围棋、天气预报、线性规划算法、视频编码、基因序列搜索、编译器、离散事件模拟、量子计算、分子动力学模拟、物理模拟中的光线跟踪、流体力学计算、结构力学中的有限元方法、语音识别等等.根据相关研究[4,5]和我们的实验总结,在云计算基础设施中,节点的CPU和内存是最为耗能并且状态可调节的部件.所以,我们选取这两个部件的使用率作为能耗模型的基本参数,并将其带入多种回归模型中.2 相关工作为了有效控制数据中心庞大的能耗,研究人员首先应当理解数据中心为何会消耗如此多的能源,所以,建立能耗模型是当务之急.在真实的云计算系统中,能耗管理技术的一个重要方面是能耗使用情况的可视性.基于这些可视信息,可以进行自动的或者人工的能耗管理决策.能耗建模可以分成两大类:基于系统使用率的能耗评估模型和基于性能计数器的能耗预测模型.2.1 基于系统使用率的建模基于系统使用率的建模是指利用服务器各个组件的使用情况,建立能耗模型.Fan等人[6]引入了基于处理器使用率的一元线性回归的全系统能耗模型,并在实验中证明了其准确性.但是Chung-Hsinget等人[7]在深入研究了SPECpower_ssj2008从2007年~2010年间公布的177个样本后指出,服务器的能耗行为已经发生了巨大的改变.从2008年起,服务器的硬件提供商和操作系统软件提供商都提出了不同的能耗管理框架,因此,能耗模型也不再是简单的一元回归模型.Chung-Hsinget最后提出了一个一元的指数模型,但是该模型只针对于计算密集型的应用,构建的模型参数也来自经验值,缺乏通用性.Beloglazov等人[8]使用服务器最大功率、CPU使用率、服务器空闲和最大功率的能耗比来组建能耗模型.也有不少研究从服务器的各个组件展开,通过把服务器分为处理器、硬盘、主存等,构建为多元线性回归模型,P服务器=(P处理器,P硬盘,P内存,P主板,…).Economou等人[9]采用了非侵入式的方法来模拟整个系统的能耗,通过一次性校准阶段,生成能耗模型.他们在实验上也采用了有着完全不同的能耗与工作负载特性的服务器进行了对比研究.Lewi[10]在硬件组件参数的基础上加入了系统的环境温度、总线活动作为影响因子,预测了长时间工作的服务器的能耗.Kliazovich等人[11]将CPU以外的其他服务器组件当作常数,与CPU功率和频率一起来表示整个服务器的能耗.此外,他们还描述了除计算节点外网络交换机的能耗模型.在其开发的DENS调度算法中[12],描述了整个数据中心的能耗模型,其中,计算节点能耗模型采用CPU使用率的线性模型,交换机模型则是各耗能组件的多元一次函数.Lee等人[13]则使用了服务器的最大功率、最小功率和CPU的当前使用率来表述能耗模型.宋杰等人[14]给出了CPU使用率和频率相关的能耗模型,并比较了不同类型负载的能耗特点和优化办法.罗亮等:面向云计算数据中心的能耗建模方法13752.2 基于Performance counter的建模为了提高能耗模型的精度,随着处理器的进一步改进,人们提出了基于性能计数器的能耗建模.通过读取处理器的性能计数器的数据,结合不同的组件特性建立能耗模型.例如,现有的内存能耗模型研究发现,影响内存能耗的主要因素是内存读写的吞吐量[7].可以使用轻量级的内存吞吐量的评估方法,即记录最后一层Cache(last level cache,简称LLC)的缺失次数,该参数在大多数处理器上比较容易获得,也可以通过插桩技术更准确地来捕获内存吞吐量.Contreras[15],Singh[16]等人利用performance event的数据构建了能耗模型,他们深入研究特定的处理器,在采样之间就确定了需要采样的事件,但是这种方案缺乏通用性.Isci[17]则对22个事件全部采样,通过确定各个事件带来的最大能耗,建立了全回归模型.但是这种方法要求采样事件较多,并且模型较为复杂,不利于扩展到云计算数据中心的规模.2.3 针对特定计算环境的建模此外,还有一些是针对特定条件下的能耗建模研究.Li等人[18]研究了在MapReduce数据中心的3个处理过程的工作负载数据,例如Reduce文件系统的读操作,使用线性回归模型建立了能耗预测模型.他们的数据来自于两种典型的MapReduce应用:一种是计算密集型的应用;另一种是I/O密集型的应用.Wu等人[19,20]偏向于大规模多核数据中心中的MPI/OpenMP混合特性,他们分别利用处理器和内存组件建立了以应用为中心的系统能耗模型.其研究更关注OpenMP和MPI之间的能耗特性差异,而非模型本身.3 基于云数据中心计算节点的能耗建模过程3.1 基于性能计数器的能耗建模3.1.1 性能计数器的监控事件Intel处理器从奔腾(Pentium)系列起,就通过一组特定模型的性能监控计数器(MSR)引入了性能监控系统.这些计数器允许选择处理器的性能参数进行监测和测量,这些性能信息可以用于调整系统和编译器的性能.在Intel P6系列处理器中,性能监控机制得到了增强,允许更广泛地选择要监视的事件,并允许监视权限更大的控制事件.随后,Pentium4和Xeon处理器又引入了新的监控机制和一组新的性能事件.在Pentium、P6系列、Pentium4和Xeon中性能监控机制是非结构化的,它们全部依赖特定的模型(处理器系列中互不兼容).从Intel Core Solo和Intel Core Duo开始,处理器支持一组结构化的性能事件和一组非结构化的性能事件.通常来说,处理器中可以监控的事件包括指令、缓存和页表缓存等.•指令(instruction)通过比较能耗和性能监视事件可以很明显地看出,指令周期对能耗总是有着突出的贡献.通常,当执行一个指令时,越多的计算单元参与工作,会产生越高的功率消耗.•缓存(cache)以Xeon E5620为例,这是一款基于微结构的处理器.其1阶高速缓存(L1 cache)被分为两部分:一部分专注于缓存指令(预编译的指令),另一部分为数据缓存.2阶高速缓存(L2 cache)是一个统一的数据和指令缓存.每个处理器内核都有它自己的L1 cache和L2 cache.3阶高速缓存(L3 cache)是由所有处理器内核共享的,是一个统一兼容的数据和指令缓存.缓存用于减少内存访问的延迟和提高处理器的数据处理速度.一般来说,指令、数据缓存的缺失意味着计算单元需要停滞,直到出现可用的资源.L1/LLC缓存的低缺失或高命中,有益于指令的速度执行,从而影响了能耗.•页表缓存(TLB)TLB存储了最近经常访问的页目录和页表项,用于改进虚拟地址到物理地址的转译速度.这些有助于加快内存访问速度,当需要访问存储在系统内存中的页表时,TLB可以有效减少访问内存的次数.TLB被分为数据TLB和指令TLB.如果发生TLB未命中,处理器停下来直到主存完成这些工作,从而间接影响了系统能耗.1376Journal of Software 软件学报 V ol.25, No.7, July 2014因此,这些性能事件都有可能是能耗影响因子.但是不同的处理器,这些影响力有强有弱,通过数学方式,可以有效地筛选出重要的因子,建立模型.基于性能计数器的线性能耗模型形式如下所示:01()ni i i P C C p ==+×∑ (1)其中,C 0为常数,p i 表示收集到的性能计数器事件,C i 表示第i 个事件对能耗的影响因子.C 0和C i 可以通过简单的线性回归得到.3.1.2 性能计数器数据的采集目前,有很多工具可以采集性能计数器的信息,常见的有OProfile,Perf 等.通过这些工具,应用程序可以利用PMU(power management unit),tracepoint 和内核中的特殊计数器来进行性能统计.它不但可以分析指定应用程序的性能问题,也可以用来分析内核的性能问题,当然也可以同时分析应用代码和内核,从而全面理解应用程序中的性能瓶颈.Perf 作为Linux 内核自带的系统性能优化工具,它在系统结合度、开发活跃度方面有着众多优势.因此,本文采用Perf 作为性能计数器建模时的采样工具.3.2 基于系统使用率的能耗建模如前所述,性能计数器是由Intel Pentium 系列处理器引入的,并不是所有现存的处理器都支持这种监控体系结构,而且不同类型的处理器之间具有一定的差异性.另一方面,因为某个特定的应用程序或虚拟机在未运行前很难得知cache miss 等性能事件的数据,所以很难通过性能计数器预知该应用程序或虚拟机导致能耗的增加范围.然而,这些应用初步的能耗预估对具有能耗优化的资源调度算法又是极其重要的,因此,基于系统使用率的能耗模型研究是非常必要的.早先有关资源使用率和能耗关系的研究通常采用线性模型,因为它简单、直观并且容易计算.当建模的因子相互独立时,线性回归模型是适合的,而系统使用率(如处理器、内存、硬盘使用率)通常会有一定程度的交叉依赖.此外,随着处理器的进一步优化,能耗和系统使用率也并非呈现简单的线性关系.这意味着使用传统的线性模型,其预测效果可能会很差.采样过程收集了不同的系统负载信息,主要包括4个方面,即:处理器、内存、网络和硬盘I/O.因为采样的目的是建立能耗模型,因此我们只采集了与能耗关系最紧密的负载部分,而把系统其他部分视作一个常量.根据相关研究及我们的实验结果,我们发现处理器和内存占用的能耗比较多.同时,使用率的波动会给系统能耗带来巨大变化,而网络和硬盘等较为稳定.3.2.1 基于CPU 使用率的能耗模型CPU 是计算机系统中主要的耗能部件,并且它具有便捷的调节方法.因此,通过调节CPU 状态来调节整个数据中心系统的能耗状态是节能的主要方法.在我们学习过的能耗模型中,绝大多数都涉及到CPU 状态的调节.我们首先选取其中具有代表性的只使用CPU 使用率来预测能耗的模型[21−23].第1个模型如公式(2)所示,能耗模型预测的能耗为CPU 使用率的线性函数,C 0为常数,C 1表示CPU 使用率对能耗的影响因子,C 0和C 1通过简单的线性回归得到:P =C 0+C 1×U CPU (2) 第2个模型在第1个模型的基础上增加经验参数.根据第1个模型,能耗与CPU 使用率应该呈线性相关,但在很多相关研究[24−26]和我们的实验中(见第4.2节),能耗与资源使用率并非单纯的线性关系,因此,模型2通过增加经验参数C 2和t 来修正两者之间的关系,模型如下所示:01CPU 2CPU t P C C U C U =+×+× (3)3.2.2 内存相关的能耗模型现有研究表明:内存是一个重要的耗能部件,其能源消耗有可能占到总能耗的60%[27].但据我们观察,内存本身并不是一个能耗消费很高的部件,我们在实验环境中所使用的频率为1 333的4G 内存每Gbit 功率仅为3W,但是由于CPU 采用多核心技术,而每个核心需要耗费主频至少2倍以上的内存才能使云数据中心节点中的虚罗亮 等:面向云计算数据中心的能耗建模方法 1377拟机任务顺利运行,所以整体耗电才有所提高.现有内存节能方式主要是,当内存空闲时,将其待机、休眠或关掉,每一个状态的能耗有所减少(如待机状态能耗为平常的60%,休眠状态为10%),但响应时间有所增加.根据我们的实验观察到,内存能耗与CPU 能耗存在正向关联的关系,即:当CPU 利用率提高时,内存能耗也同时提高.因此,通过节约CPU 能耗来节约内存能耗,或者同时节约两者能耗,也是一种可行的节能方法.我们将内存相关的线性能耗模型记为P =C 0+C 1×U CPU +C 2×U memory (4) 3.2.3 存储相关的能耗模型存储能耗也是整机能耗的重要部分.由于服务器的可扩展结构,1台服务器可同时连接多台硬盘或多个磁盘阵列,所以硬盘的能耗根据不同的结构变化很大.有研究表明,存储能耗能达到整体能耗的65%[27].在服务器或网络集群的系统中,由于有许多并发的进程或实例,为达到较高的并行能力或吞吐量,多个磁盘或阵列往往采用同轴共转的方式,这也增加了磁盘的能耗.目前,磁盘节能的方法主要是采用拥有不同调节功能的磁盘,如功能性调节(工作、待机、休眠)或速度调节(采用多转速硬盘)等,采用闪存技术的存储设备也可能是未来发展趋势.本文中,我们所接触到的能耗模型仅陈述磁盘对于整体功耗的影响.我们将内存相关的线性能耗模型记为P =C 0+C 1×U CPU +C 2×U disk (5) 3.2.4 网络相关的能耗模型我们同样观察了网络相关的能耗模型,节点中网络的能耗主要包括NIC(network interface card)的能耗以及处理传输数据所耗费的其他组件的能耗(CPU 、内存或存储),但是其他组件的能耗在如上所述的相对应的能耗模型中均可以计算出来,而NIC 本身的能耗并不大,因此,网络相关的能耗模型主要针对交换设备,其能耗模型和节能方法与计算节点有较大不同,这些内容不在本文讨论的范围内.3.3 能耗数据的回归分析方法回归分析是处理变量间相关关系的一种有效工具,其目的在于根据已知预报变量的变化来估计或预测响应变量的变化情况,或者根据响应变量来对预报变量作一定的控制.具体来说,对能耗数据的回归分析研究随机变量y (能耗)与解释变量x (资源使用率)间的相关关系,其中,对于每个确定的x ,y 是一个具有确定分布的随机变量.寻求y 的均值与x 之间的函数关系的表达式Ey =μ(x ),便是回归分析的基本问题.这里的μ(x )称为y 对x 的回归函数,或简称为y 对x 的回归.3.3.1 多元线性回归模型多元线性回归通常用于讨论因变量和两个或者两个以上的自变量的线性依赖关系.考虑含m 个因变量的回归模型:011222...()0,()m m y x x x E D ββββεεεσ=+++++⎧⎨==<+∞⎩ (6) 其中,y 是观测到的实时能耗;β0,β1,β2,…,βm 是回归系数,是需要被确定的量;ε是不可观测的随机误差;x 1,x 2,…,x m是系统各部件使用率的观察值,称为回归因子,简称因子;βi (i =1,…,m )实际上反映了因子x i 对因变量y 的贡献大小.假设有n 组能耗观测值(y i ,x i 1,…,x im ),i =1,…,n ,则有:011222...,1,...,()0,(),i i i m im i i i i y x x x i n E Var ββββεεεσε=+++++=⎧⎨==⎩且相互独立 (7) 为了方便,我们采用矩阵表示,记:111121112212222212......,,,...............m m n n n nm m n y x x x y x x x y X y x x x βεβεβεβε⎛⎞⎛⎞⎛⎞⎛⎞⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟====⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟⎜⎟⎝⎠⎝⎠⎝⎠⎝⎠, 则公式(6)可表示成矩阵形式:。
基于云计算的能耗模型分析作者:张友吾邓兆熙来源:《中国科技博览》2017年第24期[摘要]我国的经济社会不断发展,科学技术水平不断提升。
随着网络信息技术的不断扩展,数据信息资源的价值越来越突出。
在大数据的时代中,一种面向云计算的数据中心应运而生,改变了传统数据中心的能源计算流程,提高了能耗计算的效率。
本文将具体探讨一种面向云计算数据中心的能耗建模方法,希望能为相关人士提供一些参考。
[关键词]云计算;数据中心;能耗模型中图分类号:TP393.09 文献标识码:A 文章编号:1009-914X(2017)24-0074-01引言进入新世纪以来,我国的市场经济持续繁荣,网络信息技术水平不断提升。
在大数据的时代中,数据信息的价值日益突出,数据中心和管理平台应运而生,在一定程度上提升了数据处理效率和网络的运行速度。
在此背景之下,各行各业开始面向云计算数据中心,形成了自己的数据处理网络。
值得注意的是,在数据网络的运行过程中,会耗费大量的电力资源,造成能源浪费问题,为了避免出现上述情况,必须面向云计算数据中心,采用新式的能耗建模方法。
1 云计算数据中心的能耗模型1.1 构建原则首先,在构建云计算数据中心的能耗模型时,应该秉持系统性原则。
企业的信息系统并不是单独存在的,需要和安全保障系统、决策系统、监测系统等组合在一起[1]。
因此在构建能耗模型时,应该调取各个分系统的模型参数,把能耗信息拼接起来。
其次,在构建云计算数据中心的能耗模型时,应该秉持精确性原则。
能耗计算的步骤相对复杂,只有遵循具体的计算流程,才能得出最后的能耗结果。
一般来说,云计算数据中心的能耗计算需要把误差控制在百分之十左右,这样才能发挥模型结果的实用价值,为企业的发展决策提供依据。
再次,在构建云计算数据中心的能耗模型时,应该秉持快速性原则。
企业每天都需要耗费大量的能源,为了精确计算企业的能耗量,需要对企业的实时能源消耗进行快速计算,同时对企业的未来能耗量进行预测。
算力能耗模型是指计算数据中心的能耗与算力之间的关系,通过建立数学模型来描述两者之间的变化规律,从而为数据中心的节能减排提供理论依据和决策支持。
算力能耗模型的基本思路是,根据数据中心的各项参数和实际能耗数据,通过数学建模的方式建立能耗与算力之间的函数关系,从而为数据中心的能耗管理提供参考。
在实际应用中,算力能耗模型的建立需要考虑多个因素,如数据中心的硬件设备、网络设备、散热设备等,以及数据中心的规模、布局、运行环境等。
同时,还需要考虑不同设备的能耗效率和能耗影响因素,以及数据中心在不同负载下的能耗变化规律。
建立算力能耗模型的方法有很多种,常用的方法包括线性回归模型、支持向量回归模型、神经网络模型等。
其中,线性回归模型简单易行,适用于短期预测;支持向量回归模型和神经网络模型则适用于长期预测和复杂数据的处理。
在实际应用中,算力能耗模型的建立需要考虑数据中心的实际情况和具体需求,选择合适的建模方法和参数,并进行模型的验证和优化。
同时,还需要结合数据中心的运行数据和能耗监测系统,对模型进行实时更新和调整,以保证模型的准确性和可靠性。
仿真环境下的云计算数据中心能耗评估方法武晋;何利力;郑军红;程丹丹【摘要】数据中心能耗优化问题是云计算领域的重要研究方向,但在真实环境中进行相关研究需要承担巨额的研究成本,并且实验周期长,因此仿真技术在该领域广泛应用.为提高数据中心能耗感知仿真实验的准确性和可信度,本文分析了仿真平台的内置能耗模型和其他学者提出的能耗评估方法,并在此基础上提出了基于CPU和内存利用率的能耗评估方法,该方法考虑了CPU利用率对内存能耗的影响,采用多元非线性模型进行回归分析.实验证明,本文提出的能耗评估方法在适用于仿真平台的同时具有较高的预测精度,有效地提高了云计算仿真平台能耗评估的准确性.【期刊名称】《计算机系统应用》【年(卷),期】2019(028)005【总页数】7页(P143-149)【关键词】云计算;数据中心;能耗建模;回归分析【作者】武晋;何利力;郑军红;程丹丹【作者单位】浙江理工大学信息学院, 杭州 310018;浙江理工大学信息学院, 杭州310018;浙江理工大学信息学院, 杭州 310018;浙江理工大学信息学院, 杭州310018【正文语种】中文云计算服务的广泛应用极大地促进了数据中心的发展,但与此同时,规模日趋庞大的数据中心产生了巨大的能耗.根据美国劳伦斯伯克利国家实验室最近发布的美国数据中心能源使用报告,在2014年,美国的数据中心能耗已达到700 亿千瓦时,约占美国总用电量的1.8%[1].数据中心的能耗问题引起了IT 界的密切关注,能耗管理也成为了近年来的研究热点.数据中心能耗优化的相关研究往往需要大量的实验,而在实体服务器集群环境中,实验参数出现差错或中间结果失效都会导致实验的失败,重启服务会大大增加实验周期,并且在实体集群中进行实验需要承担巨额的费用[2].云计算仿真平台很好的解决了这一问题,使面向大规模云资源能耗优化的相关研究能够更加经济、高效.但仿真技术也存在着一定的局限性,仿真平台无法直接测量能耗,只能通过内置的能耗模型进行估算.因此,能耗评估是云计算仿真的关键环节,直接决定了仿真实验的准确度和可信度.1 云计算数据中心能耗评估方法概述目前已有的云计算数据中心的能耗评估方法可以大致分为两类,一是云计算仿真平台中内置的能耗模型,二是面向真实的物理集群进行的能耗评估.当前应用最为广泛的云计算仿真平台是澳大利亚墨尔本大学的网格实验室开发的CloudSim[3],为估算仿真平台的能耗,CloudSim 内置了Power模块,提供了依赖于服务器CPU 利用率的能耗评估模型.CloudSim的能耗模型可以分为两类,一类分别采用CPU 利用率的平方根、线性、平方、立方来计算能耗,另一类依据SPECpower 记录的服务器功耗情况对特定的7 种服务器进行能耗计算.其中SPECpower 能耗模型采用了服务器真实的CPU 使用率和能耗数据作为样本,选取了11个采样数据点,最终采用一元分段式模型来进行能耗计算.除了仿真平台的内置能耗模型之外,很多学者进行了面向真实集群的能耗评估方法相关研究.文献[4]的研究表明,数据中心服务器的能耗可以利用CPU 利用率来计算,可以简单高效地采用一元线性回归数学模型来进行能耗建模.而文献[5]认为服务器的能耗和CPU的利用率不是完全的线性关系,服务器的能耗增速随着CPU利用率的增加逐渐增大,之后增速逐渐平稳再迅速减小,直到能耗值达到最大.文献[6]指出,数据中心的能耗与CPU 利用率、内存、主板、外存等有关,仅仅使用CPU 利用率来进行能耗估算可能会导致能耗估算误差较大.文献[7]提出了利用CPU 实时利用率、CPU 实时频率和内存利用率,结合多元线性回归进行能耗建模,提高了能耗建模的精确度,但采用的参数较多.在文献[8]中,采用基于CPU 和内存使用率的多元线性和多元非线性方法进行能耗建模,选用的参数较少,且结果较为准确,适合移植到仿真环境中,但在建模过程中没有考虑CPU 利用率对内存能耗的影响,以及在计算节点启动过程中的状态转换能耗.随着服务器处理器的不断改进,相关学者开始从性能计数器的角度进行能耗建模的研究.在文献[9]中,采用性能事件进行建模,定义了22个性能事件,通过全回归的数学模型进行能耗评估.在文献[10]中,选用CPU、内存、I/O 等主要组件的细粒度性能计数器作为特征值集合,并建立该集合与运行时系统总功耗的对应关系,通过多元线性回归的方法确定相关系数,最终得到较为精确的能耗模型.基于性能计数器的能耗建模方法具有较高的准确性,但测算数据中心能耗的监控参数过多,难以在仿真平台中实现.针对以上问题,本文对CloudSim 云计算仿真平台的能耗模块进行了修改,提出了适用于仿真环境能耗评估方法,该方法基于计算节点的CPU 和内存利用率,并考虑了状态转换能耗和CPU 利用率对内存能耗的影响,利用多元回归进行建模.本文通过实验对比了CloudSim 一元线性模型、CloudSim 一元分段式模型、多元线性模型、多元非线性模型的能耗评估效果,验证了本文提出的能耗评估方法的有效性.2 仿真环境下的数据中心能耗评估原理云计算仿真平台的主要功能是为数据中心资源调度等相关实验提供实验环境,尽管仿真环境在规模和精度等方面与真实集群有一定的差距,但它可以创建一个近似的模拟环境,使数据中心资源调度相关实验可以在一个较小的计算环境中进行.应用于仿真环境中的能耗评估方法,应该在保证易于建模的基础上,尽量提高其评估的准确性,因此需要监测多的性能参数或者过于复杂的决策评估过程并不适用于仿真环境.云计算数据中心的总能耗包括云计算中心的计算节点能耗、网络设备能耗、存储设备能耗、温控设备能耗和其他设备能耗.网络、存储、温控及其他设备能耗的变化相对较小,因此在仿真环境的能耗评估过程中,我们将其视为恒定的能耗.数据中心的计算节点可能是同构的也可能是异构的,为简化能耗评估过程,我们假定数据中心中所有的计算节点都是同构的,并且具有相同的配置,那么数据中心的能耗可以表示为:其中,E(DC)为数据中心的总能耗,N 代表同构计算节点个数,E(i)代表同构节点能耗,E(other)代表网络、存储、温控和其他设备的恒定能耗.计算机系统的能耗通过功率来计算,在实际情况下,计算节点能耗并不能以一个固定的功率和时间做简单乘积来度量,对于单个计算节点来说,能耗与功率的关系如式(2)所示:其中,E(i)为云计算数据中心同构节点能耗,Prun 为同构节点的运行功率,s 为节点i 发生状态转换的次数,Es 为节点i 启动时的瞬时能耗.服务器在启动时功率会迅速上升,产生较大的能耗,忽略启动瞬时能耗会影响数据中心能耗模型的准确度.特别是对于虚拟机分配和迁移算法的能耗评估,如果不考虑启动能耗,将无法衡量物理机频繁的开闭产生的能耗.启动能耗可以通过测量得到,这里用常量表示.通过上述分析,将云计算数据中心的能耗评估简化为同构计算节点实时功率建模.在实际情况下,计算机功率的变化情况是十分复杂的,受多种因素的综合影响.其中CPU 是计算机的主要能耗组件,已有的基于计算机系统的资源利用率的能耗模型几乎都首先将CPU的能耗考虑在内.内存组件本身能耗消费不高,但CPU 与内存互相关联,任务的运行往往伴随着CPU 和内存利用率的同时提高,从而导致整体能耗的提高,因此内存也是能耗评估时需考虑在内的重要组件[8].另外硬盘、网络接口等组件也会产生一定的能耗,但对整体能耗的影响相对较小,为简化能耗模型,可以将计算节点的实时功率按各个组件进行分解,表示为:其中,P(cpu)和P(mem)分别表示计算机处理器和内存对功率的影响,P(others)表示硬盘、网络接口等其他组件对计算节点功率的影响.由于硬盘和网络接口对整体能耗影响较低,且对于仿真环境来说引入过多变量将导致模型过于复杂,大大增加重写能耗模型的难度,因此我们只针对与能耗关系最紧密的处理器和内存进行建模,网络接口和硬盘的能耗将被视为常量.其中处理器能耗用CPU 利用率来构建,内存能耗通过内存利用率来构建.3 仿真环境下的云计算数据中心能耗评估方法3.1 数据准备为保证仿真环境下的数据中心能耗模型的可信度和准确度,在建模之前需要收集大量的真实数据,根据上一节阐述的能耗建模原理,采样数据应包括同构节点对应的CPU 利用率、内存利用率和实时功率.在本文中,同构节点的操作系统为CentOS,在Linux 系统中,可以采用top 命令来监测系统的CPU利用率和内存利用率.执行top 命令会显示CPU 和内存的相关信息,可以表示为:Cpu(s):3.3 us,1.4 sy,0.0 ni,94.7 id,0.6 wa,0.0 hi,0.0 si,0.0 st Mem:3803368 total,2117404 free,1084500 used,601464 buffers其中与CPU 利用率相关的参数有us、sy 和id,分别代表用户空间占用CPU的百分比、内核空间占用CPU的百分比和空闲百分比,CPU 利用率的计算公式可以表示为与内存相关的参数有total,used, free,buffers,分别表示物理内存总量、使用中的内存、空闲内存和缓存内存,内存利用率的计算公式可以表示为:同构节点的实时功率采用HP-9800 功率仪进行测量,HP-9800 功率仪包含USB 接口,可以连接收集数据的主机,通过代理软件将功率和对应的时间导入到计算机中.同构节点实时功率采样拓扑如图1.图1 实时功率采样拓扑在完成CPU 利用率、内存利用率和实时功率的数据采集后,通过采集时间进行匹配,形成功率、CPU 利用率、内存利用率的三元组,采样结果如图2.图2 采样结果图3.2 能耗模型在本文中,通过采样得到了近3800 组CPU 利用率、内存利用率和实时功率数据,将CPU 利用率和内存利用率作为自变量,实时功率作为因变量,通过多元线性回归和多元非线性回归的方式进行能耗建模与验证.3.2.1 多元线性回归模型多元线性回归是处理变量间相关关系时常用的分析手段,含n个变量的多元线性回归模型可以表示为:其中,β0,β1,β2,…,βn 为回归系数,ε 为随机误差,多元线性回归的过程就是对回归系数和误差的计算.利用多元线性回归方法进行建模,因变量与每个自变量需大致满足线性关系,即要求自变量CPU 利用率、内存利用率与因变量实时功率的线性相关系数大于0.75,线性相关系数计算公式为:将采样的得到的3800 组数据代入上式进行计算,CPU 利用率、内存利用率与功率的线性相关系数分别为:rcpu=0.9603,rmem=0.9537.由此可以得出,CPU 利用率、内存利用率与功率之间的线性关系较强,可以尝试采用多元线性回归的方式进行能耗建模.多元线性回归的能耗模型可以表示为:其中,β0,β1,β2 为需要确定的回归系数,通过回归分析可以得到β0的值为36.6309,β1的值为0.5315,β2的值为-0.1644.3.2.2 多元非线性回归模型多元线性回归模型简单、高效并且易于使用,但它更适用于自变量之间相互独立的问题.而在本文中,由于CPU 和内存是通过主板连接的一个整体,CPU 和内存的能耗产生可能会相互影响,并且功率和CPU 利用率、内存利用率不是绝对的线性关系,为进一步提高能耗模型的准确性,本文引入了非线性模型,并将CPU 对内存的影响考虑在内.首先采用多项式模型为基本函数,初步得到非线性能耗模型,计算公式如下:CPU 是计算机的主要能耗组件,并且对内存能耗存在着一定的影响,因此内存相关系数β3,β4 可能与CPU 利用率相关.我们首先通过多项式回归分析,得到只考虑CPU 利用率时β0,β1,β2的值.之后将采样数据分为38 组,每组一百份数据,在β0,β1,β2 值固定的情况下,观察CPU 利用率的变化对内存的相关系数β3,β4的影响.分析发现,β4的值随CPU 利用率变化不明显,在一定的区间内上下浮动,而β3 随CPU 利用率变化明显,其变化趋势如图3.图3 CPU 利用率与内存相关系数分布图通过曲线拟合得到CPU 利用率和内存的相关系数β3 函数形式,之后结合式(9)得到非线性能耗评估模型,如式(10)所示:得到函数基本模型后,通过进一步非线性回归分析,确定各个系数值,其中β0,β1,β2,β4 分别取值为20.5604,1.3027,-0.0107,-0.0041,γ0,γ1,γ2分别取值为1.5963,0.0200,-0.6236.3.3 预测和评估完成能耗模型建立后,将依据能耗模型进行能耗评估,为比较评估结果的精确度,将采用相对偏差和平均相对偏差作为评估标准.其中相对偏差反应每个采样点的评估精度,平均相对偏差反应模型评估的整体情况.相对偏差和平均相对偏差的计算公式如下:4 实验分析为验证本文提出的能耗模型的有效性,本文采用CloudSim 内置模型作为参考组设计了对比实验.CloudSim中内置的能耗模型全部为基于CPU 利用率的一元模型,在对比实验中选择最为常用的一元线性模型和较为准确的一元分段式模型作为对照组.其中一元分段式模型将CPU 利用率以10%为梯度进行分段,设置11个分段点,在每个分段内采用一元线性模型来计算服务器功率,实验的软硬件环境见表1.表1 实验软硬件参数表项目参数处理器Intel(R)Core(TM)*************** GHz内存4 G 0.993019系统内核3.10.0-862.11.6.el7.x86_64编译环境gcc-4.8.5操作系统CentOS Linux release 7.5.1804 (Core)CloudSim 一元线性模型、CloudSim 一元分段式模型、多元线性模型、多元非线性模型的能耗预测值和能耗真实值的对比情况依次如图4 至图7所示.通过对比各个能耗模型的预测值和能耗真实值可以直观地判断各个模型的预测准确性.之后,根据公式(11)计算可以得到CloudSim 仿真平台一元线性模型、CloudSim 一元分段式模型、多元线性模型、多元非线性模型的相对偏差,反应了各个模型每个采样点的预测误差分布情况.以上四个模型的相对偏差情况如图8 至图11所示.图4 CloudSim 一元线性模型预测情况图5 CloudSim 一元分段式模型预测情况图6 多元线性回归模型预测情况根据式(12)计算可得到各个模型的平均相对偏差,其中CloudSim 一元线性模型的平均相对偏差为0.0659,CloudSim 一元分段式模型为0.0421,多元线性模型的平均相对偏差为0.0261,多元非线性模型为0.0094,通过对比以上四种模型的预测情况、相对偏差和平均相对偏差,可以发现,多元线性模型、多元非线性模型预测效果均优于CloudSim 平台中的内置模型,其中考虑了CPU 对内存能耗影响的多元非线性模型有较为明显的优势.因此,选择本文提出的多元非线性模型重写仿真平台的能耗评估方法,用于资源调度相关实验的能耗评估.图7 多元非线性回归模型预测情况5 结论与展望本文针对云计算仿真平台中数据中心能耗评估误差较大的问题,提出了基于计算机CPU 和内存利用率的多元非线性能耗评估方法.实验结果表明,本文提出的多元非线性能耗模型在适用于云计算仿真平台的同时,有较高的准确性,有效的提高了仿真环境中的能耗评估效果.在本文中为简化能耗评估过程,将数据中心的网络、存储等设备产生的能耗和计算节点的硬盘、网络接等口产生的能耗都视为了常量,接下来的研究将分析这些设备或组件的能耗特性,在尽量保证仿真过程简单可行的前提下,进一步提高仿真模型的精确度.此外,还将在重写了能耗模型的CloudSim 仿真平台中实现资源调度算法,以本文的能耗评估方法为标准进行能耗感知相关实验.图8 CloudSim 一元线性模型相对偏差图9 CloudSim 一元线分段模型相对偏差图10 多元线性回归模型相对偏差图11 多元非线性回归模型相对偏差参考文献【相关文献】1 Shehabi A,Smith S,Sartor D,et al.United States Data Center energy usagereport.Berkeley:Lawrence Berkeley National Laboratory,2016.2 林伟伟,吴文泰.面向云计算环境的能耗测量和管理方法.软件学报,2016,27(4):1026-1041.3 Calheiros RN,Ranjan R,De Rose CAF,et al.CloudSim:A novel framework for modeling and simulation of cloud computing infrastructures and services.arXiv:0903.2525,2009.4 Chen G,He WB,Liu J,et al.Energy-aware server provisioning and load dispatching for connection-intensive internet services.Proceedings of the 5th USENIX USENIX S X He WB,Li Systems Design and Implementation.San Francisco,CA,USA.2008.337-350.5 Fan XB,Weber WD,Barroso LA.Power provisioning for a warehouse-sized computer.ACM Sigarch Computer Architecture News,2007,35(2):13-23.[doi:10.1145/1273440]6 Basmadjian R,Ali N,Niedermeier F,et al.A methodology to predict the power consumption of servers in data centres.Proceedings of the 2nd International Conferenceon Energy-Efficient Computing and Networking.New York,NY,USA.2011.1-10.7 陈俊,胡悦,杨娇,等.云计算数据中心实时能耗建模.计算机工程与设计,2017,38(9):2494-2497,2555.8 罗亮,吴文峻,张飞.面向云计算数据中心的能耗建模方法.软件学报,2014,25(7):1371-1387.9 Isci C,Martonosi M.Runtime power monitoring in high-end processors:Methodology and empirical data.Proceedings of the 36th Annual IEEE/ACM International Symposium on Microarchitecture.San Diego,CA,USA.2003.93-104.10 程华,陈左宁,孙凝晖,等.一种基于细粒度性能计数器建立系统实时功耗模型的方法.计算机学报,2014,37(3):687-699.。
数据中心能耗优化的建模与算法研究随着云计算、大数据、人工智能等技术的快速发展,数据中心已经成为了现代社会中不可或缺的一个组成部分。
而数据中心的能源消耗也成为一个逐渐被关注的问题。
如何优化数据中心的能耗,在保证计算质量和服务质量的前提下,尽量减少能耗,成为了当前数据中心优化研究的热点话题。
数据中心的能耗主要来自于计算设备和冷却设备。
因此提高计算设备的利用率和冷却设备的效率,是优化数据中心能耗的两个重要方面。
其中,计算设备的利用率又与任务调度和资源管理紧密相关,而冷却设备的效率也与环境控制和物理布局密切相关。
面对如此复杂的能耗优化问题,我们需要建立适合的模型和算法来进行分析和解决。
本文的主要目的即在于探讨数据中心能耗优化的建模和算法研究方面的进展和未来发展趋势。
1. 建模方法数据中心能耗优化的建模方法包括建立物理模型、数学模型、仿真模型和模拟模型等。
其中,物理模型和数学模型是最为传统的建模方法,也是较为普遍的方法。
物理模型主要是通过实验和测试,获取数据中心各个组成部分的能源消耗和运行状况,以此来建立数据中心的能耗模型。
物理模型的优点是可靠性高,结果可追溯性好,但其缺点是需要较大的时间和成本投入,且无法全面考虑数据中心复杂的逻辑关系。
数学模型则是通过数据分析和数学方法建立能耗优化模型。
数学模型主要分为静态模型和动态模型两种。
静态模型是基于数据中心的一些基本属性和约束条件,通过最优化求解器求解得到的最优解。
而动态模型则是基于实时监控数据,通过实时计算和调整来实现能耗的优化。
相比物理模型,数学模型的优势是可模拟性好,模型建立周期较短,但也有缺点,例如数据建模和求解器的选择较为困难,误差分析较为复杂等。
2. 算法研究针对数据中心能耗优化问题,现有的算法方法主要可以分为以下几种:(1)基于负载预测的调度算法。
该算法利用对负载的预测,实现任务的调度和资源的分配,从而达到能源消耗的优化。
其中,负载预测可以采用传统的ARMA模型、卷积神经网络等方法,调度算法可以采用遗传算法、模拟退火算法等优化算法来实现。
1引言近年来,互联网、人工智能、物联网等信息技术产业飞速发展,数据中心作为信息产业的基础支撑,建设速度不断加快,规模不断增大。
而高耗能一直是数据中心需要面对的突出问题,备受政府、企业、社会关注,对于节能减排和绿色数据中心的研究,不仅有利于企业降低成本,更对社会的可持续发展有重要作用。
在政府方面,为规范数据中心节能减排,国务院、工业和信息化部先后发文要求数据中心PUE 应优于1.5,北京、上海等地区也对新建和改造数据中心在能耗方面提出更加严格的要求;在企业方面,新能源、高效制冷、智能运维等在绿色数据中心建设、运维等方面的实践已经取得了积极的效果。
对能耗情况的客观评价和设备间能耗关联关系的研究,一直以来都是数据中心绿色节能研究的基础和关键。
能效指标主要对数据中心及相关设备能耗情况进行评估,可以客观地反映数据中心及其设备的节能情况;能耗模型对数据中心能耗情况进行建模,是数据中心能耗理解的基础,对能效优化具有重要的作用。
2能效指标数据中心能效指标对新建数据中心方案设计和在用数据中心运维管理等方面都具有十分重要的作用。
目前,已经有几十种针对数据中心性能进行评价的指标,PUE 、ASHRAE 90.4、CADE 、EEUE 等指标主要对数据中心能效进行评估。
除了数据中心整体能效指标外,亦有大量针对数据中心设备、子系统等方面的能效评估指标,其中包括微模块、空调、服务器的能效指标。
从设备级到系统级的能耗评价指标,在指导数据中心技术演进、设备研发、绿色运维、能耗模型优化等方面具有重要的意义。
本文将主要介绍PUE 、微模块和服务器的能效指标,从数据中心整体、子系统、设备3个维度梳理能效指标。
2.1PUE2007年,绿色网格(The Green Grid )提出PUE 的概念,公式(1)为PUE的定义公式。
(1)其中,P total 为数据中心总耗电,包含IT 设备耗电、制冷耗电、照明耗电等;P IT 为数据中心中IT 设备耗电。
云数据中心服务器能耗建模及量化计算作者:周舟袁余俊明李方敏来源:《湖南大学学报·自然科学版》2021年第04期摘要:构建精确的服务器能耗模型有助于资源提供者预测和优化数据中心的能耗. 针对以往数据中心服务器因未考虑“负载的特征”而导致能耗模型精度低的问题,本文提出一种新的能耗建模及量化计算方法,其主要思路如下:根据数据中心服务器所处理任务特征的不同将其分成三类,分别为计算密集型任务、Web事务型任务和I/O密集型任务;针对每一种类型任务,分析其对服务器各部件能耗的影响;利用“主成分分析法”分析各部件参数对能耗的贡献并选择最具代表性的参数,进而结合多元线性回归和非线性回归方法建立能耗模型. 实验结果表明,本文建立的能耗模型预测精度能达到95%以上;与其它模型相比,精度可提高3%左右.关键词:云计算;数据中心;能耗模型;任务类型;能效优化中图分类号:TP311 文献标志码:AEnergy Consumption Modeling and QuantitativeCalculation of Servers in Cloud Data CenterZHOU Zhou1,2,YUAN Yujunming2,LI Fangmin2(1. College of Information Science and Engineering,Hunan University,Changsha 410082,China;2. School of Computer Engineering and Applied Mathematics,Changsha University,Changsha 410022,China)Abstract:Building an accurate energy-consumption model of servers can assist resource providers in predicting and optimizing energy consumption of data center. To address the problem of low accuracy of energy consumption model caused by the failure to consider "load characteristics" of servers in data center, a new energy consumption model and quantitative calculation method are proposed in this paper. The main ideas are summarized as follows: Firstly, we divide the tasks into three classes: CPU intensive task, transactional web task, and I/O intensive task. Then, energy consumption contributions of all components in a server are analyzed. After that, the dominant component parameters of server energy consumption are chosen by using the Principal Component Analysis (PCA), to build a power model through the multiple linear regression method and non-linear regression method. Experimental results show that the prediction accuracy of the proposed energy consumption model can achieve more than 95%. Compared with other energy consumption models, the accuracy can be improved by around 3%.Key words:cloud computing;data center;energy consumption model;task types;energy efficiency optimization隨着云计算数据中心的大量新建,数据中心的能耗问题越来越严重. 近期研究显示[1-2]:全球数据中心的总数已超过300万个,耗电量占全球耗电量的1.1%~1.5%. 我国数据中心也发展迅速,总数已达到40万个,年耗电量已超过500亿千瓦,占全国总耗电量的1.5%. 如果以数据中心的PUE(平均电能使用效率)指数来评测,全球先进数据中心的PUE指数为1.2,而我国的PUE指数大于2.2. 与此同时,大量的报告也显示[3-5]:许多高性能数据中心服务器的利用率却远远低于50%,其原因在于数据中心资源未得到“有效”利用. 因此,节能优化算法的提出有助于提高系统的资源利用率和单位能耗的效用.能耗模型作为“节能优化算法”的基础[6-7],其准确性直接关系到优化算法的优劣. 一个精确、通用、有效的能耗模型不仅为优化算法提供基础,而且也有利于该模型的扩充. 对于云资源提供者来说,构建精确的能耗模型有助于资源提供者预测和优化数据中心的能耗,提高单位能耗的效用. 因此,对其研究具有十分重要的现实意义.本文的主要工作如下:1)基于“任务的特征”构建能耗模型. 不同于其它的能耗模型仅考虑CPU密集型任务,在本文中,基于“任务特征”的不同,任务被划分为三类,分别为计算密集型任务、Web事务型任务和I/O密集型任务.2)不同于已存在的能耗模型仅考虑CPU和内存部件,而忽略了磁盘和网络接口卡部件,本文所提出的能耗模型考虑了与能耗有关的所有部件如CPU、内存、磁盘和网络接口卡.3)使用“主成分分析法”分析各部件参数对能耗的贡献并选择最具代表性的参数.4)运用大量的实验证明了本文所提出能耗模型的精确性和有效性.1 相关研究目前,对能耗模型的研究可以分为两类,一类是基于系统利用率的能耗模型[8-12],另一类是基于性能计数器的能耗模型[13-17].基于系统利用率的能耗模型的主要思想是利用服务器各主要部件的利用率,构建能耗模型. 文献[8]基于服务器中资源使用情况,结合回归方法建立了线性模型. 文献[9]结合三个参数(%Processor Time,%Memory used,%Page Faults/s)提出了一种CMP (CPU利用率,内存利用率和Pagefaults)模型,相比较以往的能耗模型,该方法具有一定的优势,但该方法因选择的参数有限且没有考虑到负载的特征,其能耗模型的精度仍有待提高. 在文献[12]中,罗亮等人针对数据中心的单台服务器提出了一种高精度的能耗模型,该模型分析了不同参数对服务器能耗的影响,然后结合多元线性回归和非线性回归的方法建立能耗模型. 同样,文献[11]在线性模型(Linear Model)的基础上提出了一种改进的能耗模型叫Cubic Model,该模型认为服务器的能耗与处理器(CPU)不应是线性关系,而是立方关系. 文献[12]基于能耗和系统资源利用率的关系,提出了一种服务器能耗经验模型(Linear Model). 此类能耗模型的优点是易于实现且能耗模型的精度较高.基于性能计数器的能耗模型的基本思想可概括为:根据PMC与设备能耗之间的关系,针对不同设备(包括处理器、内存、磁盘、I/O外部设备)筛选出最具代表性的“PMC集合”;然后通过统计分析的方法,建立PMC事件與设备功耗之间的函数关系,这种关系既可以是线性关系、也可以是非线性关系. 在文献[13]中,程华等提出了一种基于细粒度的实时能耗模型,该模型由模型设定、性能计数器参数选取、数据采集、模型求解和性能评估这五个部分组成. 在此文中,作者选择PMC集合(包含二十多个参数)建立系统能耗模型. 文献[14]通过运行负载,在考虑处理器和内存等因素下,基于PMC方法建立服务器的能耗模型. 在文献[15]中,作者在考虑CPU和内存两大因素的条件下,提出了一种Ramon Model. 在文献[16]中,Singh等使用PMC方法构建实时的能耗模型. 在文献[17]中,肖鹏等首先形式化资源利用率与能耗之间的关系,然后基于性能计数器提出了一种新型的能耗模型,最后基于该能耗模型提出了一种虚拟机调度算法. 此类方法因采集到的事件太多,成本相对较高,模型也较为复杂,故不利于该模型扩充.2 能耗模型的参数选择数据中心服务器的能耗建模如图1所示. 它包含数据采样、参数的筛选、建立模型和评估模型四个步骤.1)数据采样. 数据采样是数据中心能耗建模的第一步,这一步的主要工作是采集系统的数据,采样的基本方法有基于性能计数器或者基于系统资源利用率.2)参数的筛选. 在采样数据之后,就需要对采集到的参数进行筛选. 因为采样的参数有些是与系统能耗相关的,有些是不相关的. 如何筛选这些参数呢?此时可以借助于“主成分分析法”或者“相关系数矩阵法”去筛选.3)建立模型. 这一步的主要工作是利用前面筛选出的参数,借助于数学中的线性回归或者非线性回归方法(多项式回归,幂回归,指数回归,支持向量机回归)建立能耗模型.4)评估模型. 这一步的主要工作是对前面建立起来的能耗模型进行评估,比较所得到能耗预测值与真实值的差别,目的是确定该模型的准确性和有效性.2.1 各部件能耗的代表参数作为云计算数据中心的任何一台服务器,哪些参数应该被选择去构建能耗模型呢?如果参数选择过少,将导致构建出来的能耗模型精度不够,如果参数选择过多,将导致开销增加且不利于该模型的扩展. 因此,选择合适的参数构建能耗模型极其重要. 对于数据中心的任何一台服务器,其总功率主要由其处理器(CPU)、内存、磁盘和网络接口卡的功率决定. 设Psystem 是服务器的功率,参数PCPU、Pmemory、Pdisk和 Pnetwork分别代表该服务器的处理器(CPU)、内存、磁盘和网络接口卡功率,则Psystem可以表示如下:Psystem = PCPU + Pmemory + Pdisk + Pnetwork + σ (1)式中:参数σ是除CPU、内存、磁盘和网络接口卡之外的其它部件功率,可看作常数. 对于处理器的功率PCPU,可用式(2)表达[18]:PCPU = (Pmax - Pidle) × U + Pidle (2)式中:参数Pmax代表该部件最大的功率,Pidle代表该部件空闲时的功率,U代表该部件的CPU利用率. 由于PCPU的值与参数U相关,所以在监控CPU的能耗时,参数“Processor Time”被选作处理器的代表性参数. 参数“Processor Time”指的是系统中所有处理器都处于繁忙状态的时间百分比,即CPU的利用率. 对于Pmemory的值,可以用式(3)表达[18]:本文的主要工作如下:1)基于“任务的特征”构建能耗模型. 不同于其它的能耗模型仅考虑CPU密集型任务,在本文中,基于“任务特征”的不同,任务被划分为三类,分别为计算密集型任务、Web事务型任务和I/O密集型任务.2)不同于已存在的能耗模型仅考虑CPU和内存部件,而忽略了磁盘和网络接口卡部件,本文所提出的能耗模型考虑了与能耗有关的所有部件如CPU、内存、磁盘和网络接口卡.3)使用“主成分分析法”分析各部件参数对能耗的贡献并选择最具代表性的参数.4)运用大量的实验证明了本文所提出能耗模型的精确性和有效性.1 相关研究目前,对能耗模型的研究可以分为两类,一类是基于系统利用率的能耗模型[8-12],另一类是基于性能计数器的能耗模型[13-17].基于系统利用率的能耗模型的主要思想是利用服务器各主要部件的利用率,构建能耗模型. 文献[8]基于服务器中资源使用情况,结合回归方法建立了线性模型. 文献[9]结合三个参数(%Processor Time,%Memory used,%Page Faults/s)提出了一种CMP (CPU利用率,内存利用率和Pagefaults)模型,相比较以往的能耗模型,该方法具有一定的优势,但该方法因选择的参数有限且没有考虑到负载的特征,其能耗模型的精度仍有待提高. 在文献[12]中,罗亮等人针对数据中心的单台服务器提出了一种高精度的能耗模型,该模型分析了不同参数对服务器能耗的影响,然后结合多元线性回归和非线性回归的方法建立能耗模型. 同样,文献[11]在线性模型(Linear Model)的基础上提出了一种改进的能耗模型叫Cubic Model,该模型认为服务器的能耗与处理器(CPU)不应是线性关系,而是立方关系. 文献[12]基于能耗和系统资源利用率的关系,提出了一种服务器能耗经验模型(Linear Model). 此类能耗模型的优点是易于实现且能耗模型的精度较高.基于性能计数器的能耗模型的基本思想可概括为:根据PMC与设备能耗之间的关系,针对不同设备(包括处理器、内存、磁盘、I/O外部设备)筛选出最具代表性的“PMC集合”;然后通过统计分析的方法,建立PMC事件与设备功耗之间的函数关系,这种关系既可以是线性关系、也可以是非线性关系. 在文献[13]中,程华等提出了一种基于细粒度的实时能耗模型,该模型由模型设定、性能计数器参数选取、数据采集、模型求解和性能评估这五个部分组成. 在此文中,作者选择PMC集合(包含二十多个参数)建立系统能耗模型. 文献[14]通过运行负载,在考虑处理器和内存等因素下,基于PMC方法建立服务器的能耗模型. 在文献[15]中,作者在考虑CPU和内存两大因素的条件下,提出了一种Ramon Model. 在文献[16]中,Singh等使用PMC方法构建实时的能耗模型. 在文献[17]中,肖鹏等首先形式化资源利用率与能耗之间的关系,然后基于性能计数器提出了一种新型的能耗模型,最后基于该能耗模型提出了一种虚拟机调度算法. 此类方法因采集到的事件太多,成本相对较高,模型也较为复杂,故不利于该模型扩充.2 能耗模型的参数选择数据中心服务器的能耗建模如图1所示. 它包含数据采样、参数的筛选、建立模型和评估模型四个步骤.1)数据采样. 数据采样是数据中心能耗建模的第一步,这一步的主要工作是采集系统的数据,采样的基本方法有基于性能计数器或者基于系统资源利用率.2)参数的筛选. 在采样数据之后,就需要对采集到的参数进行筛选. 因为采样的参数有些是与系统能耗相关的,有些是不相关的. 如何筛选这些参数呢?此时可以借助于“主成分分析法”或者“相关系数矩阵法”去筛选.3)建立模型. 这一步的主要工作是利用前面筛选出的参数,借助于数学中的线性回归或者非线性回归方法(多项式回归,幂回归,指数回归,支持向量机回归)建立能耗模型.4)评估模型. 这一步的主要工作是对前面建立起来的能耗模型进行评估,比较所得到能耗预测值与真实值的差别,目的是确定该模型的准确性和有效性.2.1 各部件能耗的代表参数作为云计算数据中心的任何一台服务器,哪些参数应该被选择去构建能耗模型呢?如果参数选择过少,将导致构建出来的能耗模型精度不够,如果参数选择过多,将导致开销增加且不利于该模型的扩展. 因此,选择合适的参数构建能耗模型极其重要. 对于数据中心的任何一台服务器,其总功率主要由其处理器(CPU)、内存、磁盘和网络接口卡的功率决定. 设Psystem 是服务器的功率,参数PCPU、Pmemory、Pdisk和 Pnetwork分別代表该服务器的处理器(CPU)、内存、磁盘和网络接口卡功率,则Psystem可以表示如下:Psystem = PCPU + Pmemory + Pdisk + Pnetwork + σ (1)式中:参数σ是除CPU、内存、磁盘和网络接口卡之外的其它部件功率,可看作常数. 对于处理器的功率PCPU,可用式(2)表达[18]:PCPU = (Pmax - Pidle) × U + Pidle (2)式中:参数Pmax代表该部件最大的功率,Pidle代表该部件空闲时的功率,U代表该部件的CPU利用率. 由于PCPU的值与参数U相关,所以在监控CPU的能耗时,参数“ProcessorTime”被选作处理器的代表性参数. 参数“Processor Time”指的是系统中所有处理器都处于繁忙状态的时间百分比,即CPU的利用率. 对于Pmemory的值,可以用式(3)表达[18]:本文的主要工作如下:1)基于“任务的特征”构建能耗模型. 不同于其它的能耗模型仅考虑CPU密集型任务,在本文中,基于“任务特征”的不同,任务被划分为三类,分别为计算密集型任务、Web事务型任务和I/O密集型任务.2)不同于已存在的能耗模型仅考虑CPU和内存部件,而忽略了磁盘和网络接口卡部件,本文所提出的能耗模型考虑了与能耗有关的所有部件如CPU、内存、磁盘和网络接口卡.3)使用“主成分分析法”分析各部件参数对能耗的贡献并选择最具代表性的参数.4)运用大量的实验证明了本文所提出能耗模型的精确性和有效性.1 相关研究目前,对能耗模型的研究可以分为两类,一类是基于系统利用率的能耗模型[8-12],另一类是基于性能计数器的能耗模型[13-17].基于系统利用率的能耗模型的主要思想是利用服务器各主要部件的利用率,构建能耗模型. 文献[8]基于服务器中资源使用情况,结合回归方法建立了线性模型. 文献[9]结合三个参数(%Processor Time,%Memory used,%Page Faults/s)提出了一种CMP (CPU利用率,内存利用率和Pagefaults)模型,相比较以往的能耗模型,该方法具有一定的优势,但该方法因选择的参数有限且没有考虑到负载的特征,其能耗模型的精度仍有待提高. 在文献[12]中,罗亮等人针对数据中心的单台服务器提出了一种高精度的能耗模型,该模型分析了不同参数对服务器能耗的影响,然后结合多元线性回归和非线性回归的方法建立能耗模型. 同样,文献[11]在线性模型(Linear Model)的基础上提出了一种改进的能耗模型叫Cubic Model,该模型认为服务器的能耗与处理器(CPU)不应是线性关系,而是立方关系. 文献[12]基于能耗和系统资源利用率的关系,提出了一种服务器能耗经验模型(Linear Model). 此类能耗模型的优点是易于实现且能耗模型的精度较高.基于性能计数器的能耗模型的基本思想可概括为:根据PMC与设备能耗之间的关系,针对不同设备(包括处理器、内存、磁盘、I/O外部设备)筛选出最具代表性的“PMC集合”;然后通过统计分析的方法,建立PMC事件与设备功耗之间的函数关系,这种关系既可以是线性关系、也可以是非线性关系. 在文献[13]中,程华等提出了一种基于细粒度的实时能耗模型,该模型由模型设定、性能计数器参数选取、数据采集、模型求解和性能评估这五个部分组成. 在此文中,作者选择PMC集合(包含二十多个参数)建立系统能耗模型. 文献[14]通过运行负载,在考虑处理器和内存等因素下,基于PMC方法建立服务器的能耗模型. 在文献[15]中,作者在考虑CPU和内存两大因素的条件下,提出了一种Ramon Model. 在文献[16]中,Singh等使用PMC方法构建实时的能耗模型. 在文献[17]中,肖鹏等首先形式化资源利用率与能耗之间的关系,然后基于性能计数器提出了一种新型的能耗模型,最后基于该能耗模型提出了一种虚拟机调度算法. 此类方法因采集到的事件太多,成本相对较高,模型也较为复杂,故不利于该模型扩充.2 能耗模型的参数选择数据中心服务器的能耗建模如图1所示. 它包含数据采样、参数的筛选、建立模型和评估模型四个步骤.1)数据采样. 数据采样是数据中心能耗建模的第一步,这一步的主要工作是采集系统的数据,采样的基本方法有基于性能计数器或者基于系统资源利用率.2)参数的筛选. 在采样数据之后,就需要对采集到的参数进行筛选. 因为采样的参数有些是与系统能耗相关的,有些是不相关的. 如何筛选这些参数呢?此时可以借助于“主成分分析法”或者“相关系数矩阵法”去筛选.3)建立模型. 这一步的主要工作是利用前面筛选出的参数,借助于数学中的线性回归或者非线性回归方法(多项式回归,幂回归,指数回归,支持向量机回归)建立能耗模型.4)评估模型. 这一步的主要工作是对前面建立起来的能耗模型进行评估,比较所得到能耗预测值与真实值的差别,目的是确定该模型的准确性和有效性.2.1 各部件能耗的代表参数作为云计算数据中心的任何一台服务器,哪些参数应该被选择去构建能耗模型呢?如果参数选择过少,将导致构建出来的能耗模型精度不够,如果参数选择过多,将导致开销增加且不利于该模型的扩展. 因此,选择合适的参数构建能耗模型极其重要. 对于数据中心的任何一台服务器,其总功率主要由其处理器(CPU)、内存、磁盘和网络接口卡的功率决定. 设Psystem 是服务器的功率,参数PCPU、Pmemory、Pdisk和 Pnetwork分别代表该服务器的处理器(CPU)、内存、磁盘和网络接口卡功率,则Psystem可以表示如下:Psystem = PCPU + Pmemory + Pdisk + Pnetwork + σ (1)式中:参数σ是除CPU、内存、磁盘和网络接口卡之外的其它部件功率,可看作常数. 对于处理器的功率PCPU,可用式(2)表达[18]:PCPU = (Pmax - Pidle) × U + Pidle (2)式中:参数Pmax代表该部件最大的功率,Pidle代表该部件空闲时的功率,U代表该部件的CPU利用率. 由于PCPU的值与参数U相關,所以在监控CPU的能耗时,参数“Processor Time”被选作处理器的代表性参数. 参数“Processor Time”指的是系统中所有处理器都处于繁忙状态的时间百分比,即CPU的利用率. 对于Pmemory的值,可以用式(3)表达[18]:本文的主要工作如下:1)基于“任务的特征”构建能耗模型. 不同于其它的能耗模型仅考虑CPU密集型任务,在本文中,基于“任务特征”的不同,任务被划分为三类,分别为计算密集型任务、Web事务型任务和I/O密集型任务.2)不同于已存在的能耗模型仅考虑CPU和内存部件,而忽略了磁盘和网络接口卡部件,本文所提出的能耗模型考虑了与能耗有关的所有部件如CPU、内存、磁盘和网络接口卡.3)使用“主成分分析法”分析各部件参数对能耗的贡献并选择最具代表性的参数.4)运用大量的实验证明了本文所提出能耗模型的精确性和有效性.1 相关研究目前,对能耗模型的研究可以分为两类,一类是基于系统利用率的能耗模型[8-12],另一类是基于性能计数器的能耗模型[13-17].基于系统利用率的能耗模型的主要思想是利用服务器各主要部件的利用率,构建能耗模型. 文献[8]基于服务器中资源使用情况,结合回归方法建立了线性模型. 文献[9]结合三个参数(%Processor Time,%Memory used,%Page Faults/s)提出了一种CMP (CPU利用率,内存利用率和Pagefaults)模型,相比较以往的能耗模型,该方法具有一定的优势,但该方法因选择的参数有限且没有考虑到负载的特征,其能耗模型的精度仍有待提高. 在文献[12]中,罗亮等人针对数据中心的單台服务器提出了一种高精度的能耗模型,该模型分析了不同参数对服务器能耗的影响,然后结合多元线性回归和非线性回归的方法建立能耗模型. 同样,文献[11]在线性模型(Linear Model)的基础上提出了一种改进的能耗模型叫Cubic Model,该模型认为服务器的能耗与处理器(CPU)不应是线性关系,而是立方关系. 文献[12]基于能耗和系统资源利用率的关系,提出了一种服务器能耗经验模型(Linear Model). 此类能耗模型的优点是易于实现且能耗模型的精度较高.基于性能计数器的能耗模型的基本思想可概括为:根据PMC与设备能耗之间的关系,针对不同设备(包括处理器、内存、磁盘、I/O外部设备)筛选出最具代表性的“PMC集合”;然后通过统计分析的方法,建立PMC事件与设备功耗之间的函数关系,这种关系既可以是线性关系、也可以是非线性关系. 在文献[13]中,程华等提出了一种基于细粒度的实时能耗模型,该模型由模型设定、性能计数器参数选取、数据采集、模型求解和性能评估这五个部分组成. 在此文中,作者选择PMC集合(包含二十多个参数)建立系统能耗模型. 文献[14]通过运行负载,在考虑处理器和内存等因素下,基于PMC方法建立服务器的能耗模型. 在文献[15]中,作者在考虑CPU和内存两大因素的条件下,提出了一种Ramon Model. 在文献[16]中,Singh等使用PMC方法构建实时的能耗模型. 在文献[17]中,肖鹏等首先形式化资源利用率与能耗之间的关系,然后基于性能计数器提出了一种新型的能耗模型,最后基于该能耗模型提出了一种虚拟机调度算法. 此类方法因采集到的事件太多,成本相对较高,模型也较为复杂,故不利于该模型扩充.2 能耗模型的参数选择数据中心服务器的能耗建模如图1所示. 它包含数据采样、参数的筛选、建立模型和评估模型四个步骤.1)数据采样. 数据采样是数据中心能耗建模的第一步,这一步的主要工作是采集系统的数据,采样的基本方法有基于性能计数器或者基于系统资源利用率.2)参数的筛选. 在采样数据之后,就需要对采集到的参数进行筛选. 因为采样的参数有些是与系统能耗相关的,有些是不相关的. 如何筛选这些参数呢?此时可以借助于“主成分分析法”或者“相关系数矩阵法”去筛选.3)建立模型. 这一步的主要工作是利用前面筛选出的参数,借助于数学中的线性回归或者非线性回归方法(多项式回归,幂回归,指数回归,支持向量机回归)建立能耗模型.4)评估模型. 这一步的主要工作是对前面建立起来的能耗模型进行评估,比较所得到能耗预测值与真实值的差别,目的是确定该模型的准确性和有效性.2.1 各部件能耗的代表参数作为云计算数据中心的任何一台服务器,哪些参数应该被选择去构建能耗模型呢?如果参数选择过少,将导致构建出来的能耗模型精度不够,如果参数选择过多,将导致开销增加且不利于该模型的扩展. 因此,选择合适的参数构建能耗模型极其重要. 对于数据中心的任何一台服务器,其总功率主要由其处理器(CPU)、内存、磁盘和网络接口卡的功率决定. 设Psystem 是服务器的功率,参数PCPU、Pmemory、Pdisk和 Pnetwork分别代表该服务器的处理器(CPU)、内存、磁盘和网络接口卡功率,则Psystem可以表示如下:Psystem = PCPU + Pmemory + Pdisk + Pnetwork + σ (1)。
2017年9月计算机工程与设计Sept. 2017第 38 卷第9 期 COMPUTER ENGINEERING AND DESIGN Vol. 38 No. 9云计算数据中心实时能耗建模陈俊,胡悦,杨娇,孟性菊(贵州师范大学教育科学学院,贵州贵阳550001)摘要:为实现能耗测量,实现云计算数据中心能耗最小化,达成云计算数据中心的能耗量化与管理,定义能耗模型的数 学表达式与测量的计算方法,针对C P U与内存运行参数分析计算机节点能耗变化,结合线性回归方法建立实时能耗模型。
实验结果验证了该模型的正确性,在系统稳定后,能耗计算精度可达96%,得出的测量方法能准确估算出云计算数据中心 能耗,为云计算数据中心能效优化提供一种方法。
关键词:云计算数据中心;实时能耗模型;多元线性回归;虚拟机;计算能耗中图法分类号:TP316 文献标识号:A 文章编号:1000-7024 (2017) 09-2494-04doi:10. 16208/j. issnl000-7024. 2017. 09. 036Cloud computing data center real-time energy modelingC H E N J u n,H U Y u e,Y A N G J ia o,M E N G X ing-ju(School of Education Science, Guizhou Normal University, Guiyang 550001,China)Abstract:The mathematicsmodule and calculation method of energy modeling were defined, the change of computer's real time energy consumption was analyzed according to CPU and memory run data. Linear regression method was combined to build real time energy consumption model. The proposed model can evaluate energy consumption and minimizethe energyconsumption of cloud computing platform, andachieve the cloud computing platform quantification and manageability. Experimental results show the computing accuracy of energy consumptionreaches 96% using the proposedmodel. The method provides a way for energy efficiency optimization.Key words:cloud computing data center;real-time energy consumption model;multivariate linear regression;virtual machine;calculation energy〇引言云计算虚拟机在线迁移技术可将云计算计算任务集中 化,从而形成较多云计算空闲无任务计算节点并将其置为 待机状态以减少云计算整体能耗。
据此,云计算平台具备 绿色计算属性,但云计算平台并无成熟的能耗计算与优化 标准,其伴随云计算节点的海量性与云计算数据中心模型 的日益扩大,急需一套针对云计算数据中心运行能耗的实 时测量计算方法以追踪云计算数据中心的即时能耗状态。
云计算平台因其规模海量性,能耗问题较易以集中方 式凸显[1’2]。
本文正是基于这一背景针对云计算平台数据中 心运行能耗建模展开研究,以期得到实时参数测量为基的云计算数据中心运行能耗数学模型,从而用以云计算数据 中心实时能耗计算。
研究针对CPU使用率与频率采用非线 性模型,针对内存使用率采用线性模型,最终以线性拟合 建立能耗数学模型。
本文采用以下步骤完成实时能耗模型建立:(1)能耗分析,针对云计算数据中心运行能耗进行成分析;(2)能耗模型设定,根据因素相关度设定模型形式;(3)数据采样,针对能耗相关运行数据进行丰富的据测量与监控;(4)能耗模型拟合,依据大量数据进行模型拟合,定模型参数;收稿日期:2016-08-24;修订日期:2016-09-30基金项目:国家自然科学基金项目(61309006);贵州省科学技术基金项目(黔科合协字师大LH字[2014] 7040号);贵州师范大学资助 博士科研基金项目(SD字[2013] 3-21号)作者简介:陈俊(1979-),男,贵州贵阳人,博士,副教授,研究方向为分布式计算、下一代互联网技术;胡悦(1993 -),女,黑龙江哈 尔滨人,硕士研究生,研究方向为基于分布式网络的云计算系统研究;杨娇(1993-),女,贵州毕节人,硕士研究生,研究方向为教育资 源信息化;孟性菊(1989 -),女,贵州毕节人,硕士研究生,研究方向为基于新媒体应用的信息技术教育。
E-mail: starcraft_cj@第38卷第9期陈俊,胡悦,杨娇,等:云计算数据中心实时能耗建模•2495 •(5)模型评估,对能耗模型针对监测能耗进行模型精 确性评估。
本文的创新之处在于,以C P U实时使用率,C P U实 时频率与内存使用率度量云计算数据中心运行能耗,研究 采用非线性模型与线性模型结合构建数学表达式,在实时 环境中取得近似于使用细粒度性能计数器计算能耗的计算 能耗精度。
1云计算数据中心运行能耗建模1.1云计算能耗建模研究分析为实现高能效云计算服务,首要问题是研究云计算能 耗度量的方法,以便建立云计算能耗模型,让云计算平台 能耗状况可视。
当前,云计算平台能耗建模分为两类,一 类为基于性能计数器的能耗建模;另一类为系统使用率的 能耗建模。
类别1为针对性能计算器参数建模。
计算机系统能耗 由各硬件功能单元能耗组成。
每一功能单元能耗可由其功 能任务计数与能耗特征计算得到。
因此,构造各硬件每一 功能单元能耗特征模型后,即可根据每一功能单元运行任 务量推算计算机系统能耗。
当前主流操作系统皆支持基于 C P U系列提供的丰富性能监控计数器进行运行参数采样[3]。
Intel从奔腾C P U系列起始则已支持性能计数器参数 监测,在IntelP6该功能进一步增强,支持更多范围的监测 参数。
当前,主流处理器皆针对硬件事件定义了丰富的性 能计数器可用于计数功能事件。
Isci即在文中针对22个性 能事件进行硬件性能采用从而建立能耗全回归数学模型进 行能耗测算[4]。
类别1方法测算云计算数据中心能耗测算 需监控参数过于庞杂,较易形成较大的能耗开销[5]。
类别2为针对硬件使用率采样。
通过大量已有研究工 作发现,计算机系统能耗与计算机硬件使用率具备较强相 关性。
更多研究发现,计算机系统能耗主要与处理器、内存、硬盘等多组件使用率相关,针对硬件使用率亦可通过 操作系统接口获得数据。
大量研究结果表明,硬件使用率 参数与计算机运行能耗具备强相关性。
Fan等发现处理器 使用率可用以表征系统能耗,并利用一元线性回归数学模 型建立了计算机运行能耗模型[6]。
基于系统硬件使用率的 能耗建模,针对不同型号的硬件设备,数学模型精度差距 较大,需重新测量拟合建立模型。
而面对虚拟化平台的能 耗建模,因虚拟资源与物理资源的分离性导致的虚拟资源 与物理资源的不一致性,尤其在在线迁移阶段虚拟资源的 跨物理机特性,虚拟机层次的能耗模型精度面临更大挑战。
本文针对类别2方法发现虽众多硬件使用率与系统能耗相 关,但影响系统能耗相关度明显较大的硬件使用率参数为 C P U、内存、硬盘,而针对硬盘而言C P U与内存使用频率 明显较高,故选择C P U与内存使用率建立云计算数据中心 能耗模型。
1.2系统运行参数能耗关系分析相关研究发现,计算机系统能耗并不能以一个稳定功 率与时间的乘积简单度量。
计算机系统实时功率是随系统 运行状态变化而变化的变量。
C P U针对内存而言具备较高 的能耗相关度,我们可根据Fan等研究得到式(1)P =K1+K20J(1) K i为线性关系常数,尺2为处理器使用率影响度参数,〇^为处理器使用率。
后文中由式(1)推导得出,为确保云 计算数据中心能耗模型数学表达式的正确性,针对式(1) 进行了实验验证。
现我们来证明式(1)的正确性。
Elnoza-hy E N[7]证明C P U频率与系统能耗相关度可建立一元线性 回归模型。
故在此,使用Linux的Userpace C P U运行状态 将C P U运行频率固定在1.5 G H z与2. 5 G H z并进行C P U 使用率与实验机功率采样。
此处,实验机为云计算平台数据中心计算节点物理机,且测试的云计算数据中心皆为同构(同构指计算节点硬件 操作系统相同)计算节点。
本云计算平台数据中心同构节点参数见表1。
表1同构计算节点软硬件参数硬盘:IT;内存:4G; CPU: Intel硬件 山―同构节点____________________酷睿i74770,3.4GH z____________软件Fedora Gore6. 0;XenHVM3. 1. 0实验机功率采样拓扑如图1所示。
其中M C E L L电量仪参数见表2。
表2 M E C E L L电量仪参数技术参数技术指标电压0.2级电流〇. 2级MECELL测量精度有功功率〇. 5级无功功率0.5级有功功率〇. 55级无功功率1级采样后数据见表3。
表3云计算同构节点P,c〇配对采样运行频率配对取样数据1. 5 GHZ2. 5 GHZ(60,0. 2)(65,0. 1)(60,0. 2)(67,0. 1)(98,0. 3)(99,0.3)(73,0. 2)(85,0. 1)(86,0. 2)(106,0.3)•2496•计算机工程与设计2017 年对表3数据可通过式(2)求取线性相关系数对表5数据用式(2)求取线性相关系数。
可得/ ,.(xi—x)(y i—y)r=t^l=1(2)V S L i(xi~_^)2通过式(2)表3数据线性相关系数为:厂(1.5GHZ)= 0.7606, r(2.5G H z)=〇. 76860线性相关系数值均大于0.75,可得知式(1)成立。
进 一步,我们据Elnozahy E N结论令式(3)P=K3+K4/3(3) K3为除C P U外其它硬件设备功耗值,/为同构节点 C P U运行频率,K4为同构节点C P U运行频率功率影响参 数。