Power Consumption Prediction and Power-Aware Packing in Consolidated Environments

针对问题:整合工作负载来降低能耗。有效利用整合技术,表征characterize应用程序的能耗。这种表征对于有效预测和实施数据中心内对能耗的适当限制——能耗预算至关重要

提出模型:定义两种电力预算:1)平均预算以捕获该水平上长期能耗的上限; 2)维持预算,以捕获超过一定阈值的持续消耗电流的任何限制。使用简单的测量基础结构,我们可以得出功耗曲线,即对应用程序功耗的统计描述。基于对多个应用程序(包括单个和合并应用程序)进行分析,开发了用于预测合并应用程序的平均和持续功耗的模型。在基于Xen的服务器上进行了实验评估,该服务器整合了从不同池中提取的应用程序。对于各种整合方案,我们能够预测平均功耗在5%的误差范围内,而持续功耗在10%的误差范围内。通过使用预测技术,我们可以确保安全而有效的系统运行-在典型情况下,我们可以通过选择满足要求的适当电源状态,将服务器上整合的应用程序数量从两个增加到三个(与现有的基准技术相比)与服务器关联的电源预算。


能耗预算——能耗的上限。

合并应用程序功耗对于整合平台的节能操作和管理是有用的。 1.有助于对合并环境中的能耗预测和控制。 2有助于在能源成本和应用程序性能之间权衡。3.使数据中心在有利可图的体制下运营,不会受到积极整合可能引起的电涌影响。 4.正在进行的制定功率基准的工作也将从这种表征中受益[38]。

合并可能会在多个空间粒度上发生,范围从单个服务器上的多个应用程序并置到工作负载转移到服务器机架或机房的子集。相应地,在这些级别中的每个级别上都需要表征功耗。在所有这些级别上,功耗的两个方面特别重要。首先,子系统内的长期平均功耗(数分钟至数小时)决定了运行该子系统所涉及的能源成本。其次,维持消耗功率超过与保险丝/断路器相关联的阈值的可能性(通常为数秒甚至是亚秒的持续时间)严重影响受这些元件保护的设备的安全运行。热效应也会增加对这两个预算的需求。在较粗的空间粒度(例如房间)下,可能需要降低平均功率以避免过多的热量。对于较小的组件(例如芯片),必须在更短的时间范围内控制功耗。在本文中,我们描述了单个应用的功率需求,并利用这些特征来预测合并应用的平均和持续功率需求。

(a)CPU饱和程序合并,(b)CPU非饱和-CPU饱和程序合并。两者能耗行为不同。

整合环境中的平均功耗和维持功耗取决于各个应用程序的功耗以及资源使用模式。 功耗预测需要识别这些依赖性。 此外,预测的成功还取决于用于测量和表征个人消费的方法。 可以解决这些问题的测量技术和预测模型的设计是本文的重点。


决定合并决策的时间尺度(与工作负载特性变化有关)后,需要将能耗限制在应用程序性能/收入和能源成本之间。 这种决策可能每隔几分钟或几小时执行一次(作为long-term),可能涉及解决复杂的优化问题,以平衡通过操作一部分资源产生的性能/收入 花费在维护,操作电源和冷却上的费用。 无论此决策有何细微差别,它都需要建立各种级别的长期能源消耗限制机制。 我们将这种限制称为通过合并技术分配给它的平均功率预算。

维持功率预算是由数据中心中与该组件关联的保险丝或断路器所定义的各种硬件组件的可靠性需求产生的。(也叫做peak power)数据中心中硬件组件的持续功率预算由该组件中部署的断路器的时间-电流特性曲线表示。

一个Amp断路器的时间-电流特性曲线。X轴表示从电路汲取的电流,Y轴表示在断路器跳闸之前电流持续的时间

数据中心中硬件组件的维持功率预算由该组件中部署的断路器的时间-电流特性曲线表示。断路器的时间-电流特性曲线可作为其规格表的一部分获得。持续功率预算由元组(S,L)表示,表示在长度L的任何间隔内维持的最大电流S的界限。我们引用单个持续功率元组来表示电路的持续功率预算。由于维持能耗对应于在一个时间间隔内连续保持的最大功率,因此我们用使用该时间间隔的有效功率来表示维持能耗但是我们的预测技术足够通用,可以合并指定时间间隔内功耗的其他统计范围,包括最大和平均功耗。


2.离线分析能耗

将万用表连接到脱机的服务器,并每tp时间单位测量一次服务器的能耗。所产生的(瞬时)能耗样本时序称为应用程序的能耗曲线。将能耗曲线转化为能耗使用分布图

w^{I_p}_A代表应用程序A在Ip时间内的平均能耗。通过在功率分布图上移动大小为Ip的时间窗口,然后根据这些值构造分布来进行估算。图3示出了将功率简档转换成功率使用分布的过程。作为配置文件的一部分,我们还分析了运行应用程序的服务器的空闲功率(对于我们的服务器,约为156 W)。


将能耗曲线转化为能耗使用分布图

**保证工作负载的现实性和可行性。数据中心中应用程序是独立启动的,并且工作负载要在一定时间粒度上(每日周期)是重复的。


3.3实验

