首页 / 专利库 / 电脑零配件 / 协处理器 / 用于增加负荷密度和改进能效的功率平衡

用于增加负荷密度和改进能效的功率平衡

阅读:625发布:2020-05-14

专利汇可以提供用于增加负荷密度和改进能效的功率平衡专利检索,专利查询,专利分析的服务。并且一种用于调整 服务器 功耗的技术,包括从多个服务器接收资源利用数据的计算设备。该计算设备基于该资源利用数据标识多个服务器的源服务器和目的服务器并基于该资源利用数据计算所标识的源服务器和所标识的目的服务器之间的资源利用的差。如果该计算设备确定该差超过 阈值 ,则该计算设备通过功耗变化量增加该源服务器的处理器的处理器利用并通过对应功耗变化量减少该目的服务器的处理器的处理器利用,以平衡该服务器的资源并建立更多的净空间以在该服务器设置新的负荷。,下面是用于增加负荷密度和改进能效的功率平衡专利的具体信息内容。

1. 一种用于调整服务器功耗的计算设备,所述计算设备包括:
通信模,用于从多个服务器接收资源利用数据;以及
功率平衡模块,用于(i)基于所述资源利用数据标识所述多个服务器的源服务器和目的服务器,(ii)基于所述资源利用数据计算所标识的源服务器和所标识的目的服务器之间资源利用的差,(iii)响应于确定所述资源利用的差超过阈值,以功耗变化量增加源服务器的处理器的处理器利用,以及(iv)响应于确定所述资源利用的差超过所述阈值,以对应功耗变化量减少所述目的服务器的所述处理器的所述处理器利用。
2.根据权利要求1的计算设备,其中所述计算设备包括包含所述多个服务器的服务器组的组控制器
3. 根据权利要求1的计算设备,其中:
所述通信模块用于检索包括所述多个服务器的服务器列表;以及
所述功率平衡模块用于(i)基于所述服务器的资源利用量排序所述服务器的列表,并且(ii)基于所述排序列表中所述服务器的顺序标识所述排序列表中所述服务器的一半为目的服务器而所述排序列表中所述服务器的另一半为源服务器。
4.根据权利要求1的计算设备,其中所述资源利用数据标识对应服务器的存储器利用量。
5. 根据权利要求1的计算设备,其中增加所述源服务器的所述处理器的所述处理器利用包括修改所述源服务器的所述处理器的处理器状态,其中所述处理器状态定义所述处理器的频率操作点。
6.根据权利要求1的计算设备,其中增加所述源服务器的所述处理器的所述处理器利用包括降低所述源服务器的所述处理器的操作频率;并且
其中减少所述目的服务器的所述处理器的所述处理器利用包括增加所述目的服务器的所述处理器的操作频率。
7.根据权利要求1的计算设备,其中所述通信模块用于周期性地从所述多个服务器接收资源利用数据。
8.一种用于功率优化的服务器,所述服务器包括:
硬件监视模块,用于(i)监视所述服务器的资源的利用以及(ii)基于所监视的资源利用生成资源利用数据;
通信模块,用于(i)传输所述资源利用数据至包括所述服务器的服务器组的组控制器,并且(ii)响应于所述资源利用数据的传输从所述组控制器接收指令以修改所述服务器的处理器的处理器利用,其中接收所述指令表示所述服务器的所述资源利用数据与所述服务器组的另一服务器的资源利用数据相差至少阈值量;以及
安全协处理器,用于基于所述组控制器的所述指令以功耗变化量修改所述服务器的所述处理器的处理器利用。
9.根据权利要求8的服务器,其中修改所述处理器的所述处理器利用包括修改所述处理器的处理器状态,其中所述处理器状态定义所述处理器的频率操作点。
10. 根据权利要求8的服务器,其中所述安全协处理器用于:
响应于从所述组控制器接收减少所述处理器的所述处理器利用的指令而增加所述处理器的操作频率;并且
响应于从所述组控制器接收增加所述处理器的所述处理器利用的指令而减少所述处理器的所述操作频率。
11.根据权利要求8的服务器,其中所述通信模块用于周期性地传输所述资源利用数据至所述组控制器。
12.根据权利要求8的服务器,其中所述资源利用数据标识所述服务器的存储器利用量。
13.一种用于调整服务器功耗的计算设备,所述计算设备包括:
用于利用所述计算设备从多个服务器接收资源利用数据的装置;
用于在所述计算设备基于所述资源利用数据标识所述多个服务器的源服务器和目的服务器的装置;
用于在所述计算设备基于所述资源利用数据计算所标识的源服务器和所标识的目的服务器之间的资源利用的差的装置;
用于响应于确定所述资源利用的差超过阈值,利用所述计算设备以功耗变化量增加所述源服务器的处理器的处理器利用的装置;以及
用于响应于确定所述资源利用的差超过所述阈值,利用所述计算设备以对应功耗变化量减少所述目的服务器的所述处理器的所述处理器利用的装置。
14.根据权利要求13的计算设备,进一步包括:
用于利用所述计算设备检索包括所述多个服务器的服务器列表的装置;
用于在所述计算设备基于所述服务器的资源利用量排序所述服务器的列表的装置;以及
用于基于所述排序列表中服务器的顺序,在所述计算设备标识所述排序列表中所述服务器的一半为目的服务器而所述排序列表中所述服务器的另一半为源服务器的装置。
15.根据权利要求13的计算设备,其中接收所述资源利用数据的装置包括从所述多个服务器接收资源利用数据的装置,所述资源利用数据标识对应服务器的存储器利用量。
16. 根据权利要求13的计算设备,其中增加所述源服务器的所述处理器的所述处理器利用的装置包括修改源服务器的所述处理器的处理器状态的装置,所述处理器状态定义所述处理器的频率操作点。
17.根据权利要求13的计算设备,其中增加所述源服务器的所述处理器的所述处理器利用的装置包括降低所述源服务器的所述处理器的操作频率的装置;以及其中减少所述目的服务器的所述处理器的所述处理器利用的装置包括增加所述目的服务器的所述处理器的操作频率的装置。
18.根据权利要求13的计算设备,其中接收所述资源利用数据的装置包括周期性地从所述多个服务器接收资源利用数据的装置。
19.一种用于利用计算设备调整服务器功耗的方法,所述方法包括:
利用所述计算设备从多个服务器接收资源利用数据;
在所述计算设备基于所述资源利用数据标识所述多个服务器的源服务器和目的服务器;
在所述计算设备基于所述资源利用数据计算所标识的源服务器和所标识的目的服务器之间的资源利用的差;
响应于确定所述资源利用的差超过阈值,利用所述计算设备以功耗变化量增加所述源服务器的处理器的处理器利用;并且
响应于确定所述资源利用的差超过所述阈值,利用所述计算设备以对应功耗变化量减少所述目的服务器的所述处理器的所述处理器利用。
20.根据权利要求19的方法,进一步包括:
利用所述计算设备检索包括所述多个服务器的服务器列表;
在所述计算设备基于所述服务器的资源利用量排序所述服务器的列表;以及基于所述排序列表中所述服务器的顺序,在所述计算设备标识所述排序列表中所述服务器的一半为目的服务器而所述排序列表中所述服务器的另一半为源服务器。
21.根据权利要求19的方法,其中接收所述资源利用数据包括从多个服务器接收资源利用数据,所述资源利用数据标识对应服务器的存储器利用量。
22. 根据权利要求19的方法,其中增加所述源服务器的所述处理器的所述处理器利用包括修改所述源服务器的所述处理器的处理器状态,所述处理器状态定义所述处理器的频率操作点。
23.根据权利要求19的方法,其中增加所述源服务器的所述处理器的所述处理器利用包括降低所述源服务器的所述处理器的操作频率;以及
其中减少所述目的服务器的所述处理器的所述处理器利用包括增加所述目的服务器的所述处理器的操作频率。
24.根据权利要求19的方法,其中接收所述资源利用数据包括周期性地从所述多个服务器接收资源利用数据。
25.一种机器可读介质,其上面存储指令,所述指令在被执行时导致所述机器执行如权利要求19-24中任一项所述的方法。

