CN102959510B - 用于计算机功率和资源消耗建模的方法和系统 - Google Patents
用于计算机功率和资源消耗建模的方法和系统 Download PDFInfo
- Publication number
- CN102959510B CN102959510B CN201180032474.9A CN201180032474A CN102959510B CN 102959510 B CN102959510 B CN 102959510B CN 201180032474 A CN201180032474 A CN 201180032474A CN 102959510 B CN102959510 B CN 102959510B
- Authority
- CN
- China
- Prior art keywords
- prediction
- power
- computing devices
- model
- following
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- H—ELECTRICITY
- H05—ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
- H05K—PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
- H05K7/00—Constructional details common to different types of electric apparatus
- H05K7/14—Mounting supporting structure in casing or on frame or rack
- H05K7/1485—Servers; Data center rooms, e.g. 19-inch computer racks
- H05K7/1498—Resource management, Optimisation arrangements, e.g. configuration, identification, tracking, physical location
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Sources (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Supply And Distribution Of Alternating Current (AREA)
Abstract
方法和系统被提供以近实时地或实时地对整体式(物理的)计算设备和虚拟的计算设备两者的功率消耗进行精确地建模,允许精确地预测和分类功率和/或资源使用,以及仅基于系统的操作工作负载检测异常功率和/或资源利用率。
Description
相关申请
本申请要求在2010年8月31日提交的、标题为“用于功率能力规划的方法和系统(Method and System for Power Capacity Planning)”的美国临时专利申请序列号No.61/378,928的权益,其通过引用的方式被并入此处。
技术领域
本发明一般涉及计算和信息技术(“IT”)功率消耗,并且更特别地,涉及用于预测和分类计算机系统中的功率和/或资源利用的设备。
背景技术
现代的数据中心规划和操作要求全面解决遍及数据中心环境的能量管理,包括涉及多个数据中心的场景。在现代的IT环境中,仅进行IT设备的性能管理通常不再是足够的;对数据中心性能、利用以及能量消耗的详细的监视和测量以支持详细的成本控制、高水平的IT安全、以及“更绿色的”环境是现今典型的商业需求。现代的数据中心和/或其他计算系统或过程产生了高的资源需求、并且这些资源的相关联的成本使高水平的能力规划成为必要。
常规的能力规划功率消耗预测工具包括“查找表”工具,所述“查找表”工具需要用户在该工具检索对应的预测功率消耗之前输入系统配置参数。这些工具中的大多数不把当前和/或更新的系统的相应的操作工作负载考虑为输入。相反地,这些工具的典型的输入仅来自静态或半静态测量,所述静态或半静态测量来自被连接到现有系统(硬件)的监视工具。此外,常规的服务器常常托管多个应用,在IT环境中,所述多个应用可能来自不同的商业单元,因为现代的公司发现如下是精明的:将来自不同商业单元的应用遍及其硬件而分布以限制硬件故障对各个商业单元的影响。
此外,现代的数据中心和/或其他计算系统或过程常常利用虚拟化,或“云计算”——基于因特网的计算,由此一经请求,将共享的资源、软件、和其他信息提供给计算机和其他设备。云计算是提高对由因特网提供的远程计算站点的访问的便捷性的副产品和结果,并且已经变得日益流行,因为其允许用户高水平的使用服务器,而不需要他们具有在支持其数据中心和/或其他计算系统或过程的云中的技术基础结构方面的专长,或具有在支持其数据中心和/或其他计算系统或过程的云中的技术基础结构之上的控制。许多云计算供应采用效用计算计费模型,该模型类似于基于消费的传统的公用服务(诸如电力)的计费。基于工作负载的能量和资源利用管理典型地在云计算环境中是更重要的,因为实际的系统设备不能被直接地管理、监视或计量。
现代的计算具有离开物理计算机并到虚拟机上的持续迁移的工作负载。基于虚拟机的使用和与任何真实机器的对应的程度,虚拟机被分为两个主要的类别。系统虚拟机提供支持完整的操作系统(OS)的执行的完整的系统平台。相反地,进程虚拟机典型地被设计为运行单一程序,意味着其支持单一进程。常规的计算不提供近实时的或实时的监视这样的设备的功率消耗或功率使用的方法,这样的设备没有和/或不能被连接到被计量的电源。此外,繁忙的虚拟机能够容易地达到它正在其上运行的物理机的内存限制,需要该虚拟机管理员在被称为“Vmotion”的过程中将所述虚拟机迁移到其内存负荷更小的另一目标平台。将一个或多个虚拟机Vmotion到位于不同的加热、通风、以及空气调节(“HVAC”)区域中的目标平台能够在该HVAC区域中创建“热点”,致使该HVAC系统花费大量能量以在该区域中重建稳定状态。总的来说,功率消耗预测技术的当前状态不包含允许对将虚拟机分配到主平台进行管理和优化的方法。此外,这些方法没有把当前或者更新的系统的操作工作负载考虑为输入数据。
最后,现代的计算的增长已经见证了在计算机犯罪以及其他系统能力的异常的、秘密的、和未经授权的使用的对应的增长。常规的异常检测方法和系统通过网络流量和/或系统日志来区分异常的使用。然而,分类这样的攻击和其他异常使用随着攻击者的技巧增长而变得更困难。例如,高级的恶意软件能够发起避免正常检测方法的攻击并且仅导致系统或过程的功率和/或资源使用稍微增加,其是无法由当前检测方法常规地分辨的标志。此外,这样的恶意软件能够隐藏在系统的信任的进程之内,例如,OS级别的软件任务,其可以包括板载监视装置自身,使得在系统故障之前检测这样的异常事件甚至更加困难或者几乎不可能。
发明内容
根据与本发明相一致的方法和系统,提供用于预测计算系统中的未来功率消耗的数据处理系统中的方法。该方法包括接收要预测其功率的一个或多个计算设备的指示,以及接收与该一个或多个计算设备相关联的一个或多个输入参数。所述方法进一步包括:自动地生成在未来时间间隔上该一个或多个计算设备的功率消耗的预测,并传送所生成的预测。
在一个实现中,提供了用于预测计算系统中的未来功率消耗的数据处理系统。所述数据处理系统包括存储器,所述存储器包括指令以致使处理器接收要预测其功率的一个或多个计算设备的指示,以及接收与该一个或多个计算设备相关联的一个或多个输入参数。所述指令进一步致使该处理器自动地生成在未来时间间隔上该一个或多个计算设备的功率消耗的预测,并传送所生成的预测。该数据处理进一步包括被配置为执行所述存储器中的指令的处理器。
在另一实现中,提供了用于确定计算系统中的当前功率消耗并预测未来功率消耗的数据处理系统中的方法。所述方法包括接收要预测其功率的一个或多个计算设备的指示,以及接收与该一个或多个计算设备相关联的一个或多个输入参数。所述方法进一步包括自动地生成下列中的一个:1)该一个或多个计算设备的功率消耗的当前状态,以及2)在未来时间间隔上该一个或多个计算设备的功率消耗的预测,并且传送下列中的一个:(1)功率消耗的当前状态,以及(2)所生成的预测。
附图说明
图1示出了与根据本发明的方法和系统相一致的计算机系统。
图2示出了与根据本发明的方法和系统相一致的用于整体式(一个或多个)服务器功率能力规划器(PCP)的用户界面的示例性系统窗口视图。
图3示出了根据与本发明相一致的方法和系统的用于基于非虚拟化的服务器来测量和/或建模资源利用的方法中的步骤。
图4示出了与根据本发明的方法和系统相一致的基于工作负载简档定义的唯一的、基于时间的对功率使用的预测的另外的示例性系统窗口视图。
图5示出了根据与本发明相一致的方法和系统的用于基于先前定义的工作简档来测量和/或建模资源利用的另外的方法中的步骤。
图6示出了与根据本发明的方法和系统相一致的用于(一个或多个)虚拟机功率能力规划器的用户界面的另外的示例性系统窗口视图。
图7示出了根据与本发明相一致的方法和系统的用于基于虚拟化的和/或非虚拟化的服务器(整体式)来测量和/或建模资源利用的另外的方法中的步骤。
图8示出了与根据本发明的方法和系统相一致的示例性模型创建用户界面的另外的示例性系统窗口视图。
图9示出了根据与本发明相一致的方法和系统的用于创建资源利用预测模型的方法中的步骤。
图10示出了与根据本发明的方法和系统相一致的综合计量器的另外的示例性系统窗口视图。
图11示出了根据与本发明相一致的方法和系统的用于基于所述综合计量器的输入定义来测量资源利用的方法中的步骤。
图12示出了与根据本发明的方法和系统相一致的示例性功率估计器的另外的示例性系统窗口视图。
图13示出了根据与本发明相一致的方法和系统的用于基于先前获得的操作工作负载来从资源利用数据估算服务器功率消耗的方法中的步骤。
图14示出了与根据本发明的方法和系统相一致的示例性异常检测器的另外的示例性系统窗口视图。
图15示出了根据与本发明相一致的方法和系统的用于检测异常的计算资源利用的方法中的步骤。
图16示出了根据本发明的用于生成资源利用预测模型的方法中的步骤。
图17示出了根据与本发明相一致的方法和系统的从由预测模型做出的各种单独的预测计算单一的资源利用预测的方法中的步骤。
图18示出了根据与本发明相一致的方法和系统的用于基于如下工作负载范围而综合地生成监督的训练数据(被用于生成机器学习模型)的示例性方法中的步骤:在该工作负载范围中,独立的(以百分比表示CPU和存储器利用率)以及非独立的(相应于来自CPU和存储器使用的每组值的以瓦特计的功率提取)的变量值被生成。
具体实施方式
根据本发明的方法和系统提供了整体式物理服务器、设施设备、各个虚拟机、在共同的物理主机上运行的虚拟机组、以及在这样的机器上运行的各个进程和应用程序中的精确的功率和/或资源消耗预测和分类。与本发明相一致的方法和系统应用域不可知数据挖掘以及机器学习预测和分类建模来定量地表征数据中心和其他相关联的计算和基础结构系统和/或进程的功率消耗和资源利用特性。
此外,基于工作负载的能量和资源利用管理测量、预测、和分类使组织能够对在他们的数据中心中使用的每一千瓦(“kW”)能量设置值,以及精确地向他们的客户收取回操作费用。与本发明相一致的方法和系统进一步使得组织能够基于能量成本和可用性来调度时间并安排应用程序运行。具有地理上不同的数据中心的公司可以能够调度某些应用以在位于在其处时间为夜间的区域中的数据中心上运行,从而可能地节省成本,因为能量费率典型地在夜晚是更低的。此外,当组织使用云计算时,总的能量成本被分摊。与本发明相一致的方法和系统允许与能量成本相关联的单个工作负载的更大的透明性,其可以被使用在财务建模和量度中。此外,与本发明相一致的方法和系统使得用户能够比较他们的软件的能量效率。
数据挖掘和/或机器学习(所述术语被可互换地使用在本领域中)是与允许计算机基于经验数据进化行为的算法的设计和开发有关的科学学科。机器学习的焦点是自动地学习推断和识别这样的数据中的复杂的模式以基于这样的模式和推断出的知识来做出明智的决定。困难在于以下事实:在给定所有可能的输入的情况下的所有可能的行为的集合通常太复杂以致不能人工地描述或以半自动的方式描述。域不可知论定义了数据挖掘和机器学习的特性,由此相同的原理和算法适用于除服务器、个人计算机或工作站以外的许多不同类型的计算设备或非计算设备;包括在数据中心之内以及数据中心之外的相异的设备,诸如UPSs、联网的存储处理器、发电机、电池备份系统以及包括HVAC控制器的设备的其他可应用部件。该特性允许用于单个和多个数据中心以及云计算基础结构的可缩放的基础结构管理(“IM”)。特别地,发现并描述数据中的结构模式(其能够有助于解释这样的数据并根据这样的数据做出预测)的预测模型、过程或算法是在机器学习库工具包(Weka)的帮助下用编程的方式而被创建的,该工具包能够根据硬件(虚拟化的或非虚拟化的)资源利用率预见和分类功率消耗和资源使用。该模型有效地提供了对能量消耗(例如以千瓦(“kW”)计)、功率成本(例如以每个所预测的时间段的总成本计)、热量耗散(例如以每小时英制热量单位(“BTU/hr”)计)、温室气体效应(例如以每年磅(“lbs/年”)计算)的预测,以及其他相关的预报和资源利用分类。
功率能力规划器(“PCP”)是包括数据中心基础结构管理(“DCIM”)系统的一些特征的组件应用。数据中心基础结构管理包括数据中心中所需的和所使用的设备和资源的控制、监视调整以及其他管理功能。所述PCP基于可能的、用户输入的、时变的服务器工作负载为虚拟化的和非虚拟化的服务器两者提供功率消耗、热量耗散、功率的区域性每单元成本、以及区域性温室效应预测。工作负载是由运行的商业应用所要求的系统(服务器)资源(CPU和存储器)利用率。工作负载包括软件应用按照期望的那样起作用所需的CPU和存储器资源。工作负载可以基于(一个或多个)商业应用或任何其他适当的应用当前正在执行多少工作而变化。工作负载通常在托管该(一个或多个)应用的系统内被测量。工作负载可以被“综合地”生成以便有效地优化预测和分类能力。预测和分类模型实际上独立于(一个或多个)目标系统上运行的软件。无论是虚拟化的还是非虚拟化的,硬件的功率提取/占用是被用于生成所述预测和分类模型的主要因素。任何数量的具有相等或相似的功率消耗占用的服务器可以被在一起成组和分析,提供按照需要合并或扩展服务器数量的能力。这也有助于将服务器(通常是虚拟化的)“重新定位”或“移动”到例如数据中心中的其他负荷更小的HVAC冷却区域。所述PCP也允许为先前没有已被分类的那些虚拟的或非虚拟化的平台实时地、有效率地、定制地创建模型。
PCP应用可以使用机器学习技术,所述机器学习技术允许基于包含诸如资源(CPU和存储器)利用率的独立变量(输入)的数据资源来对诸如所消耗的功率的非独立变量(输出)进行预测和分类建模,所述资源利用率可以被测量为百分率。
所述PCP可以是启用web的并且可以包括客户前端(或web服务)和服务器后端,在所述客户前端中,用户输入相关的参数,同时进行一些预先处理,在所述服务器后端中进行大部分处理以及执行机器学习模型。在一个实现中,所述客户前端和所述服务器后端之间的桥梁是Java服务器页面(“JSP”),其有助于在因特网上将HTTP协议用于快速并且有效率的分布式数据共享。为了高质量图形,所述客户前端可以例如使用Adobe Flex/Flash多媒体优化的XML("MXML")和ActionScript而被实现。所述服务器后端可以使用Java和/或OracleFusion中间件而被实现以优化可移植性。然而,可以使用任何其他合适的实现。
图1示出了与根据本发明的方法和系统相一致的示例性计算机系统100。计算机系统100包括用于传送信息的总线102或其它通信机制,以及用于处理所述信息的与总线102相耦接的处理器104。计算机100还包括被耦接到总线102的主存储器106(诸如随机存取存储器(RAM)或其他动态存储设备),用于存储信息以及要被处理器104执行的指令。此外,主存储器106可以被用于在执行要被处理器104执行的指令期间存储临时变量或其他中间信息。主存储器106包括用于实现根据与本发明相一致的方法和系统的系统的程序150。计算机100进一步包括被耦接到总线102的只读存储器(ROM)108或其他静态存储设备,用于存储静态信息和用于处理器104的指令。存储设备110(诸如磁盘、光盘或基于网络的驱动器)被提供并且被耦接到总线102,用于存储信息和指令。这些组件中的每一个均可以有多于一个。
根据一个实施例,处理器104执行被包含在主存储器106中的一个或多个指令的一个或多个序列。可以从另一计算机可读介质(诸如存储设备110)将这样的指令读入到主存储器106中。主存储器106中的指令序列的执行致使处理器104执行此处所描述的过程步骤。多处理布置中的一个或多个处理器也可以被采用以执行被包含在主存储器106中的指令序列。在可替代的实施例中,可以使用硬连线电路来代替软件指令或与软件指令相结合。因此,实施例不限于硬件电路和软件的任何特定的组合。
尽管相对于主存储器106和存储设备110而被描述,与本发明相一致的方法和系统的指令和其他方面可以驻留在另一计算机可读介质(诸如软盘、软磁盘、硬盘、磁带、CD-ROM、磁介质、光学介质或物理介质、RAM、PROM、EPROM、FLASH-EPROM、任何其他存储器芯片或盒式磁带、或计算机可以从其读取的任何其他介质,现在已知的或以后发现的)上。
计算机100还包括被耦接到总线102的通信接口118。通信接口118提供耦接到网络链路120的双向数据通信,所述网络链路120被连接到一个或多个网络122,诸如因特网或其他计算机网络。也可以实现无线链路。通信接口118可以发送和接收信号,所述信号承载表示各种类型的信息的数字数据流。
在一个实现中,计算机100可以作为计算机网络122(诸如因特网)上的web服务器(或服务)而工作。计算机100还可以表示因特网上的其他计算机,诸如具有web浏览器的用户的计算机,并且该用户的计算机可以具有与计算机100类似的组件。
PCP的服务器规划器组件允许基于可能的、用户定义的、时变的区域工作负载来预测功率消耗、热量耗散、区域性功率成本、以及区域性温室气体效应。它可以使用预测模型。时变的工作负载简档允许有效率地和实际地预测随时间波动的功率消耗和冷却需求。这些功率消耗预测可以被用于规划例如数据中心中的计算机使用。
所述服务器规划器允许用户针对具有相似的功率提取需求的任何数量的同构或异构服务器评估功率消耗。在一个实现中,它可以针对具有不相似的能量消耗需求的服务器工作。通常,如果异构服务器在大量工作负载期间和在空闲时间具有相似的功率消耗水平,则这些异构服务器可以被分组在一起。所述服务器规划器也定义工作简档(关于图4其进一步被讨论)。工作简档允许对时间敏感的工作负载在更大时间间隔内变化。在一个实现中,工作简档可以由开始时间和结束时间定义,服务器或服务器组在所述开始时间和所述结束时间之间针对功率消耗而被建模。在一个实现中,所述工作简档可以进一步被负载或功率提取定义为服务器能力的百分比,所述服务器在该百分比被建模,该负载可以进一步由误差容限或“+/-”定义。最后,在一个实现中,工作简档可以进一步由独立变量(CPU和存储器功率消耗)的相对功率消耗定义,例如通过指定存储器加强的、CPU加强的或平衡的工作负载。工作简档是在时间段之上定义的资源利用(就CPU和存储器使用而言)的计算机化的描述。例如,营业日工作负载需求不同于周末或假期工作负载,并且因此在一些情况下所述(一个或多个)服务器的能量消耗可能显著地变化。此外,定义在特定时间或间隔(例如仅在周末和/或假期期间、或仅在一年的第一季度内)改变工作负载的工作简档是可能的。
所述服务器规划器也显示不同的可能场景的结果,并且可以允许在相同图表上“堆叠”绘制的/图示的场景,例如,在特定时间间隔具有确定的功率提取的一定数量和类型的服务器。在相同的各个图表内以图形和统计地方式比较由不同的可能场景(例如由工作简档定义的)所产生的功率、热量、成本和温室效应是可能的。场景可以包括例如将具有大约270kW的平均功率提取的50个Dell PE2900服务器的10个机架与具有大约90kW的平均功率提取的80个Dell PE2900服务器的2个机架相比较。
图2示出了对应于与本发明相一致的服务器规划器实现的示例性页面视图200的一个实现。当复选框202被高亮显示时(例如通过在该复选框上单击),由用户定义的模型可以被显示在模型选择下拉菜单204中。用户可以随后从模型选择下拉菜单204中选择在该会话中使用的模型。在一个实现中,具有后缀“REP”的模型名称可以被用于预测。模型名称上的后缀“REP”指示该模型已经被创建并且已准备好被使用。“REP”代表REPTree,其是来自被用于实现该模型的Weka库工具包的机器学习算法。在该实现中,使用PCP的模型生成实现来创建其他模型,其在下面关于图16而被描述。在另一实现中,用户定义的模型取代相同会话中的从服务器类型选择下拉菜单206中选择的任何服务器类型。服务器类型下拉菜单206中可用的选择对应于先前被建立简档并建模的用于硬件平台的模型。在一个实现中,可以存在为先前表征的每个服务器类型预定义的多个模型。在另一实现中,在工作负载% 208中输入的最接近匹配工作负载百分比或作为服务器能力的百分比的功率提取的模型规定功率估计。服务器计数210表示被建模的服务器的数量。在一个实现中,此字段的缺省值为1。该值可以被改变,例如以建模包括多个相同类型的服务器的服务器机架。合并要被建模的服务器的数量也是可能的。例如,用户可以反而仅建模50个以70%工作负载运行的服务器,而不是建模80个以35%工作负载运行的服务器。核/服务器212可以通过指定在服务器中总共使用多少个核来帮助定义为定义的服务器类型所选择的模型。在一个实现中,缺省值为8。成本214表示针对用户的区域性功率成本。在一个实现中,按照每千瓦时(“kWh”)美元来度量成本。在另一实现中,缺省值是在美国的平均功率成本,例如0.11美元/kWh。CO2下拉菜单216、NOx下拉菜单218、以及SOx下拉菜单220显示关于二氧化碳、一氧化氮和各种多氧化氮、以及一氧化硫和各种多氧化硫的年排放速率;在由用户从相应的下拉菜单中选择的状态中,其中在相应的下拉菜单的下面示出相应的值。在一个实现中,按照lbs/kWh度量排放。在另一实现中,此数据的来源是eGRIDweb版本-2007.1.1。
工作负载% 208是为所选择的服务器定义的工作负载。在一个实现中,工作负载可以被定义为被服务器的(一个或多个)商业应用所利用的CPU和存储器的百分比。+/-222表示在输入的工作负载百分比中用户定义的可接受的方差水平。工作负载类型224定义在CPU利用率和存储器利用率之间的所选择的工作负载的分布。例如,如果用户输入30%的工作负载%并且选择“平衡的”工作负载类型(其被定义为几乎相等的CPU和存储器利用率),则所述系统基于相似的CPU利用率和存储器利用率来创建模型,在此情况下针对每个大约15%。其他可能的工作负载类型包括,但不限于,“CPU加强的”或“存储器加强的”。在开始226中,用户输入分析的开始日期。在结束228中,用户输入分析的结束日期。在时间间隔期间下拉菜单230中,用户可以输入建模的时间间隔的时间单位。例如,菜单选项可以包括小时、天、周、月、年或任何其他时间单位。
一旦用户输入了参数,用户可以点击处理232以基于输入参数启动预测过程。在一个实现中,一旦结束模型处理,所述PCP就自动地打开功率预测图表。图2(a)示出了对应于此功率预测图表的示例性页面视图250的一个实现。线252、线254以及线256表示针对定义的工作简档的功率使用的预测的值。在一个实现中,将鼠标定位在线252、线254或线256之上导致该系统显示针对鼠标定位在其之上的数据点以及针对整条线的统计数据。例如,该系统可以显示所绘制的工作简档、鼠标定位在其之上的点的值、以及所测量的针对该工作简档的平均值、高值和低值。
点击配置234打开页面视图200,服务器规划器实现的初始输入参数定义屏幕,其允许用户输入和选择生成功率预测所需的值。点击工作简档236允许定义特定的工作简档,该工作简档在给定的时间间隔或子间隔内需要不同的工作负载,如下面关于图4和图5所讨论的。如果例如给定的服务器机架预计在要被建模的期望的时间间隔的过程中经历使用的周期性变化,则该实现是有用的。点击功率238显示包含针对所输入的参数的功率使用估计的图表。在一个实现中,以kW度量功率。点击热量240显示包含针对所输入的参数的耗散的热量估计的图表。在一个实现中,以BTU度量耗散的热量。点击成本242显示包含针对所输入的参数的成本估计的图表。在一个实现中,以美元度量成本。点击CO2 244显示包含针对所输入的参数的区域性CO2、SOx和NOx输出排放速率估计的图表。在一个实现中,以lbs/年来度量这些。在另一实现中,所定义的区域可以是美国的州。在一个实现中,用户可以通过在给定的图表中的期望的点上点击来在(通过点击功率238、热量240、成本242或CO2 244而打开的)前述图表的任何一个中的特定的数据点上放大(zoom-in)。点击清除图表246关闭当前显示的图表并且显示配置屏幕,页面视图200。点击关闭248关闭所述服务器规划器屏幕。
图3示出了与本发明相一致的使用服务器规划器实现的示例性方法中的步骤,其允许定义在时间间隔上的工作负载场景。首先,用户生成时间序列工作负载,在一段时间上应用的工作负载。工作负载由用户输入为CPU和存储器利用的百分比。在内部,通过输入要被建模的期望的工作负载大小、持续时间和工作负载类型(例如,CPU加强的、存储器加强的或平衡的),针对由用户输入的整个时间间隔综合地生成CPU和存储器利用(步骤300)。接下来,用户经由例如HTTP协议向服务器后端发送数据有效载荷,例如时间序列(在一段时间上的工作负载)、机器模型、机器类型和CPU核心数(步骤302)。所述数据有效载荷被从所述客户前端发送到所述服务器后端,并且在服务器后端上该软件确定存储模型的模型库是否包含先前为输入的机器类型生成的模型(步骤304)。如果该库包含这样的模型,则可以调用该模型(步骤306)。基于CPU核心数和小的工作负载增量(例如,5%或10%)来创建模型。下面关于图17进一步详细描述的过程以统计地方式从针对每个数据点的该模型的预测的总集来得到预测的值。然而,如果在步骤304中该软件确定所述模型库不包含先前为输入的机器类型生成的模型,则其可以调用经由PCP的模型创建特征而创建的模型(步骤308)。下面关于图8和图9进一步详细地描述模型创建。此外,当可以综合地生成机器训练数据(例如,被用作到预测模型中的输入的资源利用独立变量(CPU和存储器))时,PCP模型创建(步骤308)可以取代从模型库的模型调用(步骤306)。PCP模型可以处理广泛的各种工作负载。在调用或创建适当的模型之后,该模型为所输入的数据生成预测值,例如,针对每个CPU的以kW计的功率消耗以及存储器利用率值。可以为了统计有效性随机地生成多个时间序列(例如10个),并且随后将对所述时间序列的预测值发送回所述客户前端(步骤310)。所述客户前端根据该多个时间序列中的每个时间序列的每个值计算平均值、高值和低值(步骤312)。在一个实现中,此表示可以是图形的。在其他实现中,针对来自所述多个时间序列(10个版本的初始生成的时间序列)的每个值计算平均预测值、高预测值和低预测值,并且也经由线图的智能数据提示特征而被显示,其中绘图工具提供在小的弹出窗口中显示与所绘制的时间序列的特定数据点相关联的任何附加信息的能力。在其他实现中,服务器计数可以被用于调整时间序列点的大小。最后,可以呈现图示的时间序列(步骤314)。在一个实现中,针对每个时间序列点的缩放能力和智能数据提示可以在光标定位上是即时可用的。在其他实现中,各种场景和时间序列可以被“堆叠”在相同的图表上。
用户也可以在服务器规划器中执行所述PCP的“工作简档”功能。工作简档允许根据针对整个时间间隔定义的那些定义不同的并且时间变化的工作负载。它允许定义特定的用户情况,例如当需要用于给定的月的每个周末的特定的工作负载时的情况。一旦已处理了可能的场景,所述工作简档特征可以被激活。在一个实现中,在这样的处理之后,PCP自动地导航到功率屏幕,显示随时间的功率消耗的屏幕。在此点处以及在图表的分析之后,用户可以激活工作简档以便定义在给定的场景的时间间隔内的任何特定的工作负载需求,诸如定义在先前定义的该场景的完整时间间隔内的特定的(一个或多个)时间段上的工作负载的能力。
图4示出了对应于与本发明相一致的服务器规划器实现的工作简档功能的示例性页面视图400的一个实现。简档402允许特定的工作简档的命名。在稍后引用以及可能重新使用工作简档中命名可能是有用的。开始404允许在整个时间间隔内该工作简档在其处开始的特定时间的输入。在一个实现中,此字段可以通过从滚动条406选择开始点而被以图形的方式定义,这可以使用基于给定的时间间隔的时间单位。结束408允许在整个时间间隔内该工作简档在其处结束的特定日期的输入。在一个实现中,此字段可以通过从滚动条406选择结束点而被以图形的方式定义。负载410定义当前工作简档期间实际有效的工作负载。+/-412定义为当前工作简档定义的工作负载的可变性。负载类型414允许定义用于当前工作简档的负载类型,例如,平衡的、CPU加强的、或存储器加强的。
点击加载简档416加载由用户定义的简档。在一个实现中,如果简档恰当地适合所定义的新的时间间隔(例如,日期可能在范围之外,例如,该工作简档是针对2010年1月而被定义的,但是当前场景时间间隔是针对2010年的第三季度的),则用户可以重新使用该简档。点击保存简档418将当前定义的简档保存到工作简档定义XML文件中。点击处理420将当前显示的简档应用到先前定义并提交的场景。在一个实现中,该系统通过点击处理420而用所应用的工作简档的需求更新所述图表。点击删除简档422将所选择的简档从该系统移除。点击清除简档424关闭被该系统当前显示的所有简档。
点击配置426打开页面视图400,服务器规划器实现的工作简档功能的初始参数定义屏幕。点击工作简档428允许定义进一步的特定的工作简档,其需要在给定的时间间隔内的不同的工作负载,如当前所讨论的以及下面关于图5进一步被讨论的。如果例如给定的服务器机架预计在要被建模的期望的时间间隔的过程中经历在使用方面的周期性的变化,则此实现是有用的。点击功率430显示包含针对所输入的参数的功率使用估计的图表。在一个实现中,以kW度量功率。点击热量432显示包含针对所输入的参数的耗散的热量估计的图表。在一个实现中,以BTU度量耗散的热量。点击成本434显示包含针对所输入的参数的成本估计的图表。在一个实现中,这被以美元度量。点击CO2 436显示包含针对所输入的参数的区域性CO2、SOx和NOx输出排放速率估计的图表。在一个实现中,以lbs/年来度量这些。在另一实现中,所定义的区域可以是美国的州。在一个实现中,用户可以通过在给定的图表中的期望的点上点击来放大(zoom-in)通过点击功率430、热量432、成本434或CO2 436而打开的前述图表的任何一个中的特定的数据点。点击清除图表438关闭当前显示的所有图表并且显示配置屏幕,页面视图400。点击关闭440关闭工作简档屏幕。
图5示出了使用工作简档功能的示例性方法中的步骤,其提供了与本发明相一致的服务器规划器实现的工作简档的定义(先前定义的场景时间间隔内的随时间变化的工作负载)。首先,用户通过输入针对要被建模的每个工作简档时间间隔的期望的工作负载大小、持续时间以及工作负载类型来生成工作简档时间序列工作负载(步骤500)。接下来,用户经由例如HTTP协议向服务器后端发送数据有效载荷,例如独立变量值(CPU和存储器利用率)时间序列、机器模型、机器类型、CPU核心数、以及要被建模的特定的时间间隔(步骤502)。所述数据有效载荷被从客户前端发送到服务器后端,并且在服务器后端上该软件确定存储模型的模型库是否包含先前为输入的机器类型生成的模型(步骤504)。如果该库包含这样的模型,则可以调用该模型(步骤506)。基于CPU核心数和小的工作负载增量(例如,5%或10%)来创建模型。下面关于图17进一步详细描述的过程以统计的方式从针对每个数据点的该模型的预测的总集来得到预测的值。然而,如果在步骤504中该软件确定所述模型库不包含先前为输入的机器类型生成的模型,则其可以被用于调用经由PCP的模型创建特征而创建的模型(步骤508)。下面关于图8和图9进一步详细地描述了模型创建。此外,当可以综合地生成机器训练数据时,PCP模型创建(步骤508)可以取代从所述模型库的模型调用(步骤506)。PCP模型可以处理广泛的各种工作负载。在调用或创建合适的模型之后,该模型为输入的数据生成预测值。为了统计有效性,可以随机地生成多个时间序列(例如10个),并且将针对所述时间序列的预测值发送回所述客户前端(步骤510)。所述客户前端随后显示对来自多个时间序列中的每个的每个值的结果的统计表示(步骤512)。在一个实现中,此表示可以是图形的。在其他实现中,可以给出对来自所述多个时间序列的每个值的平均预测、高预测和低预测。对工作简档时间间隔时间序列的特殊处理可能是需要的。在其他实现中,服务器计数可以被用于调整时间序列点的大小。最后,可以呈现图形的时间序列(步骤514)。在一个实现中,针对每个时间序列点的缩放能力和智能数据提示可以在光标定位上是即时可用的。在其他实现中,各种场景和时间序列可以被“堆叠”在相同的图表上。在又另外的实现中,在处理该工作简档之前绘制的任何现有的时间序列之上按时间顺序绘制该工作简档时间间隔时间序列。
所述PCP的VMachine规划器特征允许针对虚拟化的或非虚拟化的服务器预测功率消耗、热量耗散、区域性功率成本以及区域性温室气体效应。在一个实现中,它允许关于虚拟化的系统的预测,所述虚拟化的系统可以具有异质的和/或同质的特性,包括功率提取占用。任何数量的这些服务器可以被同时分析,每个服务器具有特定的、可能的、用户定义的工作负载并且针对特定的时间段。从在VMachine规划器内定义的虚拟机获得物理底层平台的总的功率预算是可能的。
VMachine规划器允许预测虚拟化的或非虚拟化的服务器的功率消耗,所述虚拟化的或非虚拟化的服务器可以具有异质的和/或同质的特性。此特征有助于功率和冷却预算规划,在其中服务器需要被移动到数据中心内的其他物理位置或被移动到远程位置。所述VMachine规划器具有与服务器规划器相似的图表制作能力。所述VMachine规划器也允许将绘制的或被制作成图表的场景堆叠在相同的图表上。该系统以图形的以及统计的方式在相同的各个图表内比较从不同的可能场景产生的功率、热量、成本和温室效应。
图6示出了对应于与本发明相一致的VMachine规划器实现的示例性页面视图600的一个实现。在时间间隔期间下拉菜单602中,用户可以输入建模的时间间隔的时间单位。例如,所述菜单选项可以包括小时、天、周、月、年或任何其他时间单位。服务器类型下拉菜单604中可用的选择可以使用先前被建立简档并且被建模的用于硬件平台的模型。在一个实现中,可以存在为先前表征的每个服务器类型预定义的多个模型。在另一实现中,最接近地匹配在负载606中输入的工作负载百分比的模型进行功率估计。核/服务器608可以通过指定在服务器中总共使用多少核心来帮助定义为定义的服务器类型所选择的模型。在一个实现中,缺省值是8。成本610表示对用户的区域性功率成本。在一个实现中,以每千瓦时(kWh)美元来度量成本。在另一实现中,缺省值是在美国的平均功率成本,例如0.11美元/kWh。CO2下拉菜单612、NOx下拉菜单614、以及SOx下拉菜单616显示针对二氧化碳、一氧化氮和各种多氧化氮、以及一氧化硫和各种多氧化硫的年排放速率;在由用户从相应的下拉菜单中选择的状态中,其中在相应的下拉菜单下面示出相应的值。在一个实现中,以lbs/kWh来度量排放。在另一实现中,此数据的来源是eGRIDweb版本-2007.1.1。
模型名称618显示由用户在所选择的输入单元中定义的模型。用户可以(例如通过点击)高亮显示该用户希望所述系统为该会话使用哪个模型。在一个实现中,仅具有后缀REP的模型名称可以被用于预测。在该实现中,所有其他模型必须首先使用PCP的模型生成实现而被创建,下面关于图16而被描述。在另一实现中,用户定义的模型取代在相同的会话中从服务器类型选择下拉菜单604中选择的任何服务器类型。开始620在对应的模型下显示该分析的开始日期。结束622在对应的模型下显示该分析的结束日期。负载606显示输入到该数据网格中的对应的模型的所需的工作负载。在一个实现中,工作负载被定义为被利用以处理所定义的工作负载的CPU和存储器的百分比。+/-624显示在所建模的工作负载百分比中用户定义的可接受的方差水平。负载类型626显示在CPU利用率和存储器利用率之间所选择的工作负载的用户定义的分布。例如,如果所选择的模型采用30%的负载和平衡的负载类型,则该系统将基于相似的CPU利用率和存储器利用率(在此情况下对每个大约15%)来创建模型。其他可能的工作负载类型包括,但不限于,CPU加强的或存储器加强的。
点击加载VMs 628将在VMachine规划器中最后配置的服务器载入。点击添加VM630允许用户向当前数据网格添加附加的服务器。点击保存VMs 632将当前数据网格保存到XML文件中。点击处理634启动对当前数据网格中的所有服务器的预测过程。点击删除VM636删除该数据网格中被高亮显示或被选择的服务器。点击清除VMs 638清除该当前数据网格内的所有服务器和相关联的参数。
点击配置640打开页面视图600,VMachine规划器实现的初始参数定义屏幕。点击功率642显示包含针对所输入的参数的功率使用估计的图表。在一个实现中,以千瓦度量功率。点击热量644显示包含针对所输入的参数的耗散的热量估计的图表。在一个实现中,以BTUs测量耗散的热量。点击成本646显示包含针对所输入的参数的成本估计的图表。在一个实现中,这以美元而被度量。点击CO2 648显示包含针对所输入的参数的区域性CO2、SOx和NOx输出排放速率估计的图表。在一个实现中,以磅/年来度量这些。在另一实现中,所定义的区域可以是美国的州。在一个实现中,用户可以通过在给定的图表中的期望的点上点击来放大(zoom-in)通过点击功率642、热量644、成本646或CO2 648而打开的前述图表的任何一个中的特定的数据点。点击清除图表650关闭当前显示的所有图表并且显示配置屏幕,页面视图600。点击关闭652关闭VMachine规划器窗口。
图7示出了使用与本发明相一致的VMachine规划器实现的示例性方法中的步骤,相对比于整体式服务器,一般针对VMachine。首先,用户通过输入针对要被建模的每个虚拟机的期望的模型名称、工作负载大小、持续时间和工作负载类型来为每个服务器/VMguest生成时间序列工作负载(步骤700)。接下来,用户输入包括数据有效载荷的下面的参数/值并且经由例如HTTP协议向服务器后端发送所述数据有效载荷,例如时间序列、机器模型、机器类型、以及CPU核心数(步骤702)。所述数据有效载荷被从客户前端发送到服务器后端,并且在所述服务器后端上该软件确定存储模型的模型库是否包含先前为输入的机器类型生成的模型(步骤704)。如果该库包含这样的模型,则可以调用该模型(步骤706)。基于CPU核心数和小的工作负载增量(例如,5%或10%)来创建模型。下面关于图17进一步详细描述的过程以统计的方式从对每个数据点的该模型的预测的总集来得到预测的值。然而,如果在步骤704中该软件确定所述模型库不包含先前为输入的机器类型生成的模型,则它可以被用于调用经由PCP的模型创建特征而创建的模型(步骤708)。下面关于图8和图9进一步详细地描述了模型创建。此外,当可以综合地生成机器训练数据时,PCP模型创建(步骤708)可以取代从所述模型库的模型调用(步骤706)。PCP模型可以处理广泛的各种工作负载。在调用或创建合适的模型之后,该模型为所输入的数据生成预测值。为了统计有效性,可以随机地生成多个时间序列(例如10个),并且将对该时间序列的预测值发送回客户前端(步骤710)。所述客户前端随后显示对来自所述多个时间序列中的每一个的每个值的结果的表示(步骤712)。在一个实现中,此表示可以是图形的。在其他实现中,可以给出对来自所述多个时间序列的每个值的平均预测、高预测和低预测。可能需要对虚拟机模型时间间隔时间序列的特殊处理。在其他实现中,所述虚拟机计数可以被用于调整时间序列点的大小。使用VMachine规划器来建模虚拟和非虚拟系统两者例如以允许成本分析是可能的。最后,图形的时间序列可以被呈现(步骤714)。在一个实现中,针对每个时间序列点的钻探/缩放能力和智能数据提示可以在光标定位上是即时可用的。在其他实现中,各种场景和时间序列可以被堆叠在相同的图表上。在又另外的实现中,在处理所述工作简档之前绘制的任何已有的时间序列之上按时间顺序绘制所述模型时间间隔时间序列。
PCP的模型创建特征允许用户创建适合于用户自己的传统或新的平台的模型,不管是虚拟化的还是非虚拟化的。该特征通过延长应用的寿命和效用来提供对投资的回报。
在一个实现中,所述模型创建特征允许基于两个用户输入参数来定义和创建定制的预测模型:在不运行任何工作负载的情况下的完全配置的系统的空闲功率水平、以及针对特定服务器平台的最大工作负载功率水平。
图8示出了对应于与本发明相一致的模型创建实现的示例性页面视图800的一个实现。模型名称802显示了要被创建的模型的用户定义的名称。在一个实现中,在此字段中仅应使用字母和数字,并且所述模型名称被转换成Java类,所述Java类被Java虚拟机(JVM)的编译器动态地编译。在另一实现中,如果所述模型名称具有后缀“REP”,则所述模型名称被假定为已经存在。空闲功率804显示要被建模的平台的空闲功率使用。在一个实现中,这被以瓦特度量。在另一实现中,对空闲功率使用的精确的测量需要该系统被完全启动,所有其外围设备是完全起作用的并且被电附接到该系统,并且任何操作系统(“O/S”)或主控制软件也是完全可操作的。此外,该实现要求在测量空闲功率使用时该系统上不存在工作负载。最大功率806显示该系统的最大工作负载功率使用。在一个实现中,这被以瓦特度量。如果该测量是不可用的,则该系统可以使用近似值,例如,基于针对该给定系统的制造商的最大速率的功率提取。日期808显示对应的模型被定义时的日期。时间810显示对应的模型被定义时的日时。数据文件812表示可选的条目字段,用户在所述可选的条目字段中输入包含来自要被建模的系统的训练系统的文件的名称,而不是平台的空闲功率使用和最大工作负载功率使用。回想一下,训练数据包括独立变量(CPU和存储器),或资源,利用率、以及基于表示在要被建模的系统上运行的各种负载水平的有效操作工作负载的非独立变量(所消耗的功率,例如以瓦特计)的测量值。在一个实现中,从5%到90%的工作负载在该系统上被引入并被测量。所述模型创建实现可以使用此输入文件以生成能够处理这样的训练数据的对应的预测模型。
点击加载模型814加载先前在该系统上定义的模型。在一个实现中,已经生成的模型被后缀有字符“REP”。点击保存模型816将在当前的模型创建屏幕中显示的模型保存到XML模型存储文件。点击添加模型818将基本的空条目定义到该屏幕上,这是为了使用输入方便而被进行。点击处理820生成所选择的模型。在一个实现中,在成功创建后模型名称将被后缀有“REP”。点击删除模型822删除所述模型创建屏幕中被高亮显示的模型。点击清除模型824完全清除所述屏幕。点击关闭826关闭所述模型创建屏幕。
下面是用于数据文件812的逗号分隔的值(“.CSV”)格式的例子。第一行必须包含描述针对所测量的CPU利用率、存储器利用率(例如,按照百分比)、以及功率(例如,以瓦特计)的列的头部:
图9示出了使用与本发明相一致的模型创建实现的示例性方法中的步骤。首先,用户输入针对两个参数中任一个的值,完全配置的机器的空闲功率水平(在没有工作负载起作用的情况下)以及该机器在相当高的工作负载下的最大功率提取,或者可替代地,用户可以输入监督的训练数据,其包含用于独立变量(CPU和存储器使用)和非独立变量(所消耗的功率)的值(步骤900)。接下来,用户经由例如HTTP协议向服务器后端发送数据有效载荷,例如模型名称、针对完全配置的机器的空闲和最大功率提取、或训练数据(步骤902)。所述数据有效载荷被从客户前端发送到服务器后端,并且在所述服务器后端上该软件确定所述输入数据有效载荷是否由监督的训练数据构成(步骤904)。如果所述数据有效载荷包括监督的训练数据,则可以调用适当的Weka机器学习库预测算法(例如REPTree或M5rules(来自被用于生成由PCP使用的功率预测模型的Weka库工具包的机器学习算法))(步骤906)。然而,如果在步骤904中该软件确定该数据有效载荷包括不同于监督的训练数据,则下面所描述的过程综合地生成所述监督的训练数据(步骤908),并且随后基于由该过程创建的综合的监督的训练数据来调用适当的Weka预测算法(步骤910)。一旦生成新的模型,其被编译并且所得到的类被放入服务器后端上的web信息服务目录中,用于未来使用(步骤912)。随后在客户前端上通知用户该模型已经被创建并且已准备好使用(步骤914)。在一个实现中,该用户可以按照用户生成的名称保存该模型。在另一实现中,用户也可以将该模型的相关特征保存在持久存储器中。相关特征可以包括例如空闲和最大功率水平、CPU核心数、旋转因子、以及每秒百万指令(“MIPS”)。
综合计量器允许近实时地预测用于可操作的、计量的或非计量的在线服务器的功率消耗、热量耗散、区域性功率成本以及区域性温室气体效应。资源利用率(诸如CPU和存储器使用)度量被从操作系统获得并被持续地(例如每秒)输入到所选择的预测模型中。所述综合计量器可以使用Windows WMI和Linux WMI/WBEM或Top实用程序,例如以获得服务器资源利用率度量。所述综合计量器可以在网络上从任何数据收集服务接纳度量。此外,所述综合计量器也根据它们对应的模型比较虚拟化的和/或非虚拟化的服务器,允许在线监视并比较针对被连接到所述网络的任何服务器的相同显示图表内的功率消耗和冷却需求。相同的监视和比较能力可以对在特定机器上运行的虚拟化的或非虚拟化的每个所选择的商业应用或任务是可用的。所述系统也可以根据用于每个机器的它们的对应的模型比较多个机器之间的为商业应用或任务获得的功率消耗预测。此特征增强了许多IT功能,例如,服务器整合/重定位研究和硬件刷新工程,其涉及用更新的、更有能力和更有效的硬件来替代过时的传统设备。在服务器水平的以及用于特定应用或任务的功率封顶特征也可以被提供。功率封顶被用于限制由在虚拟化的或非虚拟化的机器上运行的操作系统和/或商业应用所消耗的功率和/或由其利用的CPU和存储器(或资源)的量。
所述PCP的综合计量器组件允许基于最近(例如近实时地)从操作系统获得的CPU和存储器利用率值(按照总的可能的CPU和存储器使用的百分比,例如,总的可能的CPU使用的50%)的功率、热量、成本和CO2排放预测。这些是要被输入到预测模型中的独立变量。用户可以输入在所输入的主机/机器上运行的商业应用或任务名称以使得仅对该应用或任务进行计量和预测。可以用不同的模型多次输入相同的服务器和/或应用。这允许用户根据不同的所选择的模型动态地比较针对相同的主机和/或应用的跨越不同平台的功率、冷却和排放速率。最后,所述综合计量器可以被用于对主机或特定应用或任务可用的功率进行封顶,允许用户优化性能,同时限制资源利用率和/或成本。
图10示出了对应于与本发明相一致的综合计量器实现的示例性页面视图1000的一个实现。服务器类型下拉菜单1002中可用的选择对应于先前被建立简档并被建模的用于硬件平台的模型。在一个实现中,可以存在为先前表征的每个服务器类型预定义的多个模型。成本1004表示针对用户的区域性功率成本。在一个实现中,按照每千瓦时(kWh)美元来度量成本。在另一实现中,缺省值是在美国的平均功率成本,例如0.11美元/kWh。CO2下拉菜单1006、NOx下拉菜单1008、以及SOx下拉菜单1010显示针对二氧化碳、一氧化氮和各种多氧化氮、以及一氧化硫和各种多氧化硫的年排放速率;在由用户从相应的下拉菜单中选择的状态中,其中在相应的下拉菜单下面显示相应的值。在一个实现中,以lbs/kWh来度量排放。在另一实现中,此数据的来源是eGRIDweb版本-2007.1.1。
模型名称1012显示由用户在所选择的条目单元中定义的模型。用户可以(例如通过点击)高亮显示该用户希望所述系统为该会话使用哪个模型。在一个实现中,仅具有后缀“REP”的模型名称可以被用于预测。在该实现中,所有其他模型必须首先使用PCP的模型生成实现而被创建,下面关于图16而被描述。在另一实现中,用户定义的模型取代相同会话中的从服务器类型选择下拉菜单1002中选择的任何服务器类型。主机名称1014显示要为其进行计量和预测的主机的名称。该主机可以是虚拟机或物理机。任务名称1016显示在期望为其计量和预测的所输入的主机上运行的任务的名称。在一个实现中,如果没有任务被输入,则该系统为整个主机/机器执行计量和预测。
点击加载主机1018将先前定义的模型、主机/机器名称、和对应的商业应用名称或任务加载到数据网格(用户在其处输入数据的窗口)中。点击添加主机1020将新的条目插入到所述数据网格中。点击保存主机1022将当前数据网格的内容保存到例如XML文件中,用于以后取回和/或使用。点击处理1024开始针对在所显示的数据网格中定义的主机和/或任务的计量和预测。点击停止1026停止当前运行的计量和预测。点击删除主机1028从所显示的数据网格删除所选择的行。点击清除主机1030从所显示的数据网格清除所有条目。
点击配置1032打开页面视图1000,所述综合计量器实现的初始参数定义屏幕。点击功率1034显示包含针对所输入的参数的功率使用估计的图表。在一个实现中,以kW度量功率。点击热量1036显示包含针对所输入的参数的耗散的热量估计的图表。在一个实现中,以BTU度量耗散的热量。点击成本1038显示包含针对所输入的参数的成本估计的图表。在一个实现中,这被以美元度量。点击CO2 1040显示包含针对所输入的参数的区域性CO2、SOx和NOx输出排放速率估计的图表。在一个实现中,以lbs/年来度量这些。在另一实现中,所定义的区域可以是美国的州。在一个实现中,用户可以通过在给定的图表中的期望的点上点击来放大(zoom-in)通过点击功率1034、热量1036、成本1038或CO2 1040打开的前述图表的任何一个中的特定的数据点。点击清除图表1042关闭当前显示的所有图表并且显示所述配置屏幕,页面视图1000。点击关闭1044关闭所述综合计量器窗口。
图11示出了使用与本发明相一致的综合计量器实现的示例性方法中的步骤。首先,用户为各种参数输入值,包括,例如,模型名称、机器名称或IP地址、以及如果期望,要被计量的特定商业应用或任务(步骤1100)。计量机器需要对这样的机器和/或在这样的机器上运行的特定应用的资源(CPU和存储器)利用(按照百分比)进行持续地监视。通过简单地按照需要输入相同的条目行多次但是改变应用名称或任务名称来同时对整个机器和/或特定的商业应用进行计量是可能的。此外,在一个实现中,每个机器与模型相关联,使得使用不同的模型计量相同的机器是可能的。接下来,用户将数据有效载荷例如经由HTTP协议发送到服务器后端(步骤1102)。所述数据有效载荷被从所述客户前端发送到所述服务器后端,并且在所述服务器后端上该软件获得针对要被计量的整个主机/机器和/或针对任何特定的(一个或多个)应用的机器资源利用率数据,例如所使用的CPU功率和/或存储器(步骤1104)。可以每秒收集所述度量(包括每个机器和/或机器/应用的按照百分比的CPU和存储器利用率),但是功率预测以定义的间隔(例如每10秒或15秒)被批量传送到所述客户前端,以便减少网络流量(步骤1106)。来自目标主机的主机/机器资源使用度量可以通过任何适当的脚本、应用或其他数据收集方法和/或可用的服务而被获得。例如,在Windows中,窗口管理接口(“WMI”)可以被用于获得资源使用度量、在Linux中,Top实用程序可以被用于获得资源使用度量、或者在VMware Hypervisor中,EXSTop实用程序可以被用于获得资源使用度量。所述资源使用度量可以由任何适当的数据收集服务和/或代理(例如DCIM服务处理器和/或DCIM设备)来提供。
在所述资源利用度量被收集并且经由因特网被发送回服务器后端之后,针对每个机器以及每个单个应用的资源利用度量被输入到每个相应的预测模型中并且如果必要的话,执行功率封顶(步骤1108)。功率封顶限制由主机/机器和/或在这样的机器上运行的商业应用所消耗的功率和/或所利用的资源(CPU和存储器)的量。在一个实现中,所述限制仅经由软件而被施加;例如,通过调整应用/任务执行优先级以及核心亲和性,核心亲和性是可用于由这样的应用/任务在执行时使用的CPU核心的数量;并且不使用硬件。在一个实现中,如果用户已启用了功率封顶特征并且该模型确定资源利用率高于定义的使用限制,则功率封顶将进行。一旦资源利用度量被输入到相应的模型中,预测的功率消耗值以定义的间隔(例如每15秒)被以批量传输的方式发送到所述客户前端(步骤1110)。因此,用户可以查看针对所建模的时间序列中的每个的预测的值(步骤1112)。在一个实现中,综合计量器为了比较的目的而将针对每个对应的所输入的模型的多个时间序列“堆叠”在相同的图表上。在一个实现中,预测的值视图包括针对从在步骤1110中发送的预测批量更新获得的每个值的平均预测、高预测和低预测。在一个实现中,在步骤1112中查看的值可以以图形形式而被表示。在一个实现中,一旦光标定位,针对每个时间序列点的缩放能力和智能数据提示是即时可用的。在另一实现中,所建模的每个机器和/或单个应用可以被绘制在单个图或图表上。所述计量器可以随着新的批量传输在每个定义的间隔从所述服务器后端到达而持续地更新(一个或多个)图表。在一个实现中,这些更新改写所述图表上的最旧的间隔,按照时间顺序偏移整个时间序列以显示最近的(一个或多个)预测批次。图11(a)示出了对应于所述综合计量器的此实现的示例性页面视图1116的一个实现。线1118、线1120、线1122以及线1124表示针对定义的工作简档的功率使用的预测的值。在一个实现中,将鼠标定位在线1118、线1120、线1122或线1124上导致该系统显示针对鼠标定位在其上的数据点以及针对整条线的统计数据。例如,所述系统可以显示所绘制的工作简档、鼠标定位在其上的点的值、以及针对该工作简档所测量的平均值、高值和低值。
功率估计器允许基于例如先前从所输入的(一个或多个)机器/主机名称收集的以及XML文件中存储的操作服务器资源度量来预测功率消耗、热量耗散、区域性功率成本以及区域性温室气体效应。这使得用户能够获得服务器的操作功率消耗过去趋势的准确知识,可以将其与例如由服务器规划器或VMachine规划器所提供的“假如”时间变化工作负载、由服务器/VMachine规划器以及给定的场景的时间间隔内定义的任何工作负载简档所定义的工作负载进行比较。
PCP的功率估计器特征允许针对先前测量的独立变量(例如CPU利用率和存储器利用率)以及非独立变量(例如功率利用率)的功率、热量、成本和CO2排放预测。该数据在机器学习领域中被称为“监督的测试数据”,并且功率消耗(所述非独立变量)不是必需被测量。在一个实现中,所述功率估计器将从为所输入的特定服务器类型定义的每个模型请求预测并以统计的方式从所咨询的模型中推断最佳预测。另一方面,如果用户输入其自己的定制生成的模型的名称,则所述功率估计器从该模型获得功率消耗估计。在功率也经由被附接到所研究的主机/机器的计量器而被测量的情况下,功率消耗预测可以在相同的(一个或多个)图表内以图形和统计的方式被与所获得的实际功率测量值相比较。
图12示出了对应于与本发明相一致的功率估计器实现的示例性页面视图1200的一个实现。当复选框1202被高亮显示时(例如通过在其上点击),由用户定义的模型可以被显示在模型选择下拉菜单1204中。用户随后可以从模型选择下拉菜单1204选择在该会话中使用的模型,例如通过在其上点击。在一个实现中,仅具有后缀“REP”的模型名称可以被用于预测。在该实现中,所有其他模型必须首先使用PCP的模型生成实现而被创建,下面关于图16而被描述。在另一实现中,用户定义的模型取代相同会话中的从服务器类型选择下拉菜单1206中选择的任何服务器类型。服务器类型下拉菜单1206中可用的选择使用先前被建立简档并且被建模的用于硬件平台的模型。在一个实现中,可以存在为先前表征的每个服务器类型预定义的多个模型。服务器计数1208表示被建模的服务器的数量。在一个实现中,此字段的缺省值是1。该值可以被改变,例如以建模包括多个相同类型的服务器的服务器机架。整合要被建模的所述多个服务器也是可能的。例如,用户可以反而仅建模50个以35%工作负载运行的服务器,而不是建模80个以70%工作负载运行的服务器。成本1210表示针对用户的区域性功率成本。在一个实现中,以每千瓦时(kWh)美元来度量成本。在另一实现中,缺省值是在美国的平均功率成本,例如0.11美元/kWh。CO2下拉菜单1212、NOx下拉菜单1214、以及SOx下拉菜单1216显示针对二氧化碳、一氧化氮和各种多氧化氮、以及一氧化硫和各种多氧化硫的年排放速率;在由用户从相应的下拉菜单选择的状态中,其中在相应的下拉菜单下面显示相应的值。在一个实现中,以lbs/kWh来度量排放。在另一实现中,此数据的来源是eGRIDweb版本-2007.1.1。
已处理数据文件菜单1218显示已经处理的数据文件。一旦所述输入参数已经被输入,则点击处理1220选择所述输入文件并调用所选择的模型。
点击配置1222打开页面视图1200,功率估计器实现的初始参数定义屏幕。点击功率1224显示包含针对所输入的参数的功率使用估计的图表。在一个实现中,以kW度量功率。点击热量1226显示包含针对所输入的参数的耗散的热量估计的图表。在一个实现中,以BTU度量耗散的热量。点击成本1228显示包含针对所输入的参数的成本估计的图表。在一个实现中,这以美元而被度量。点击CO2 1230显示包含针对所输入的参数的区域性CO2、SOx和NOx输出排放速率估计的图表。在一个实现中,以lbs/年来度量这些。在另一实现中,所定义的区域可以是美国的州。在一个实现中,用户可以通过在给定的图表中的期望的点上点击来放大(zoom-in)通过点击功率1224、热量1226、成本1228或CO2 1230而打开的前述图表的任何一个中的特定的数据点。点击清除图表1232关闭当前显示的所有图表并显示所述配置屏幕,页面视图1200。点击关闭1234关闭所述功率估计器窗口。
图13示出了使用与本发明相一致的功率估计器实现的示例性方法中的步骤。用户可以输入文件名称,其包含从所研究的机器收集的资源利用度量,以生成测试数据(步骤1300)。接下来,用户经由例如HTTP协议向所述服务器后端发送数据有效载荷,例如时间序列、机器模型、机器类型和CPU核心数(步骤1302)。所述数据有效载荷被从所述客户前端发送到所述服务器后端,并且在所述服务器后端上该软件确定存储模型的模型库是否包含先前为所输入的机器类型生成的模型(步骤1304)。如果所述库包含这样的模型,则可以调用该模型(步骤1306)。下面关于图17进一步详细描述的过程以统计的方式从针对每个数据点的该模型的预测的总集来得到预测的值。如果在步骤1304中该软件确定所述模型库不包含先前为所输入的机器类型生成的模型,则其可以被用于调用经由PCP的模型创建特征而被创建的模型(步骤1308)。下面关于图8和图9进一步详细描述了模型创建。此外,当可以综合地生成机器训练数据时,PCP模型创建(步骤1308)可以取代从所述模型库的模型调用(步骤1306)。PCP生成的模型可以处理广泛的各种工作负载。在适当的模型被调用之后,该模型为所输入的数据生成预测值。针对该(10个)时间序列的这些功率消耗预测值被发送回所述客户前端(步骤1310)。所述客户前端随后显示针对来自所述多个时间序列中的每个的每个值的结果的表示(步骤1312)。在一个实现中,该表示以图形的方式绘制针对来自可能被给出的多个时间序列的每个值的平均预测、高预测和低预测。每个时间序列预测的值可以被图示,并且可以被用于计算按照各种单位的估计的功率使用,包括实际功率单位、成本或排放值。最后,图形的时间序列可以被呈现(步骤1314)。在一个实现中,一旦光标定位,针对每个时间序列点的缩放能力和智能数据提示可以是即时可用的。在其他实现中,来自不同资源利用文件和/或来自不同模型的多个时间序列可以被堆叠在相同的图表上用于比较。如果所述资源利用数据包含实际的功率测量值,则所述功率测量值将被绘制在所述图表中的独立的时间序列上。这允许以图形和统计的方式比较预测的和测量的功率消耗。
PCP的异常检测器组件使用资源利用模式识别以实施对虚拟化的或非虚拟化的任何机器和/或在这样的机器上运行的商业应用的任何可能的异常资源利用的监视和分类。所述异常检测器通过检测异常的功率和资源利用波动来检测系统中的可能的入侵。所述模式识别模型也可以检测在该机器上启动的任何进程或线程(包括OS进程和线程)上的异常资源利用。例如,所述异常检测器可以被用于检测被恶意软件感染的OS进程和/或任务。为了减轻“假肯定”或假报警的频率和概率,可以定义工作负载阈值以指示机器和/或(一个或多个)应用的最大预期的工作负载。制造商或用户也可以设置当这样的阈值没有已被定义时要被应用的缺省值。用户可调整的“delta”因子,或差异因子(每个因子表示所述阈值和所测量的值之间的差异中的容许的可变性),可以被用于决定何时已经真正超出了阈值。
在一个实现中,存在三层检查或过滤器,以分类检测到的异常:(1)工作负载阈值,(2)根据附加的输入/输出(“I/O”)活动度量而被计算的统计推导,包括在系统处的I/O活动,例如超高速缓存、活动、全系统和各个应用的处理器、文件系统、以及存储器活动度量,包括对应线程的活动度量,以及来自整个机器、来自网络接口连接(“NICs”)(例如,网络适配器的活动度量包括错误和重试)、以及来自(一个或多个)存储子系统(例如,逻辑和物理盘的活动度量包括属于SANs和iSCSI存储控制器的对应的NICs的活动)的应用水平,以及最后,(3)针对基于规则的时间敏感的或老的假肯定事件异常的直接访问储存库的检查,包括由分类模型、主机/机器名称或IP地址、以及相应的应用组成的每个三元组。该储存库可以包括散列映射类,提供用于读和写的确定性的平均时间,驻留在存储器中并被周期性地存储到磁盘上。在一个实现中,当用户将肯定事件标记为假肯定时,此储存库被动态地更新。为了减少所述储存库的增长,每个条目可以在被添加时被加上时间戳,以允许在用户定义的“期满”日期/时间段之后的最终移除。在一个实现中,当储存库规则达到它们的寿命时限时,询问用户这样的规则是否可以被移除。如果用户以否定的方式回答,则PCP可以在那些规则上设置延长的寿命时限。
通过在每个条目具有不同的分类模型的情况下简单地多次输入相同的主机/机器名称来使用不同的分类模型多次监视相同的机器和/或(一个或多个)商业应用是可能的。这允许用户动态地汇集“异常检测专家”的多数表决(根据不同的所选择的模型),其可有助于识别假肯定事件。持续一定时间的不同寻常高的假肯定率可以指示特定的机器配置已在硬件和/或软件上明显地改变。当这种情况发生时,针对该机器的分类模型可以被重新生成以计入机器配置中的改变,以便所述异常检测器可以不继续生成更高的假肯定事件率。
资源利用度量也可以被挖掘以识别硬件和相关联的应用的操作可靠性。所挖掘的数据可以包括最新的资源利用率、I/O活动、以及统计推导,其可以包括例如定期收集的针对每个重要度量(诸如磁盘、网络、进程间通信、线程管理等等,以及从O/S获得的相关的度量)的平均值、模、高值、低值和/或标准差。异常事件包含来自源机器的踪迹,以帮助理解该异常的根本原因。这些踪迹包括统计信息(包括先前提到的推导以及机器名称)、所使用的分类模型、以及应用名称。因此,异常也可以指示机器正在故障或接近故障,和/或应用正在不正常工作。
异常检测器也使得用户能够识别和/或分类由各个应用处理的工作负载的类型,例如业务的、计算的、仅CPU或仅存储器工作负载。这种能力在通过资源管理和/或资产的重新分配而控制资源成本中具有价值。例如,存储器加强的应用可以被迁移到更慢的CPUs系统,其比需要高能量使用的快的CPUs花费更少的成本以工作。此外,工作负载类型可以被聚集以获得在机器级别的最频繁处理的工作负载的分级。这允许对机器配置的优化以及对当前和未来性能和可靠性的预测。
图14示出了对应于与本发明相一致的异常检测器实现的示例性页面视图1400的一个实现。模型名称1402显示由用户在所选择的条目单元中定义的模型。用户可以(例如通过点击)高亮显示该用户希望所述系统为该会话使用哪个模型。在一个实现中,仅具有后缀“REP”的模型名称可以被用于预测。在该实现中,所有其他模型必须首先使用PCP的模型生成实现而被创建,下面关于图16而被描述。主机名称1404显示要为其进行异常检测的主机的名称。该主机可以是虚拟机或物理机。O/S 1406显示在该主机/机器上运行的操作系统。数据源1408显示提供如先前提到的对应的资源利用度量的服务的名称。在一个实现中,这些度量仅在系统内被内部地使用并且不被暴露给用户。典型地,所述度量仅被存储用于“假肯定”事件,对这样的事件的踪迹信息将包括所述度量中的一些以及如先前提到的由异常检测器计算的统计推导。为了异常检测目的,踪迹信息和其他统计数据被用于验证并存储假肯定。在一个实现中,度量收集以一秒间隔发生。任务名称1410显示在期望为其进行异常检测的所输入的主机上运行的任务的名称。在一个实现中,如果没有任务被输入,则该系统为整个主机执行异常检测。功率封顶1412示出了所述主机机器、任务或应用上允许的最大工作负载。在一个实现中,这将被表示为该机器或应用的最大功率提取的百分比。在另一实现中,缺省最小允许负载将是零,但是该值可以是用户可配置的。
点击加载主机1414将先前定义的模型(包括所述数据网格的剩余字段)加载到屏幕/窗口数据网格中。点击添加主机1416将新的条目插入到所述数据网格中。点击保存主机1418将当前数据网格的内容保存到例如XML文件中,用于以后取回和/或使用。点击处理1420启动针对在所显示的数据网格中定义的主机和/或任务的异常检测。点击停止1422停止当前运行的异常检测器。点击删除主机1424从所显示的数据网格删除任何所选择的行。点击清除主机1426从所显示的数据网格清除所有条目。
点击异常1430显示由所述系统检测到的任何异常或告警。在一个实现中,这可以被限于在定义的时间期间(例如最近的10分钟)内检测到的异常或告警。点击清除1432关闭当前显示的图表并且显示配置屏幕,页面视图1400。点击关闭1434关闭异常检测器窗口。
图15示出了使用本发明的异常检测器实现的示例性方法中的步骤。首先,用户填写异常检测器实现的所显示的数据网格中的参数字段。参考图14的例子,这些字段可以包括模型名称1402、主机名称1404、O/S 1406、数据源1408、任务名称1410、以及功率封顶1412(步骤1500)。接下来,在JSP上将数据有效载荷例如经由HTTP协议发送到服务器后端(步骤1502)。一旦数据到达所述服务器后端,所述异常检测器获得针对整个系统以及针对该系统上活动的应用的资源利用数据(步骤1504)。所述异常检测器请求并接收所述资源利用度量和附加的I/O活动度量,其针对该系统而被收集,并且在一个实现中,针对所述系统上活动的每个应用(步骤1506),经由合适的因特网协议,例如TCP/IP。资源利用度量可以包括例如CPU和存储器利用率,而其他I/O活动度量可以包括例如在系统级和来自该系统的应用级的I/O活动、在系统级和来自NICs的应用级的I/O活动、和/或在系统级和来自存储子系统的应用级的I/O活动。在步骤1504中获得此信息之后,所述异常检测器计算并更新I/O活动度量的统计推导(步骤1508)。在一个实现中,这些推导可以被存储在存储器中。这些推导可以被用于对机器和/或该机器上活动的各个应用的工作负载和资源利用建立简档。为了异常检测的目的,推导可以被用作到分类模型的附加的输入。分类模型,被创建以帮助识别机器和/或这样的机器上运行的商业应用中的异常资源利用的机器学习模型,被应用到针对正经历异常检测的系统和/或应用的当前资源利用(步骤1510)。这允许异常检测器应用分类模型(其将该系统和/或应用的当前资源利用与使用用户可调整的delta因子为该系统和/或应用定义的工作负载阈值相比较)并由此检测异常资源利用(步骤1512)。如果没有检测到异常,则数据可以立即被老化并且被丢弃,或者可以被暂时存储以被用作在下一个采样周期要与更新的值相比较的先前值。如果所述资源利用度量超出所述阈值并且看似异常,则所述异常检测器触发针对机器和/或活动的应用的统计推导的交叉检查(步骤1516)。如果所述度量超出所述统计推导,则随后针对假肯定的储存库(其驻留在所述服务器后端上)检查它们(步骤1518)。在一个实现中,该储存库是基于规则的并且是老的,或者时间敏感的。当发现机器和/或应用是异常的时,将通知连同度量和推导和所处理的工作负载类型一起发送到所述客户前端,用于异常的用户确认(步骤1520和步骤1522)。如果用户确定不存在异常并且拒绝确认异常,则将该数据发送到假肯定的储存库(其可以驻留在所述服务器后端上)(步骤1514)。最后,如果在步骤1522中用户确认异常已出现,则可以呈现图形的时间序列(步骤1524)。
图16示出了与根据本发明的方法和系统相一致的使用Gamut工作负载模拟器来最终生成机器学习模型的示例性方法中的步骤。Gamut被用于模拟目标机器上的宽的工作负载范围(例如,以5%增量的5%到90%)。这被用于先前没有被工作负载特征化并且由与已建模的其他系统不相似的硬件配置构成的系统;例如,刀片系统可能必须被完全地特征化,因为这些在架构(硬件)上与典型的整体式服务器显著不同。所述目标系统可以运行Linux以便安装所述Gamut模拟器(步骤1600)。如果所述目标系统不是正在运行Linux,则用户必须启动Linux(步骤1602)。用户还必须确保所述Gamut模拟器被安装在所述目标系统上(步骤1604)。如果所述Gamut模拟器没有被安装在所述目标系统上,则用户应当安装它(步骤1606)。应被理解的是:在其他示例性方法中,步骤1604和1606可以在步骤1600和1602之前被执行。一旦所述目标系统正在运行Linux并且所述Gamut模拟器被安装在所述目标系统上,如果没有针对所述目标系统校准所述Gamut模拟器,则在继续之前用户针对所述目标系统校准它(步骤1608)。一旦所述Gamut模拟器被校准,则用户建立对在所述目标系统上引入足够精确的工作负载而言所必需的主控制脚本(步骤1610)。脚本被使用在Gamut中以定义输入和工作负载(基于CPU、存储器和网络利用率)。因为Gamut通过在CPU、存储器、磁盘、以及NI C级别的预先规划的活动而工作,工作负载被定义在这样的工作器脚本中。当所述系统被加载时,用于独立(CPU和存储器利用率)和非独立(功率消耗)变量的值被以设定的时间间隔(例如,每秒)记录,并被用于为机器学习算法创建训练数据(步骤1612)。经由Weka数据挖掘和机器学习库工具包而生成的模型随后可以基于独立变量的值(其由PCP综合地生成或者从操作系统而被测量)来预测功率消耗。在为CPU和系统存储器创建适当的训练数据(负载)之后,用户启动功率计量器以记录并且记日志由该机器所消耗的功率的量,同时按照规则的间隔(例如,每秒)来处理Gamut工作负载(步骤1614)。所述功率计量器记录非独立变量(功率消耗,将被用于训练机器学习算法的训练数据所需的)的值。一旦所述功率计量器开始记录规则读数的日志,用户通过主控制脚本启动Gamut以引入CPU上的期望的工作负载(步骤1616)。在其他实现中,用户可以同时启动并运行多个Gamut工作负载以便引入时变的工作负载,其接近其他实际的操作场景并且为机器学习算法生成高质量训练数据。在已将期望的工作负载应用到所述目标系统之后,用户分析、格式化并合并Linux TOP实用程序输出,该实用程序被用于记录应用Gamut工作负载期间的机器资源利用(CPU和存储器,独立变量),并且所述功率计量器输出文件包含应用Gamut工作负载期间所消耗的功率(例如,以瓦特度量)以便生成用于在机器学习算法中使用的训练数据(步骤1618)。在一个实现中,独立和非独立变量值两者被包括在所合并的文件中以允许从此数据训练机器学习算法。一旦模型被生成,可以用由PCP生成的综合生成的独立变量值或者用从操作系统记录的实际独立变量值测试或使用该模型。在预测建模的情况下,所述模型随后可以从(一个或多个)独立变量的值预测非独立变量的值。一旦训练文件被创建,Weka机器学习库工具包可以被应用到该训练文件以引入机器学习建模(步骤1620)。在http://www.cs.waikato.ac.nz/ml/weka/(其由此通过引用的方式被并入)公开了关于Weka工具包用户接口的使用的细节。基于结果(例如,非独立变量(由处理预先确定的工作负载的机器在某些资源利用率水平所消耗的功率)的预测)的准确性和一致性来选择Weka机器学习算法并且可以用在步骤1618中编译的训练文件来训练所述Weka机器学习算法。可能的训练算法包括REPTree和M5Rules算法。所述REPTree算法因其速度和低存储器消耗而众所周知。它使用具有误差减少和树修剪的多变量非线性回归决策树以便减少存储器/资源利用并加速树的生成。所述M5Rules算法是基于规则的算法,其使用公知的M5算法用于动态地生成并更新规则集。对于更大规模的训练数据集,其不如REPTree算法那样快并且花费更长的时间来生成最终的规则集。
图17示出了如上面关于本发明的服务器规划器、VMachine规划器和功率估计器实现而讨论的用于将各种单个模型预测汇集成单一的总的预测的方法中的步骤。首先,针对资源利用数据的每个实例,该系统使用当前资源利用数据来调用针对该机器类型的每个模型(步骤1700)。该系统随后将来自在步骤1700中调用的模型的预测存储在系统存储器中(步骤1702)。可以存在多个预测,因为可以存在由所述客户前端生成的每个时间序列的多个(例如10个)版本以便实现所述预测中的更好的统计有效性。因此,可以存在由所述服务器后端传送到所述客户前端的多个(例如,10个)预测的集合。在存储后,针对所存储的每个单个预测,该系统基于来自该机器类型的所使用的模型的数量来计算对该预测的平均值(步骤1704)。接下来,该系统对预测数组进行冒泡排序(步骤1706),并且计算该数组的模(步骤1708)。一旦所述模被计算,该系统寻找所述预测数组中针对每个相应的模型的该模的位置(步骤1710)。接下来,该系统计算所述预测数组的标准差(步骤1712)。一旦所述平均值和标准差是已知的,可以通过从所述平均值减去所述标准差和针对CPU度量的平滑因子的比率来调整所述平均值(步骤1714)。所述平滑因子可以由用户输入,并且可以具有缺省值,例如90%。其可以被用于轻微调整样本平均值,因为其通常可以被认为是保守的估计。接下来,该系统仅针对具有相等的模的预测值来计算局部平均值或临时平均值(例如,在所述过程中被用于基于工作负载预测功率值的统计值)(步骤1716)。随后将所述样本平均值与所述局部平均值相比较(步骤1718)。如果所述样本平均值大于所述局部平均值,则所述局部平均值被记录为最终预测(步骤1720)。如果所述局部平均值大于所述样本平均值,则所述样本平均值被记录为最终预测(步骤1722)。
图18示出了根据与本发明相一致的方法和系统的用于基于宽范围的工作负载(在其中独立的(按照百分比的CPU和存储器利用率)以及非独立的(关于来自CPU和存储器使用的每组值的以瓦特计的功率提取)变量值被生成)综合地生成监督的训练数据(其随后被用于生成用于PCP的模型创建特征的机器学习模型)的方法中的步骤。在一些实现中,此处所列出的系数可以是从XML文件可调整或可配置的。最终可能需要数值以生成训练数据。
该系统可以针对从5%到90%的每个CPU负载生成监督的训练数据。在一些实现中,这可以以5%的增量被执行,例如,在5%CPU负载、在10%CPU负载、在15%CPU负载等等。首先,该系统基于该系统的空闲功率水平和最大功率水平来计算delta功率和基础功率(步骤1800)。例如,在一些实现中,如果delta功率小于100.0,则基础功率=delta功率*0.55。否则,基础功率=delta功率*0.85。
接下来,该系统确定针对在+/-5%的可变性的情况下以5%步进增量从5%到90%工作负载的每个CPU值的CPU可变性(步骤1802)。用于此步骤的代码的例子如下:
随后,该系统基于空闲和最大功率之间的delta差异(基于在步骤1800中指定的CPU负载和在步骤1802中计算的delta功率)来确定功率估计的范围(步骤1804)。用于此步骤的代码的例子如下:
该系统接下来执行一系列步骤以用一组多个合计点来逼近概率分布中的每个点(步骤1806)。在一些实现中,所述概率分布可以具有200个合计点。首先,该系统基于给定的概率分布点的位置来确定针对在步骤1800中指定的CPU负载的调整因子(步骤1808)。接下来,该系统计算CPU利用率和相应的功率提取(步骤1810)。考虑如下事实:当CPU使用达到峰值时,存储器使用通常下降并且功率提取一般达到峰值(步骤1812),该系统随后计算存储器使用并调整来自步骤1810的所计算的CPU利用率和功率提取(步骤1814)。用于这些步骤的代码的例子如下:
随后,该系统将所计算的资源利用率(CPU和存储器两者)以及相应的功率提取存储到训练数据文件中(步骤1816)。最后,针对所述概率分布中的每个点从步骤1806-1816重复该过程,并且针对根据步骤1800要被计算的每个增量的CPU负载从步骤1802-1816重复该过程(步骤1818)。
前面的对各种实施例的描述提供了说明和描述,但不是意在是穷尽性的或者将本发明限于所公开的精确的形式。根据上面的教导,修改和变化是可能的,或者可以从根据本发明的实践中而被获得。将被理解的是:本发明意在覆盖被包括在所附的权利要求的精神和范围中的各种修改和等同布置。
Claims (36)
1.一种在数据处理系统中用于预测计算系统中的未来功率消耗的方法,包括:
接收要为其预测功率的一个或多个计算设备的指示;
接收由用户输入且与所述一个或多个计算设备相关联的一个或多个输入参数;
使用与所述一个或多个计算设备相关联的一个或多个所接收的输入参数自动地生成所述一个或多个计算设备在未来时间间隔上的功率消耗的预测;以及
传送所生成的预测,其中所述输入参数包括所述一个或多个计算设备的用户输入的时变的工作负载,并且所述预测独立于在所述一个或多个计算设备上运行的软件。
2.如权利要求1所述的方法,其特征在于,其中传送所生成的预测进一步包括将所生成的预测传送到下列中的一个:(1)用户以及(2)计算机系统。
3.如权利要求1所述的方法,其特征在于,进一步包括向用户显示所提供的所述功率消耗的预测。
4.如权利要求1所述的方法,其特征在于,进一步包括生成所述一个或多个计算设备的当前功率消耗的状态。
5.如权利要求4所述的方法,其特征在于,进一步包括传送所述一个或多个计算设备的当前功率消耗的状态。
6.如权利要求1所述的方法,其特征在于,其中生成所述预测进一步包括生成所述一个或多个计算设备的未来热量耗散的预测。
7.如权利要求1所述的方法,其特征在于,其中生成所述预测进一步包括基于所述一个或多个计算设备的未来热量耗散的预测来生成所述一个或多个计算设备的未来冷却成本的预测。
8.如权利要求1所述的方法,其特征在于,其中生成所述预测进一步包括生成所述一个或多个计算设备的未来气体排放的预测。
9.如权利要求1所述的方法,其特征在于,其中生成所述预测进一步包括生成所述一个或多个计算设备的未来成本的预测。
10.如权利要求1所述的方法,其特征在于,其中生成所述预测进一步包括生成与用户相关联的预测。
11.如权利要求1所述的方法,其特征在于,其中所述一个或多个输入参数包括下列中的一个或多个:(1)开始日期、(2)时间间隔、(3)功率的成本、(4)排放速率、(5)CPU利用率和(6)存储器利用率。
12.如权利要求1所述的方法,其特征在于,其中所述计算设备包括虚拟机,并且自动地生成包括自动地生成所述虚拟机的功率消耗的预测。
13.如权利要求1所述的方法,其特征在于,进一步包括自动地生成针对所述一个或多个计算设备上的一个或多个软件应用的未来功率消耗的预测。
14.如权利要求1所述的方法,其特征在于,其中所述计算设备是下列中的一个:、(1)存储器驱动器、(2)连网设备、(3)不间断电源(UPS)、(4)功率分配单元(PDU)、(5)计算机室空调(CRAC)以及(6)加热、通风、以及空气调节设备。
15.一种用于预测计算系统中的未来功率消耗的数据处理系统,包括:
存储器,所述存储器包括指令以致使处理器:
接收要为其预测功率的一个或多个计算设备的指示;
接收由用户输入且与所述一个或多个计算设备相关联的一个或多个输入参数;
使用与所述一个或多个计算设备相关联的一个或多个所接收的输入参数自动地生成所述一个或多个计算设备在未来时间间隔上的功率消耗的预测;以及
传送所生成的预测;以及
所述处理器被配置为执行所述存储器中的所述指令,其中所述输入参数包括所述一个或多个计算设备的用户输入的时变的工作负载,并且所述预测独立于在所述一个或多个计算设备上运行的软件。
16.如权利要求15所述的数据处理系统,其特征在于,其中传送所生成的预测进一步包括将所生成的预测传送到下列中的一个:(1)用户以及(2)计算机系统。
17.如权利要求15所述的数据处理系统,其特征在于,其中所述指令进一步致使所述处理器向所述用户显示所提供的所述功率消耗的预测。
18.如权利要求15所述的数据处理系统,其特征在于,其中所述指令进一步致使所述处理器生成所述一个或多个计算设备的当前功率消耗的状态。
19.如权利要求18所述的数据处理系统,其特征在于,其中所述指令进一步致使所述处理器传送所述一个或多个计算设备的当前功率消耗的状态。
20.如权利要求15所述的数据处理系统,其特征在于,其中生成所述预测进一步包括生成所述一个或多个计算设备的未来热量耗散的预测。
21.如权利要求15所述的数据处理系统,其特征在于,其中生成所述预测进一步包括基于所述一个或多个计算设备的未来热量耗散的预测来生成所述一个或多个计算设备的未来冷却成本的预测。
22.如权利要求15所述的数据处理系统,其特征在于,其中生成所述预测进一步包括生成所述一个或多个计算设备的未来气体排放的预测。
23.如权利要求15所述的数据处理系统,其特征在于,其中生成所述预测进一步包括生成所述一个或多个计算设备的未来成本的预测。
24.如权利要求15所述的数据处理系统,其特征在于,其中所述一个或多个输入参数包括下列中的一个或多个:(1)开始日期、(2)时间间隔、(3)功率的成本、(4)排放速率、(5)CPU利用率和(6)存储器利用率。
25.如权利要求15所述的数据处理系统,其特征在于,其中所述计算设备包括虚拟机,并且自动地生成包括自动地生成所述虚拟机的功率消耗的预测。
26.如权利要求15所述的数据处理系统,其特征在于,其中所述指令进一步致使所述处理器自动地生成针对所述一个或多个计算设备上的一个或多个软件应用的未来功率消耗的预测。
27.如权利要求15所述的数据处理系统,其特征在于,其中生成所述预测进一步包括生成与用户相关联的预测。
28.如权利要求15所述的数据处理系统,其特征在于,其中所述计算设备是下列中的一个:、(1)存储器驱动器、(2)连网设备、(3)不间断电源(UPS)、(4)功率分配单元(PDU)、(5)计算机室空调(CRAC)以及(6)加热、通风、以及空气调节设备。
29.一种在数据处理系统中用于确定计算系统中的当前功率消耗并预测所述计算系统中的未来功率消耗的方法,包括:
接收要为其预测功率的一个或多个计算设备的指示;
接收由用户输入且与所述一个或多个计算设备相关联的一个或多个输入参数;
使用与所述一个或多个计算设备相关联的一个或多个所接收的输入参数自动地生成下列中的一个:1)所述一个或多个计算设备的功率消耗的当前状态;以及2)所述一个或多个计算设备在未来时间间隔上的功率消耗的预测;以及
传送下列中的一个:(1)所述功率消耗的所述当前状态以及(2)所生成的预测,其中所述输入参数包括所述一个或多个计算设备的用户输入的时变的工作负载,并且所述预测独立于在所述一个或多个计算设备上运行的软件。
30.如权利要求29所述的方法,其特征在于,其中传送(1)所述功率消耗的所述当前状态以及(2)所生成的预测中的一个进一步包括向下列中的一个传送所生成的预测:(1)用户以及(2)计算机系统。
31.如权利要求29所述的方法,其特征在于,进一步包括向所述用户显示所提供的所述功率消耗的预测。
32.如权利要求29所述的方法,其特征在于,其中自动地生成进一步包括生成下列中的一个:(1)所述计算设备中的一个或多个的热量耗散的当前状态、以及(2)生成所述一个或多个计算设备的未来热量耗散的预测。
33.如权利要求29所述的方法,其特征在于,其中自动地生成进一步包括生成下列中的一个:(1)所述计算设备中的一个或多个的气体排放的当前状态、以及(2)生成所述一个或多个计算设备的未来气体排放的预测。
34.如权利要求29所述的方法,其特征在于,其中自动地生成进一步包括生成下列中的一个:(1)所述计算设备中的一个或多个的热量耗散的当前状态、以及(2)生成所述一个或多个计算设备的未来热量耗散的预测。
35.如权利要求29所述的方法,其特征在于,其中自动地生成进一步包括生成下列中的一个:(1)所述计算设备中的一个或多个的成本的当前状态、以及(2)生成所述一个或多个计算设备的未来成本的预测。
36.如权利要求29所述的方法,其特征在于,其中生成所述预测进一步包括生成所述一个或多个计算设备的未来气体排放的预测。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US37892810P | 2010-08-31 | 2010-08-31 | |
US61/378,928 | 2010-08-31 | ||
US13/220,613 | 2011-08-29 | ||
US13/220,613 US20120053925A1 (en) | 2010-08-31 | 2011-08-29 | Method and System for Computer Power and Resource Consumption Modeling |
PCT/US2011/001527 WO2012030390A1 (en) | 2010-08-31 | 2011-08-30 | Method and system for computer power and resource consumption modeling |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102959510A CN102959510A (zh) | 2013-03-06 |
CN102959510B true CN102959510B (zh) | 2017-02-08 |
Family
ID=45698340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180032474.9A Expired - Fee Related CN102959510B (zh) | 2010-08-31 | 2011-08-30 | 用于计算机功率和资源消耗建模的方法和系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20120053925A1 (zh) |
EP (1) | EP2612237A4 (zh) |
CN (1) | CN102959510B (zh) |
CA (1) | CA2805044A1 (zh) |
WO (1) | WO2012030390A1 (zh) |
Families Citing this family (93)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102446197B (zh) | 2010-09-30 | 2015-11-25 | 国际商业机器公司 | 一种数据转换方法和数据转换器 |
US8849469B2 (en) | 2010-10-28 | 2014-09-30 | Microsoft Corporation | Data center system that accommodates episodic computation |
JP5731907B2 (ja) * | 2011-06-02 | 2015-06-10 | 株式会社東芝 | 負荷分散装置、負荷分散方法及び負荷分散プログラム |
US9003017B2 (en) * | 2011-06-30 | 2015-04-07 | At&T Intellectual Property I, L.P. | Methods, devices, and computer program products for providing a computing application rating |
US9176841B2 (en) * | 2011-12-28 | 2015-11-03 | Microsoft Technology Licensing, Llc | Estimating application energy usage in a target device |
US8762525B2 (en) * | 2012-03-08 | 2014-06-24 | International Business Machines Corporation | Managing risk in resource over-committed systems |
US9182807B2 (en) | 2012-12-31 | 2015-11-10 | Hewlett-Packard Development Company, L.P. | Systems and methods for predictive power management in a computing center |
US9256700B1 (en) * | 2012-12-31 | 2016-02-09 | Emc Corporation | Public service for emulation of application load based on synthetic data generation derived from preexisting models |
US9438493B2 (en) * | 2013-01-31 | 2016-09-06 | Go Daddy Operating Company, LLC | Monitoring network entities via a central monitoring system |
US20140298347A1 (en) * | 2013-03-13 | 2014-10-02 | Samsung Electronics Co., Ltd. | Computing system with resource management mechanism and method of operation thereof |
CN104102523A (zh) * | 2013-04-03 | 2014-10-15 | 华为技术有限公司 | 迁移虚拟机的方法和资源调度平台 |
US9069737B1 (en) * | 2013-07-15 | 2015-06-30 | Amazon Technologies, Inc. | Machine learning based instance remediation |
US10248977B2 (en) | 2013-08-24 | 2019-04-02 | Vmware, Inc. | NUMA-based client placement |
WO2015047126A1 (en) * | 2013-09-27 | 2015-04-02 | Emc Corporation | Dynamic malicious application detection in storage systems |
CN103617146B (zh) * | 2013-12-06 | 2017-10-13 | 北京奇虎科技有限公司 | 一种基于硬件资源消耗的机器学习方法及装置 |
CN104731657B (zh) * | 2013-12-24 | 2019-03-12 | 中国移动通信集团山西有限公司 | 一种资源调度方法和系统 |
US9367422B2 (en) * | 2014-01-15 | 2016-06-14 | Ca, Inc. | Determining and using power utilization indexes for servers |
CN103823718B (zh) * | 2014-02-24 | 2017-02-15 | 南京邮电大学 | 一种面向绿色云计算的资源配置方法 |
US9753782B2 (en) | 2014-04-24 | 2017-09-05 | Empire Technology Development Llc | Resource consumption optimization |
US10234835B2 (en) | 2014-07-11 | 2019-03-19 | Microsoft Technology Licensing, Llc | Management of computing devices using modulated electricity |
US20160011617A1 (en) * | 2014-07-11 | 2016-01-14 | Microsoft Technology Licensing, Llc | Power management of server installations |
US9933804B2 (en) | 2014-07-11 | 2018-04-03 | Microsoft Technology Licensing, Llc | Server installation as a grid condition sensor |
US11307884B2 (en) | 2014-07-16 | 2022-04-19 | Vmware, Inc. | Adaptive resource management of a cluster of host computers using predicted data |
CN105357717A (zh) * | 2014-08-22 | 2016-02-24 | 中国移动通信集团公司 | 一种调节ac间负载均衡的方法、接入点及接入控制器 |
US20160092801A1 (en) * | 2014-09-30 | 2016-03-31 | International Business Machines Corporation | Using complexity probability to plan a physical data center relocation |
CN104268003B (zh) * | 2014-09-30 | 2017-11-14 | 南京理工大学 | 一种适用于虚拟机动态迁移的内存状态迁移方法 |
CN105786152B (zh) * | 2014-12-26 | 2019-03-29 | 联想(北京)有限公司 | 一种控制方法及电子设备 |
US10891558B2 (en) * | 2015-01-21 | 2021-01-12 | Anodot Ltd. | Creation of metric relationship graph based on windowed time series data for anomaly detection |
US9813432B2 (en) * | 2015-01-23 | 2017-11-07 | Cisco Technology, Inc. | Tracking anomaly propagation at the network level |
US11182713B2 (en) | 2015-01-24 | 2021-11-23 | Vmware, Inc. | Methods and systems to optimize operating system license costs in a virtual data center |
US10891383B2 (en) | 2015-02-11 | 2021-01-12 | British Telecommunications Public Limited Company | Validating computer resource usage |
US9959148B2 (en) * | 2015-02-11 | 2018-05-01 | Wipro Limited | Method and device for estimating optimal resources for server virtualization |
US10311171B2 (en) | 2015-03-02 | 2019-06-04 | Ca, Inc. | Multi-component and mixed-reality simulation environments |
US9639443B2 (en) * | 2015-03-02 | 2017-05-02 | Ca, Inc. | Multi-component and mixed-reality simulation environments |
US20160259869A1 (en) * | 2015-03-02 | 2016-09-08 | Ca, Inc. | Self-learning simulation environments |
US9825875B2 (en) * | 2015-03-31 | 2017-11-21 | Alcatel Lucent | Method and apparatus for provisioning resources using clustering |
US10031785B2 (en) | 2015-04-10 | 2018-07-24 | International Business Machines Corporation | Predictive computing resource allocation for distributed environments |
US10417226B2 (en) * | 2015-05-29 | 2019-09-17 | International Business Machines Corporation | Estimating the cost of data-mining services |
US10853750B2 (en) | 2015-07-31 | 2020-12-01 | British Telecommunications Public Limited Company | Controlled resource provisioning in distributed computing environments |
WO2017021154A1 (en) | 2015-07-31 | 2017-02-09 | British Telecommunications Public Limited Company | Access control |
WO2017021153A1 (en) | 2015-07-31 | 2017-02-09 | British Telecommunications Public Limited Company | Expendable access control |
US11010196B2 (en) * | 2015-08-31 | 2021-05-18 | Vmware, Inc. | Capacity analysis using closed-system modules |
CN105183627A (zh) * | 2015-10-20 | 2015-12-23 | 浪潮(北京)电子信息产业有限公司 | 一种服务器性能预测的方法及系统 |
US9766693B2 (en) * | 2016-01-07 | 2017-09-19 | International Business Machines Corporation | Scheduling framework for virtual machine power modes |
US20170255864A1 (en) * | 2016-03-05 | 2017-09-07 | Panoramic Power Ltd. | Systems and Methods Thereof for Determination of a Device State Based on Current Consumption Monitoring and Machine Learning Thereof |
WO2017167548A1 (en) | 2016-03-30 | 2017-10-05 | British Telecommunications Public Limited Company | Assured application services |
US11159549B2 (en) | 2016-03-30 | 2021-10-26 | British Telecommunications Public Limited Company | Network traffic threat identification |
WO2017167547A1 (en) | 2016-03-30 | 2017-10-05 | British Telecommunications Public Limited Company | Cryptocurrencies malware based detection |
US11194901B2 (en) | 2016-03-30 | 2021-12-07 | British Telecommunications Public Limited Company | Detecting computer security threats using communication characteristics of communication protocols |
WO2017167549A1 (en) | 2016-03-30 | 2017-10-05 | British Telecommunications Public Limited Company | Untrusted code distribution |
US10552761B2 (en) * | 2016-05-04 | 2020-02-04 | Uvic Industry Partnerships Inc. | Non-intrusive fine-grained power monitoring of datacenters |
US10430251B2 (en) * | 2016-05-16 | 2019-10-01 | Dell Products L.P. | Systems and methods for load balancing based on thermal parameters |
US10361965B2 (en) | 2016-06-30 | 2019-07-23 | Microsoft Technology Licensing, Llc | Datacenter operations optimization system |
US10048732B2 (en) | 2016-06-30 | 2018-08-14 | Microsoft Technology Licensing, Llc | Datacenter power management system |
US10419320B2 (en) | 2016-06-30 | 2019-09-17 | Microsoft Technology Licensing, Llc | Infrastructure resource management system |
US10200303B2 (en) | 2016-06-30 | 2019-02-05 | Microsoft Technology Licensing, Llc | Datacenter byproduct management interface system |
US10585468B2 (en) * | 2016-08-18 | 2020-03-10 | Virtual Power Systems, Inc. | Datacenter power management using dynamic redundancy |
US20180052574A1 (en) * | 2016-08-22 | 2018-02-22 | United States Of America As Represented By Secretary Of The Navy | Energy Efficiency and Energy Security Optimization Dashboard for Computing Systems |
US10643121B2 (en) * | 2017-01-19 | 2020-05-05 | Deepmind Technologies Limited | Optimizing data center controls using neural networks |
US11076509B2 (en) | 2017-01-24 | 2021-07-27 | The Research Foundation for the State University | Control systems and prediction methods for it cooling performance in containment |
WO2018178034A1 (en) | 2017-03-30 | 2018-10-04 | British Telecommunications Public Limited Company | Anomaly detection for computer systems |
EP3382591B1 (en) | 2017-03-30 | 2020-03-25 | British Telecommunications public limited company | Hierarchical temporal memory for expendable access control |
WO2018178026A1 (en) | 2017-03-30 | 2018-10-04 | British Telecommunications Public Limited Company | Hierarchical temporal memory for access control |
US10387285B2 (en) * | 2017-04-17 | 2019-08-20 | Microsoft Technology Licensing, Llc | Power evaluator for application developers |
US11451398B2 (en) | 2017-05-08 | 2022-09-20 | British Telecommunications Public Limited Company | Management of interoperating machine learning algorithms |
EP3622448A1 (en) | 2017-05-08 | 2020-03-18 | British Telecommunications Public Limited Company | Adaptation of machine learning algorithms |
WO2018206405A1 (en) * | 2017-05-08 | 2018-11-15 | British Telecommunications Public Limited Company | Interoperation of machine learning algorithms |
EP3622446A1 (en) | 2017-05-08 | 2020-03-18 | British Telecommunications Public Limited Company | Load balancing of machine learning algorithms |
GB201711223D0 (en) * | 2017-07-12 | 2017-08-23 | Univ Leeds Innovations Ltd | Data centre utilisation forecasting system and method |
US10452846B2 (en) | 2017-07-13 | 2019-10-22 | Cisco Technology, Inc. | OS start event detection, OS fingerprinting, and device tracking using enhanced data features |
US10521289B2 (en) * | 2017-10-31 | 2019-12-31 | Hewlett Packard Enterprise Development Lp | Identification of performance affecting flaws in a computing system |
US10833962B2 (en) | 2017-12-14 | 2020-11-10 | International Business Machines Corporation | Orchestration engine blueprint aspects for hybrid cloud composition |
US10972366B2 (en) | 2017-12-14 | 2021-04-06 | International Business Machines Corporation | Orchestration engine blueprint aspects for hybrid cloud composition |
US11025511B2 (en) * | 2017-12-14 | 2021-06-01 | International Business Machines Corporation | Orchestration engine blueprint aspects for hybrid cloud composition |
CN110308782B (zh) * | 2018-03-22 | 2023-09-08 | 阿里巴巴集团控股有限公司 | 功耗预测、控制方法、设备及计算机可读存储介质 |
US10841369B2 (en) | 2018-11-26 | 2020-11-17 | International Business Machines Corporation | Determining allocatable host system resources to remove from a cluster and return to a host service provider |
US10877814B2 (en) | 2018-11-26 | 2020-12-29 | International Business Machines Corporation | Profiling workloads in host systems allocated to a cluster to determine adjustments to allocation of host systems to the cluster |
US10956221B2 (en) | 2018-11-26 | 2021-03-23 | International Business Machines Corporation | Estimating resource requests for workloads to offload to host systems in a computing environment |
CN112334875B (zh) * | 2018-11-30 | 2022-04-29 | 华为技术有限公司 | 一种功耗预测方法及装置 |
US10817046B2 (en) | 2018-12-31 | 2020-10-27 | Bmc Software, Inc. | Power saving through automated power scheduling of virtual machines |
US11579680B2 (en) * | 2019-02-01 | 2023-02-14 | Alibaba Group Holding Limited | Methods and devices for power management based on synthetic machine learning benchmarks |
US11943285B2 (en) * | 2019-03-22 | 2024-03-26 | International Business Machines Corporation | Metering computing resources in cloud computing environments |
JP2020197836A (ja) * | 2019-05-31 | 2020-12-10 | ファナック株式会社 | 産業用機械のデータ収集確認装置 |
EP3764295A1 (de) * | 2019-07-09 | 2021-01-13 | Bayer Business Services GmbH | Identifizieren von ungenutzten servern |
WO2021015786A1 (en) * | 2019-07-25 | 2021-01-28 | Hewlett-Packard Development Company, L.P. | Workload performance prediction |
CN110739688A (zh) * | 2019-10-31 | 2020-01-31 | 中国南方电网有限责任公司 | 基于scada大数据的城市电网负载均衡方法 |
US11221595B2 (en) | 2019-11-14 | 2022-01-11 | Google Llc | Compute load shaping using virtual capacity and preferential location real time scheduling |
GB201919009D0 (en) * | 2019-12-20 | 2020-02-05 | Eaton Intelligent Power Ltd | Power management of computing system |
US11526784B2 (en) | 2020-03-12 | 2022-12-13 | Bank Of America Corporation | Real-time server capacity optimization tool using maximum predicted value of resource utilization determined based on historica data and confidence interval |
US11652831B2 (en) * | 2020-04-14 | 2023-05-16 | Hewlett Packard Enterprise Development Lp | Process health information to determine whether an anomaly occurred |
CN111914000B (zh) * | 2020-06-22 | 2024-03-26 | 华南理工大学 | 一种基于功耗预测模型的服务器功率封顶方法、系统 |
US11348035B2 (en) * | 2020-10-27 | 2022-05-31 | Paypal, Inc. | Shared prediction engine for machine learning model deployment |
US11531387B1 (en) * | 2022-04-11 | 2022-12-20 | Pledgeling Technologies, Inc. | Methods and systems for real time carbon emission determination incurred by execution of computer processes and the offset thereof |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7272517B1 (en) * | 2006-04-25 | 2007-09-18 | International Business Machines Corporation | Method and system for providing performance estimations for a specified power budget |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7127625B2 (en) * | 2003-09-04 | 2006-10-24 | Hewlett-Packard Development Company, L.P. | Application management based on power consumption |
US7581125B2 (en) * | 2005-09-22 | 2009-08-25 | Hewlett-Packard Development Company, L.P. | Agent for managing power among electronic systems |
US7584021B2 (en) * | 2006-11-08 | 2009-09-01 | Hewlett-Packard Development Company, L.P. | Energy efficient CRAC unit operation using heat transfer levels |
US20090164811A1 (en) * | 2007-12-21 | 2009-06-25 | Ratnesh Sharma | Methods For Analyzing Environmental Data In An Infrastructure |
US8671294B2 (en) * | 2008-03-07 | 2014-03-11 | Raritan Americas, Inc. | Environmentally cognizant power management |
US8001403B2 (en) * | 2008-03-14 | 2011-08-16 | Microsoft Corporation | Data center power management utilizing a power policy and a load factor |
KR20110007205A (ko) * | 2008-04-21 | 2011-01-21 | 어댑티브 컴퓨팅 엔터프라이즈 인코포레이티드 | 컴퓨트 환경에서 에너지 소비를 관리하기 위한 시스템 및 방법 |
CA2724288A1 (en) * | 2008-05-12 | 2009-11-19 | Energy And Power Solutions, Inc. | Systems and methods for assessing and optimizing energy use and environmental impact |
US8346398B2 (en) * | 2008-08-08 | 2013-01-01 | Siemens Industry, Inc. | Data center thermal performance optimization using distributed cooling systems |
US9778718B2 (en) * | 2009-02-13 | 2017-10-03 | Schneider Electric It Corporation | Power supply and data center control |
US8225119B2 (en) * | 2009-02-23 | 2012-07-17 | Microsoft Corporation | Energy-aware server management |
US8458500B2 (en) * | 2009-11-30 | 2013-06-04 | International Business Machines Corporation | Server allocation to workload based on energy profiles |
-
2011
- 2011-08-29 US US13/220,613 patent/US20120053925A1/en not_active Abandoned
- 2011-08-30 CN CN201180032474.9A patent/CN102959510B/zh not_active Expired - Fee Related
- 2011-08-30 EP EP11822250.4A patent/EP2612237A4/en not_active Withdrawn
- 2011-08-30 CA CA2805044A patent/CA2805044A1/en not_active Abandoned
- 2011-08-30 WO PCT/US2011/001527 patent/WO2012030390A1/en active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7272517B1 (en) * | 2006-04-25 | 2007-09-18 | International Business Machines Corporation | Method and system for providing performance estimations for a specified power budget |
Also Published As
Publication number | Publication date |
---|---|
CN102959510A (zh) | 2013-03-06 |
US20120053925A1 (en) | 2012-03-01 |
EP2612237A4 (en) | 2016-08-17 |
WO2012030390A1 (en) | 2012-03-08 |
CA2805044A1 (en) | 2012-03-08 |
EP2612237A1 (en) | 2013-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102959510B (zh) | 用于计算机功率和资源消耗建模的方法和系统 | |
US10489215B1 (en) | Long-range distributed resource planning using workload modeling in hyperconverged computing clusters | |
RU2636848C2 (ru) | Способ оценки потребления мощности | |
Alipourfard et al. | {CherryPick}: Adaptively unearthing the best cloud configurations for big data analytics | |
US10552761B2 (en) | Non-intrusive fine-grained power monitoring of datacenters | |
US10521244B2 (en) | Information handling system configuration parameter history management | |
CN102449603B (zh) | 服务器管理程序、管理服务器以及虚拟服务器配置方法 | |
CN105900540B (zh) | 数据中心控制方法和系统 | |
US11715025B2 (en) | Method for forecasting distributed resource utilization in a virtualization environment | |
Gmach et al. | Capacity management and demand prediction for next generation data centers | |
JP5152186B2 (ja) | コンピュータシステム、管理装置、及びコンピュータシステム管理方法 | |
Lin et al. | A cloud server energy consumption measurement system for heterogeneous cloud environments | |
US9319280B2 (en) | Calculating the effect of an action in a network | |
US20120233328A1 (en) | Accurately predicting capacity requirements for information technology resources in physical, virtual and hybrid cloud environments | |
EP2116967A1 (en) | Apparatus, and associated method, for facilitating data-center management | |
WO2019204898A1 (en) | Workload scheduling in a distributed computing environment based on an applied computational value | |
JP2006048702A (ja) | トランザクションベースの性能モデルの自動構成 | |
Islam et al. | Distributed temperature-aware resource management in virtualized data center | |
Netti et al. | Operational data analytics in practice: experiences from design to deployment in production HPC environments | |
CA3132644C (en) | System and method of detecting application affinity using network telemetry | |
Nawrocki et al. | Anomaly detection in the context of long-term cloud resource usage planning | |
US10361925B1 (en) | Storage infrastructure scenario planning | |
KR101627912B1 (ko) | 전류 계산 시스템 및 이를 이용한 전력 분석 시스템 | |
Sharma et al. | Simulation of Cloud Platform Supporting Wireless Sensor Network | |
KR101428556B1 (ko) | 전류 계산 시스템 및 이를 이용한 전력 분석 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170208 Termination date: 20180830 |