在本节中,我们将介绍各种应用程序,以说明推导应用程序功耗行为的过程。 我们还将介绍有关资源使用和性能的选定信息。 这些实验为我们提供了许多关键的见解:1)应该如何进行离线分析; 2)应用程序的能耗与其各种资源的使用之间的关系; 和3)这些应用的能耗变化程度

我们的测试平台由几台Dell PowerEdge服务器组成(详细信息显示在表1中)。 我们使用这些服务器之一来运行我们分析的应用程序。 我们将Signametrics SM2040万用表(详细信息在表2中)串联连接到该服务器的电源。 万用表位于另一台服务器的PCI总线上,仅用于记录目的。 该万用表能够每毫秒记录一次功耗。 每个记录的功耗是每毫秒的有效(或均方根)功率。

观察1.非CPU饱和应用程序的功率分布的方差比CPU饱和应用程序的方差高(和更长的拖尾)。

观察2.非CPU饱和的应用程序,在较低的功耗状态下,CPU利用率会提高,并且电源分配的突发性会降低。

观察3.CPU饱和和非CPU饱和的应用程序,在不同的CPU功率状态下工作时,功率性能的权衡差异很大。 尽管很容易预测CPU饱和的应用程序,但非CPU饱和的应用程序预测难度大。

观察4.在同时放置CPU饱和的应用程序与同时放置CPU饱和和非CPU饱和的应用程序时,平均能耗存在显着差异。

观察5.合并应用程序的维持功耗表现与平均功耗显着不同。


缺点(A)是由于假设CPU处于饱和状态:首先,基线方法无法捕获CPU在给定长度L的某些持续时间内的某些时间处于空闲状态的可能性。任何此类持续时间都不应视为违反持续功率的持续时间 发生预算(回想一下,我们假设持续预算大于闲置电量)。

缺点(B):假设能耗是平稳的。对于CPU饱和的程序是这样,对于CPU非饱和的程序,能耗变化很大。

缺点(C):忽略了CPU使用率的差异。假定应用程序将始终完全按照其CPU分配使用CPU。尽管此假设对于一组并置的CPU饱和的应用程序(它们的CPU使用模式不表现出可变性)是正确的,但当甚至有一个应用程序不遵循这种行为时,它也会引入不准确性。 特别是,在预测由一个或多个非CPU饱和的应用程序组成的集合的持续电源行为时,它会变得不准确(当这些应用程序因I / O活动而被阻塞时,那些空闲时间很可能会被其他并置的应用程序使用,从而导致 在与Rcpu为应用程序指定的CPU分配不同的CPU分配中)。


合并设置中应用程序的CPU使用率主要取决于两件事:1)合并设置中应用程序的CPU预留,以及2)应用程序的CPU需求(长度L的整个周期)。 当预留量高于需求时,则意味着该应用程序具有备用CPU,可供预留量小于其需求的其他应用程序使用。 大多数基于预留的调度程序(如我们的调度程序)在这些有需要的应用程序之间平均分配备用CPU。 我们对合并设置中应用程序的CPU使用率的估计已考虑到上述因素。 我们首先构建分数CPU需求的分布。可以在长度L的持续时间内对每个应用程序进行修改。这些分布可以很容易地从应用程序的CPU使用情况配置文件中得出。


多服务器的持续能耗预算

目标——计算一个PDU上m个服务器在S功率单元L长度下的概率Pr_{B1,B2,...Bm}(S,L)。PDU的最小能耗值等于所有服务器平均能耗之和。

PDU的最大功率计算:

步骤1。 找出长度为L个时间单位的时间间隔内单个服务器(连接到PDU)的平均能耗分布。

第2步。 将所有这些平均能耗分布相加。 假设个人消费是独立的(一个合理的假设),则合计的最终分布可以根据基本概率理论进行计算。


总结

我们需要确保在企业级数据中心中整合应用程序的新兴技术表现出强大且可预测的功耗行为,从而激发了我们的工作动力。 整合工作负载已成为抑制企业级数据中心内快速增长的能源支出的关键机制。 但是,在可以有效利用这些基于整合的技术之前,我们必须能够预测并强制执行数据中心内各个级别的功耗限制。 特别是,发现两种电力预算(在相对粗略的时间尺度上定义的平均预算和在较短的时间尺度上定义的持续预算)对于数据中心的安全和盈利运营至关重要。

我们的研究针对服务器和一组服务器上共存的应用程序组的平均和持续功耗开发了预测模型。 我们在基于Xen的平台上实施了我们的技术,并在各种整合设置中对其进行了评估。 我们演示了这些预测技术如何使我们能够实现高效而安全的系统运行。

合并设置中应用程序的CPU使用率主要取决于两件事:1)合并设置中应用程序的CPU预留,以及2)应用程序的CPU需求(长度L的整个周期)。 当预留量高于需求时,则意味着该应用程序具有备用CPU,可供预留量小于其需求的其他应用程序使用。 大多数基于预留的调度程序(如我们的调度程序)在这些有需要的应用程序之间平均分配备用CPU。 我们对合并设置中应用程序的CPU使用率的估计已考虑到上述因素。 我们首先构建分数CPU需求的分布-

可以在长度L的持续时间内对每个应用程序进行修改。这些分布可以很容易地从应用程序的CPU使用情况配置文件中得出。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容