说明书全文

用于增加负荷密度和改进能效的功率平衡

背景技术

[0001] 计算扩展了数据中心的使用以用于当今计算需求。数据中心提供计算服务和资源(诸如数据处理和存储)并且通常包括设置在由组控制器控制的组中的大量服务器。由数据中心处理的负荷在多种程度上利用服务器硬件资源。例如,某些负荷可主要利用存储器和数据存储,而其他负荷可主要利用服务器的处理器,其导致计算资源的低效使用。在纠正这些低效的工作中,IT管理器通常通过(例如,在服务器之间)移动负荷而平衡负荷,这是低效的,因为负荷可随时间改变。
[0002] 数据中心正在规模,复杂度和功耗量上增长。由于能量的成本在全世界继续上升,企业已经在寻找改进其在使用的系统的能效的机会,系统包括其网络中的数据中心和其他计算设备。总体上,已从至少两个方面工作以改进这些的系统能效-以降低数据中心服务器的功耗并增加消耗功率的使用效率。附图说明
[0003] 本文描述的概念在附图中仅以示例的形式说明,而非以限制的形式。为简单和清楚说明起见,图中说明的元素不一定按比例绘制。在考虑恰当时,参考标签在附图中被重复,以表示对应或相似元素。
[0004] 图1为用于调整服务器功耗的系统的至少一个实施例的简化框图
[0005] 图2为图1的计算设备环境和系统服务器环境的至少一个实施例的简化框图;
[0006] 图3和4为在图1系统的组控制器中调整服务器功耗方法的至少一个实施例的简化流程图;以及
[0007] 图5为在图1的系统的服务器进行功率优化的方法的至少一个实施例的简化流程图。

具体实施方式

[0008] 尽管本公开的概念允许多种修改和可选的形式,但其具体实施例已在附图以示例的形式示出,并将在本文详细地描述。然而,应当理解,并非意图将本公开的概念限制在公开的特定形式,而相反意图是覆盖与本公开和所附权利要求书一致的所有修改,等同物和可选项。
[0009] 说明书引用的“一个实施例”,“一实施例”,“说明性的实施例”等表示描述的实施例可包括特定特征,结构或特性,但每个实施例可能或不一定包括该特定特征,结构或特性。此外,该词语并非一定参考相同的实施例。进一步,当特定特征,结构或特性结合实施例描述时,认为其处于本领域技术人员的知识中确定结合其他实施例的特征,结构或特性是否明确描述。
[0010] 公开实施例在某些情况下可实现于硬件,固件软件或其任何组合。公开实施例还可实现为由暂时性或非暂时性机器可读(例如,计算机可读)存储介质承载或存储的指令,其可被一个或多个处理器读取和执行。机器可读存储介质可实施为任何存储设备、机构或其他物理结构,以用于存储或传输机器(例如,易失性或非易失性存储器,介质盘或其他介质设备)可读形式的信息。
[0011] 在附图中,某些结构或方法特征可以特定排列和/或顺序示出。然而,应当理解,可能不需要特定排列和/或顺序。相反,在某些实施例中,这些特征可以与说明性附图所示出的不同的方式和/或顺序设置。附加地,特定附图中包含的结构或方法特征并非意图暗示该特征在所有实施例中都需要,以及在某些实施例中可能不被包含或可与其他特征组合。
[0012] 现参照图1,用于调整服务器功耗的系统100包括组控制器102,网络106和多个服务器108。在使用中,如下文更详细地讨论,组控制器102可从属于其组的服务器108接收资源利用数据并且平衡服务器108之间的功率。特别地,组控制器102可增加服务器108之一的处理器利用并且减少另一服务器108的处理器利用,以更好的平衡负荷并改进能效。组控制器102可实施为任何类型的计算设备,能够与服务器108建立通信链路并执行本文描述的功能。例如,组控制器102可实施为服务器,网站设备,台式计算机,蜂窝电话,智能电话,平板计算机,膝上型计算机,个人数字助理,移动互联网设备和/或其他任何计算/通信设备。
[0013] 如图1所示,说明性的组控制器102包括处理器110,输入/输出(“I/O”)子系统112,存储器114,数据存储116,通信电路118和一个或多个外围设备120。当然,组控制器102在其它实施例可包括其他或附加的组件,诸如其常见于典型计算设备(例如,多种输入/输出设备)的组件。附加地,在某些实施例中,一个或多个说明性的组件可合并入另一组件或以其它形式来自另一组件的一部分。例如,存储器114或其部分在某些实施例中可合并入处理器110。
[0014] 处理器110可实施为能够执行本文描述的功能的任何类型的处理器。例如,处理器可实施为单核或多核处理器、数字信号处理器、微控制器或其他处理器或处理/控制电路。类似地,存储器114可实施为能够执行本文描述的功能的任何类型的易失性或非易失性存储器或数据存储。在操作中,存储器114可存储在组控制器102的操作期间使用的多种数据和软件,诸如操作系统、应用、程序、库以及驱动器。存储器114经由I/O子系统112可通信地耦合于处理器110,其可实施为电路和/或组件以利于与处理器110、存储器114和组控制器
102的其他组件的输入/输出操作。例如,I/O子系统112可实施为或以其它方式包括存储器控制器中枢、输入/输出控制中心、固件设备、通信链路(即,点对点链路、总线链路、线、缆、光导、印刷电路板迹线等)和/或其他组件和子系统以实现输入/输出操作。在某些实施例中,I/O子系统112可形成片上系统(SoC)的一部分并与处理器110,存储器114和组控制器
102的其他组件一起合并入单个集成电路芯片。
[0015] 数据存储116可实施为任何类型的设备,配置用于短期或长期数据存储,诸如,存储器设备和电路,存储卡,硬盘驱动,固态驱动或其他数据存储设备。如图1所示,数据存储116包括资源利用数据122和一个或多个服务器列表124。资源利用数据122可从每个服务器
108接收并提供关于服务器108的特定资源利用量,类型和/或程度的信息(例如,存储器利用,处理器利用,网络利用或其他资源利用信息),其可用于平衡服务器108之间的功耗。当然,在其它实施例中,资源利用数据122可从服务器108以外的计算设备(例如,资源监视设备)接收。
[0016] 进一步,组控制器102可接收调整功耗的服务器108的一个或多个列表216。例如,组控制器102可检索包括属于关联于组控制器102的组的所有服务器108的服务器列表216。在某些实施例中,服务器列表216可基于分配至组控制器102的服务器108生成(例如,通过组控制器102)。应当理解,分配至组控制器102,由组控制器102控制或以其它方式关联于组控制器102的特定服务器108可随时间变化。附加地,以下讨论的,组控制器102可基于资源利用数据122分类服务器列表216。在某些实施例中,一个或多个分类的列表还可存储于数据存储116。
[0017] 组控制器102的通信电路118可实施为任何通信电路、设备或其集合,通信电路、设备或其集合能够允许组控制器102和其他远程设备(例如,服务器108)之间通过网络106通信。通信电路118可配置成使用任何一个或多个通信技术(例如,无线或有线通信)和相关协议(例如,以太网、 WiMAX等)来实现该通信。通信电路118可进一步配置成使用多种消息传递协议。例如,通信电路118可利用高级消息队列协议(AMQP)与服务器108相通信。在某些实施例中,通信电路118可与一个或多个服务器108建立带内和/或带外通信连接。例如,通信电路118可使用智能平台管理接口(IPMI)以允许组控制器102和服务器108的一个或多个组件(例如,安全协处理器)之间的带外通信。
[0018] 组控制器102的一个或多个外围设备120可包括任何数量的附加的外围或接口设备。包括于外围设备120的特定设备可取决于例如组控制器102的类型和/或使用意图。如图1所示,组控制器102可属于或以其它方式形成云环境104的一部分。云环境104可实施为任何适用于分布式计算和/或资源管理并能够执行本文描述的功能的云计算环境。应当理解,在某些实施例中,服务器108可选地或附加地可形成一部分云环境104。
[0019] 网络106可实施为任何类型的通信网络,其能够在组控制器102和服务器108之间实现通信。因此,网络106可包括一个或多个网络、路由器、交换机、计算机和/或其他中间设备。例如,网络106可实施为或以其它方式包括一个或多个局域网或广域网、公共可用全局网络(例如,互联网)、蜂窝网络、电话网络、ad hoc网络或其任何组合。当然,应当理解,组控制器102可与服务器108通过一个网络106相通信,而组控制器102和/或服务器108可与其他远程设备通过另一网络106相通信。
[0020] 每个服务器108可实施为能够执行本文描述的功能的任何类型的计算设备或服务器。例如,在某些实施例中,每个服务器108可类似于上述组控制器102。即,每个服务器108可实施为企业级服务器计算机、台式计算机、膝上型计算机、平板计算机、蜂窝电话、智能电话、个人数字助理、移动互联网设备和/或其他任何计算/通信设备。进一步,服务器108可包括类似于以上讨论的组控制器102的组件。组控制器102的那些组件的描述同样可用于描述服务器108的组件,且为描述清晰起见本文中不再重复。
[0021] 如图1说明性所示,每个服务器108还可包括安全协处理器126。安全协处理器126可实施为能够执行本文描述的功能的任何硬件组件或电路。在某些实施例中,安全协处理器126能够建立可信执行环境。例如,安全协处理器126可实施为可信平台模(TPM),可管理引擎(ME),集中安全引擎(CSE)或另一带外处理器。在某些实施例中,安全协处理器126实施为带外处理器,配置成独立地并且相对于服务器108的主处理器以带外方式操作。在某些实施例中安全协处理器126可使服务器108与组控制器102经由带外通信通道相通信。进一步,应当理解,服务器108可包括常见于计算设备或服务器的其他组件、子组件和设备,其没有在上文参考组控制器102讨论,并且为清晰描述起见本文中不再讨论。如上文表示,服务器108可属于关联于组控制器102的组。应当理解,属于组控制器102的组的特定服务器可以任何合适的方式来定义或以其它方式建立。例如,在一个实施例中,每个服务器108的机架可组成由组控制器102控制的组。附加地,在某些实施例中,组控制器102可配置成控制服务器的多个组。
[0022] 现参照图2,在使用中,系统100的组控制器102建立环境200并且系统100的服务器108建立环境250以用于调整服务器功耗。说明性的实施例中组控制器102的环境200包括功率平衡模块202、负荷调度模块204、通信模块206、资源利用数据214和一个或多个服务器列表216。附加地,功率平衡模块202包括等级模块208、功率调整模块210和条件监视模块212。
此外,说明性的实施例中服务器108的环境250包括硬件监视模块218、通信模块220和可信执行环境模块222。每个功率平衡模块202、负荷调度模块204、通信模块206、等级模块208、功率调整模块210、条件监视模块212、安全协处理器126、硬件监视模块218、通信模块220和可信执行环境模块222可实施为硬件、软件、固件或其组合。
[0023] 如下文更详细地讨论,功率平衡模块202基于服务器108的资源利用数据214平衡服务器108的功耗。每个服务器108的功耗可由以下因素支配,包括例如服务器108的处理器的电压频率操作点,以及其他功率相关因素。例如,在一个实施例中,第一和第二服务器108的每一个可包括操作在特定频率(例如,2.0吉赫)的处理器。因此,每个服务器108的处理器消耗近似相同的功率量。第一服务器108可在处理涉及几乎排他的存储器访问的负荷,而第二服务器108可处理处理器密集型的负荷。在该实施例中,第一服务器108利用其处理器显著少于第二服务器108利用其处理器。因此,功率平衡模块202可将不一定由第一服务器108的处理器消耗的功率“移动”至第二服务器108。即,在某些实施例中,功率平衡模块
202降低处理器未充分使用的服务器108的功率分配,并在处理器利用较为显著的服务器
108以对应量增加,而不影响服务器108之间的总功耗。如以下讨论的,在如此执行时,功率平衡模块202可例如修改服务器108的处理器的电压和频率操作点。在某些实施例中,功率平衡模块202还可并入功率封顶(capping)特征以将服务器108和/或服务器108的组件的功耗封顶。
[0024] 等级模块208接收关于服务器108的资源利用数据214并对其根据服务器108的资源利用量分等级(即,排序)。例如,在一个实施例中,资源利用数据214可包括存储器利用数据,而等级模块208可生成由服务器108的存储器利用量分等级的服务器108的排序列表。在另一实施例中,资源利用数据214可表示服务器108的处理器利用量,其可用于对服务器108分等级。应当理解,资源利用数据214的任何一个或多个合适的方面可单独或组合用于在多种实施例中对服务器108分等级。
[0025] 等级模块208还可在排序列表中标识每个服务器108为源服务器或目的服务器。如本文讨论,功率由功率平衡模块202从源服务器“移动”至目的服务器。在上述示例中,第一服务器108为源服务器,第二服务器108为目的服务器。在某些实施例中等级模块208基于服务器108在排序列表的顺序,将排序列表中服务器108的一半标识为源服务器而排序列表中服务器108的一半标识为目的服务器。例如,在某些实施例中,排序列表中服务器108的第一半(其由服务器108的资源利用分等级)为源服务器,而服务器108的另一半为目的服务器。
[0026] 等级模块208还可提供资源利用数据和/或等级信息(例如,排序列表)至负荷调度模块204以使负荷调度模块204可例如确定在哪个服务器108设置或路由新的负荷和/或虚拟机。在如此执行时,负荷调度模块204可利用适用于调度负荷和/或放置虚拟机的任何等级,调度和/或其他算法。应当理解,负荷使用不同的计算资源。因此,负荷调度模块204可利用该信息以适当地调度新的负荷以减少服务器108的功耗和/或最大化执行于服务器108的负荷的负荷密度而不增加数据中心的总功耗。
[0027] 功率调整模块210调整由服务器108的一个或多个组件消耗的功率量。在说明性的实施例中,功率调整模块210调整由服务器108的处理器消耗的功率。然而,在其它实施例中,其他组件的功耗可利用本文描述的方法和体系结构来修改。如下文表示,功率调整模块210可调整成对的服务器108的功耗(例如,在一个服务器108以特定量降低功耗而在另一服务器108以相同的量增加功耗)。例如,排序列表中具有最大资源利用的服务器108可与排序列表中具有最少资源利用的服务器108配对。进一步,排序列表中具有第二最大资源利用的服务器108可与排序列表中具有第二最少资源利用的服务器108配对等等。在某些实施例中,功率调整模块210计算服务器108的对(例如,源-目的服务器对)之间的资源利用的差并仅在超过差值阈值时调整服务器108的功耗。即,在某些实施例中,如果其资源利用的差最小,则功率调整模块210可不调整两个服务器108之间的功耗。应当理解,由服务器108消耗的功率可根据其他任何合适的算法或在其它实施例中的服务器108的分组调整。
[0028] 在说明性的实施例中,例如,通过修改其处理器状态(即,其“P状态”),功率调整模块210可调整由服务器108之一的处理器消耗的功率。换言之,功率调整模块210可调整处理器的电压和频率操作点(通常,简称频率操作点)。应当理解,当处理器的频率操作点降低时,处理器消耗的功率量被降低。类似地,当处理器的频率操作点被增加时,处理器消耗的功率量增加。换言之,处理器的功耗直接正比于处理器的频率操作点。附加地,降低处理器的频率操作点导致处理器的有效处理器利用对于给定负荷增加,因为相同的工作现在由操作在更低频率的处理器来处理。同样地,增加处理器的频率操作点导致有效处理器利用减少。通过修改处理器的频率操作点,例如使处理器的利用根据其分配的负荷符合服务器的资源的功耗率。当然,在其它实施例中,功率调整模块210可使用任何合适的机制调整由服务器108的组件消耗的功率。
[0029] 条件监视模块212基于资源利用数据214确定功率平衡模块202何时应当重新评价服务器108的功耗状况。例如,条件监视模块212可实现定时器,以使服务器108的功耗被周期性地或基于某些其他时间限制或条件来评价。在其它实施例中,条件监视模块212可监视某些其他条件的产生(例如,新的或未放置的负荷的阈值),以使功率平衡模块202评价功耗。在某些实施例中,条件监视模块212还可建立条件(例如,周期性地),其中组控制器102用于从服务器108接收或请求资源利用数据214。当然,在其它实施例,该确定可替代地由服务器108做出。
[0030] 通信模块206处理组控制器102和远程设备(例如,服务器108)之间通过网络106的通信。如本文讨论,通信模块206可从服务器108接收资源利用数据214。在如此执行时,通信模块206可使用消息传递协议诸如AMQP。附加地,通信模块206可传输功率平衡指令至服务器108(例如,利用IPMI经由安全传输或另一带外通信机制)。如上所示,功率平衡指令包括以下信息,其标识服务器108的哪些组件要被修改(例如,处理器、网络接口控制器等)以及其应当如何被修改(例如,降低频率操作点、增加频率操作点、改变处理器的P状态为“0”等)。
[0031] 如上所示,每个服务器108包括硬件监视模块218,通信模块220和可信执行环境模块222。服务器108的硬件监视模块218监视服务器108的一个或多个资源的利用(例如,处理器、存储器、网络接口卡、协处理器或其他组件)。附加地,硬件监视模块218基于所监视的资源利用为该特定服务器108生成资源利用数据214。应当理解,资源利用数据214可用任何合适的方式表示资源利用。例如,资源利用数据可表示为绝对值、相对值、百分比、比率、分布或其他任何合适的表示。
[0032] 通信模块220处理服务器108和远程设备(例如,组控制器102)之间通过网络106的通信。如上所讨论,通信模块220可传输生成的资源利用数据214至组控制器102。根据特定实施例,通信模块220可周期性地或响应于某些条件的产生(例如,完成特定数量的负荷)而传输资源利用数据214。通信模块220还可从组控制器102接收功率平衡指令,指示服务器108修改服务器108的组件以平衡服务器108和另一服务器之间的功耗。
[0033] 可信执行环境模块222可(例如,从通信模块220或直接从组控制器102)接收功率平衡指令并因此修改所标识的服务器108的组件以实现功耗。可信执行环境模块222可为服务器108建立安全和可信执行环境。在某些实施例中,安全协处理器126包括可信执行环境模块222。即,可信执行环境模块222可合并入安全协处理器126或由安全协处理器126执行。进一步,在某些实施例中,来自组控制器102的功率平衡指令可仅由可信执行环境模块222接收或处理。因此,可信执行环境模块222(或安全协处理器126)可例如基于接收自组控制器102的功率平衡指令(例如,通过修改处理器的频率操作点)修改服务器108的处理器的处理器利用。
[0034] 现参照图3和4,在使用中,系统100的组控制器102可执行用于调整服务器功耗的方法300。说明性的方法300开始于图3的框302,其中组控制器102确定是否调整服务器108的功耗。如果是,则在框304组控制器102建立功率调整参数。例如,组控制器102可在框306确定利用阈值,其可用于确定是否平衡以下讨论的两个服务器108之间的功耗。即,组控制器102可计算源服务器和目的服务器(即,用于功率传输)之间资源利用的差(即,“利用差”)并且,在某些实施例中,如果利用差大于利用阈值,则组控制器102仅平衡选择的源和目的服务器之间的功率。在框308,组控制器102可建立功耗变化量。即,组控制器102可确定增加/减少对应服务器108的功耗的量(例如,绝对值,百分比或其他量)。在说明性的实施例中,源和目的服务器的功耗以相同的功耗变化量修改。附加地,在框310,组控制器102可确定功率利用评价条件。换言之,组控制器102可基于资源利用数据214确定何时重新评价服务器108的功耗状态。如上所讨论,功率利用评价条件可基于时间段的截止时间或根据实施例的某些条件的产生。应当理解,利用阈值、功耗变化量和功率利用评价条件的每一个可为由组控制器102预定义的静态值或可被动态地确定。
[0035] 在框312,组控制器102检索服务器108的列表216以调整功耗。如上所讨论,服务器列表216可标识属于关联于组控制器102的组的所有服务器108并且可存储于组控制器102上或从远程设备(例如,云计算设备)检索。在框314,组控制器102从列表216中的每个服务器108接收资源利用数据214。在某些实施例中,资源利用数据214响应于来自组控制器102的请求而接收,而在其它实施例中,资源利用数据214响应于某些条件(例如,周期性地)在如上所讨论的服务器108的产生而从服务器108传输至组控制器102。还应理解,在另一实施例中,框304,312和314可在另一顺序产生。
[0036] 在框316,组控制器102根据资源利用数据214排序服务器列表216。如上所示,资源利用数据214可包括关于服务器108的特定资源利用量、类型和/或程度的信息(例如,存储器利用、处理器利用、网络利用或其他资源利用信息)。在某些实施例中,组控制器102根据特定资源的利用排序服务器列表216。例如,组控制器102可根据列表216中服务器108的存储器利用量排序服务器列表216,其中具有最少的存储器利用的服务器108在排序列表的一端(即,在排序列表的开始或结尾)并且具有最大存储器利用的服务器108在排序列表另一端。当然,在其它实施例中,排序列表还可基于服务器108的其他资源的利用单独或组合生成。
[0037] 在框318,组控制器102基于排序列表标识源和目的服务器。在某些实施例中,基于资源利用数据214,排序列表的一半(即,上半部或下半部)可标识为源服务器并且另一半可标识为目的服务器。如以下讨论的,在某些实施例中,假设满足利用阈值,源服务器为功耗要以功耗变化量降低的服务器,而目的服务器为功耗要以对应功耗变化量增加的服务器。在排序列表中有奇数服务器108的实施例中,“中间”服务器108可根据特定实施例以合适的方式处理(例如,忽略)。
[0038] 现参照图4,在框302组控制器102从排序列表选择下一源服务器和下一目的服务器。在框322,组控制器102基于关联于列表216被排序的特定资源(例如,存储器)的资源利用数据214计算选择的源和目的服务器之间的资源利用的差(即,利用差)。在框324,组控制器102确定利用差是否超过图3框306确定的利用阈值。如果否,则方法300返回框320,其中组控制器102选择下一源服务器和下一目的服务器。如上所讨论,源和目的服务器对可以任何合适的方式选择。如果组控制器102确定利用差超过利用阈值,则组控制器102在框326调整选择的源和目的服务器之间的功耗。例如,在框328,组控制器102可以建立的预算变化量增加源服务器的处理器利用。附加地,在框330,组控制器102可以对应功耗变化量减少目的服务器的处理器利用。如上所讨论,组控制器102可例如通过调整处理器的频率操作点,修改处理器利用。
[0039] 在框332,组控制器102确定排序列表中是否存在组控制器102还未寻址的任何剩余的源和目的服务器(例如,计算利用差)。如果是,则方法300返回框320,其中组控制器102选择下一源和目的服务器对,以计算利用差。然而,如果没有剩余对,则组控制器102等待直到功率利用评价条件在框334被满足。即,组控制器102监视在图3框310确定的功率利用评价条件的一个或多个的产生。如上所讨论,功率利用评价条件标识以下条件(例如,定时器截止时间),其如果满足,则表示组控制器102应当重新评价服务器108的资源利用数据214。如果条件被满足,则方法300返回图3的框314,其中组控制器102接收服务器108的新的资源利用数据214。应当理解,在某些实施例中,组控制器102可相关于评价条件的产生以另一顺序接收资源利用数据214。
[0040] 现参照图5,在使用中,系统100的一个或多个服务器108可执行用于功率优化的方法500。说明性的方法500开始于框502,其中服务器108基于监视的服务器108的一个或多个资源的利用生成资源利用数据214。在框504,服务器108传输生成的资源利用数据214至组控制器102。如上所讨论,资源利用数据214可以任何合适的形式或结构来生成和传输。在框506,服务器108确定是否已从组控制器102接收用来修改服务器108的处理器利用的指令。
当然,在另一实施例中,服务器108可确定某些其他功率平衡指令是否已从组控制器102接收。例如,另一功率平衡指令可相关于修改服务器108的另一资源或组件(例如,网卡)。
[0041] 如果服务器108确定处理器利用指令已从组控制器102接收,则服务器108相应在框508修改处理器利用。如上所讨论,服务器108可通过例如修改处理器的频率操作点来这样做;处理器利用通过减少频率操作点而增加并且通过增加处理器的频率操作点而减少。在另一实施例中,如果服务器108接收另一功率平衡指令,则服务器108可适当地修改相关组件的利用。如果服务器108在框506确定处理器利用指令未被接收或服务器在框508修改了处理器利用,则服务器108确定是否监视条件在框510已满足。如上所示,服务器108可建立监视条件,其定义以下条件:即如果满足,则导致服务器108生成资源利用数据214并传输资源利用数据214至组控制器102。如果服务器108确定监视条件已满足,则方法500返回框
502,其中服务器108生成当前资源利用数据214。否则,方法500返回框506,其中服务器108确定处理器利用指令(或,更一般地,功率平衡指令)是否已从组控制器102接收。
[0042] 示例
[0043] 本文公开技术的说明性的示例提供如下。技术的实施例可包括如下描述的示例的任何一个或多个,以及任何组合。
[0044] 示例1包括一种用于调整服务器功耗的计算设备,该计算设备包括通信模块,以从多个服务器接收资源利用数据;以及功率平衡模块,以(i)基于该资源利用数据标识多个服务器的源服务器和目的服务器,(ii)基于该资源利用数据计算所标识的源服务器和所标识的目的服务器之间资源利用的差,(iii)响应于确定资源利用的差超过阈值,以功耗变化量增加源服务器的处理器的处理器利用,以及(iv)响应于确定资源利用的差超过该阈值,以对应功耗变化量减少目的服务器的处理器的处理器利用。
[0045] 示例2包括示例1的主题,并且其中计算设备包括包含多个服务器的服务器组的组控制器。
[0046] 示例3包括示例1和2的任一个的主题,并且其中通信模块用于检索包括多个服务器的服务器列表;并且该功率平衡模块用于基于服务器资源利用量排序服务器的列表。
[0047] 示例4包括示例1-3的任一个的主题,并且其中功率平衡模块用于基于该排序列表中服务器的顺序在该排序列表中标识服务器的一半为目的服务器而该排序列表中另一半服务器为源服务器。
[0048] 示例5包括示例1-4的任一个的主题,并且其中资源利用数据标识对应服务器中的存储器利用量。
[0049] 示例6包括示例1-5的任一个的主题,并且其中增加该源服务器的处理器的处理器利用包括修改源服务器的处理器的处理器状态,其中处理器状态定义该处理器的频率操作点。
[0050] 示例7包括示例1-6的任一个的主题,并且其中增加该源服务器的处理器的处理器利用包括降低该源服务器的处理器的操作频率;并且其中减少该目的服务器的处理器的处理器利用包括增加目的服务器的处理器的操作频率。
[0051] 示例8包括示例1-7的任一个的主题,并且其中通信模块用于周期性地从多个服务器接收资源利用数据。
[0052] 示例9包括一种用于功率优化的服务器,该服务器包括硬件监视模块,以(i)监视该服务器的资源的利用并且(ii)基于所监视的资源利用生成资源利用数据;通信模块(i)传输该资源利用数据至包括该服务器的服务器组的组控制器;并且(ii)从该组控制器接收指令以响应于该资源利用数据的传输修改该服务器的处理器的处理器利用,其中接收该指令表示该服务器的资源利用数据与该服务器组的另一服务器的资源利用数据相差至少阈值量;以及安全协处理器,以基于该组控制器的指令以功耗变化量修改该服务器的处理器的处理器利用。
[0053] 示例10包括示例9的主题,并且其中修改该处理器的处理器利用包括修改该处理器的处理器状态,其中处理器状态定义该处理器的频率操作点。
[0054] 示例11包括示例9和10的任一个的主题,并且其中安全协处理器用于响应于从该组控制器接收减少该处理器的处理器利用的指令而增加该处理器的操作频率;以及响应于从该组控制器接收增加该处理器的处理器利用的指令而减少该处理器的操作频率。
[0055] 示例12包括示例9-11的任一个的主题,并且其中通信模块用于周期性地传输该资源利用数据至该组控制器。
[0056] 示例13包括示例9-12的任一个的主题,并且其中资源利用数据标识该服务器的存储器利用量。
[0057] 示例14包括一种用于利用计算设备调整服务器功耗的方法,该方法包括利用该计算设备接收来自多个服务器的资源利用数据;基于该资源利用数据在该计算设备标识多个服务器的源服务器和目的服务器;在该计算设备基于该资源利用数据计算所标识的源服务器和所标识的目的服务器之间的资源利用的差;响应于确定资源利用的差超过阈值,利用该计算设备以功耗变化量增加源服务器的处理器的处理器利用;并且响应于确定资源利用的差超过该阈值,利用该计算设备以对应功耗变化量减少目的服务器的处理器的处理器利用。
[0058] 示例15包括示例14的主题,并且其中接收该资源利用数据包括从属于服务器组的多个服务器接收资源利用数据,其中计算设备为组控制器。
[0059] 示例16包括示例14和15的任一个的主题,并进一步包括利用该计算设备检索包括多个服务器的服务器列表;并且在该计算设备基于服务器资源利用量排序服务器的列表。
[0060] 示例17包括示例14-16的任一个的主题,并进一步包括基于该排序列表中服务器的顺序在该计算设备标识该排序列表中服务器的一半为目的服务器而该排序列表中服务器的另一半为源服务器。
[0061] 示例18包括示例14-17的任一个的主题,并且其中接收该资源利用数据包括从多个服务器接收资源利用数据,该资源利用数据标识对应服务器的存储器利用量。
[0062] 示例19包括示例14-18的任一个的主题,并且其中增加该源服务器的处理器的处理器利用包括修改源服务器的处理器的处理器状态,该处理器状态定义该处理器的频率操作点。
[0063] 示例20包括示例14-19的任一个的主题,并且其中增加该源服务器的处理器的处理器利用包括降低该源服务器的处理器的操作频率;并且其中减少目的服务器的处理器的处理器利用包括增加目的服务器的处理器的操作频率。
[0064] 示例21包括示例14-20的任一个的主题,并且其中接收该资源利用数据包括周期性地从多个服务器接收资源利用数据。
[0065] 示例22包括一种计算设备,其包括处理器;以及存储器,具有存储其中的多个指令,其当由该处理器执行时使计算设备执行示例14-21的任一个的方法。
[0066] 示例23包括一个或多个机器可读存储介质,包括存储其上的多个指令,其响应于被执行使计算设备执行示例14-21的任一个的方法。
[0067] 示例24包括用于管理位置隐私的计算设备,该计算设备包括用于执行示例14-21的任一个的方法的装置。
[0068] 示例25包括用于在服务器进行功率优化的方法,该方法包括在该服务器监视该服务器的资源的利用;在该服务器基于所监视的资源利用生成资源利用数据;从该服务器传输该资源利用数据至包括该服务器的服务器组的组控制器;利用该服务器接收来自该组控制器的指令,以响应于传输该资源利用数据修改该服务器的处理器的处理器利用,其中接收该指令表示该服务器的资源利用数据与该服务器组的另一服务器的资源利用数据相差至少阈值量;并且基于该组控制器的指令在该服务器以功耗变化量修改该处理器的处理器利用。
[0069] 示例26包括示例25的主题,并且其中修改该处理器的处理器利用包括修改该处理器的处理器状态,该处理器状态定义该处理器的频率操作点。
[0070] 示例27包括示例25和26的任一个的主题,并且其中修改该处理器的处理器利用包括响应于从该组控制器接收指令增加该处理器的操作频率以减少该处理器的处理器利用;以及响应于从该组控制器接收指令减少该处理器的操作频率以增加该处理器的处理器利用。
[0071] 示例28包括示例25-27的任一个的主题,并且其中传输该资源利用数据包括周期性地传输该资源利用数据至该组控制器。
[0072] 示例29包括示例25-28的任一个的主题,并且其中生成该资源利用数据包括生成标识该服务器的存储器利用量的资源利用数据。
[0073] 示例30包括一种计算设备,包括处理器;以及存储器,具有存储其中的多个指令,其当由该处理器执行时使计算设备执行示例25-29的任一个的方法。
[0074] 示例31包括一个或多个机器可读存储介质,包括存储其上的多个指令,其响应于被执行,使计算设备执行示例25-29的任一个的方法。
[0075] 示例32包括一种用于管理位置隐私的计算设备,该计算设备包括用于执行示例25-29的任一个的方法的装置。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