CN114391128A - 功率管理方法和设备 - Google Patents
功率管理方法和设备 Download PDFInfo
- Publication number
- CN114391128A CN114391128A CN201980099699.2A CN201980099699A CN114391128A CN 114391128 A CN114391128 A CN 114391128A CN 201980099699 A CN201980099699 A CN 201980099699A CN 114391128 A CN114391128 A CN 114391128A
- Authority
- CN
- China
- Prior art keywords
- computing system
- processing components
- performance
- performance level
- threshold
- 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.)
- Pending
Links
- 238000007726 management method Methods 0.000 title description 63
- 238000000034 method Methods 0.000 claims abstract description 95
- 230000008569 process Effects 0.000 claims abstract description 62
- 230000015556 catabolic process Effects 0.000 claims abstract description 26
- 238000006731 degradation reaction Methods 0.000 claims abstract description 26
- 238000012544 monitoring process Methods 0.000 claims abstract description 25
- 238000012545 processing Methods 0.000 claims description 98
- 230000004044 response Effects 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008713 feedback mechanism Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
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/3234—Power saving characterised by the action undertaken
- G06F1/3243—Power saving in microcontroller unit
-
- 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/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- 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/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Power Sources (AREA)
Abstract
提供了用于改进功率管理的方法和设备。一种功率管理组件在对计算系统执行功率封顶过程的同时动态地监测所述计算系统的性能级别。所述功率管理组件在监测到所述计算系统的所述性能级别低于阈值时挂起所述计算系统的所述功率封顶过程。所述计算系统的可接受的性能级别被确保,在所述可接受的性能级别下,所述计算系统在所述功率封顶过程期间的性能降级在控制之下或对客户可接受。
Description
技术领域
本公开涉及功率管理的领域,并且更具体地,涉及用于计算系统的功率管理的方法和设备。
背景技术
功率封顶是现代数据中心(DC)中广泛地用于提高机架上计算密度并避免停电的技术。大多数功率封顶技术采用比例-积分-微分(PID)控制方法来快速地找到硬件控制旋钮的一组参数,诸如处理组件的工作频率,使得系统能够达到目标功率级别。然而,大多数PID控制器在功率封顶期间引起频率过冲和/或频率下冲,其中频率下冲可能对云应用非常危险。如果处理组件的频率太低,则不可以及时处理大量请求。此外,设计不当的背压机制可能将问题散布到上游服务器,从而降低系统的整体性能或者甚至引起请求丢失。因此,性能降级发生并且可能对云平台而言是灾难性的。
诸如原始设计制造商(ODM)和原始设备制造商(OEM)的硬件供应商在硅或固件中支持功率封顶能力。然而,这种能力不伴随最小频率保护发生。换句话说,性能级别在功率封顶过程期间可能是不可接受的。
使用功率封顶的软件公司可能遭受性能问题。据调查,一些软件公司设法通过进行保守性功率封顶来避免性能问题,从而给功率跳闸级别留下大余量,并且导致资源使用优化差。
鉴于上文,改进计算系统的功率管理是必要的。
发明内容
本发明内容不旨在标识所要求保护的主题的必要特征,也不意在供在限制所要求保护的主题的范围时使用。
下文描述功率管理方法和设备的示例实现方式。在实现方式中,功率管理组件对计算系统执行功率封顶并且动态地监测计算系统的性能级别。当监测到计算系统的性能级别低于阈值时,功率管理组件挂起功率封顶过程。因此,在计算系统在功率封顶期间的性能降级在控制之下或对客户可接受的情况下,能够确保计算系统的可接受的性能级别。能够基于服务提供商与客户之间的服务级别协定(SLA)确定计算系统的可接受的性能级别和对客户可接受的计算系统的性能降级。因此,改进了计算系统的功率管理。
附图说明
参考附图阐述详细描述。在各图中,附图标记的最左边数字标识附图标记首次出现在其中的图。在不同的图中使用相同的附图标记指示类似或相同的项目或特征。
图1A和图1B图示在功率封顶期间发生性能降级的场景的示例框图。
图2图示计算系统的功率管理的过程的示例流程图。
图3图示计算系统的功率管理的机制的示例框图。
图4图示用于在计算系统中计算性能关键区中的处理组件的频率的平均值的过程的示例流程图。
图5图示用于实现上述过程和方法的设备的示例框图。
具体实施方式
如本文所使用的术语被表示如下。功率封顶是指限制计算系统能够消耗多少功率的做法。功率上限是指计算系统的功耗不能超过的功率极限。标称频率是指在热设计功率(TDP)包络内保证的最高频率。PID控制器是指比例-积分-微分控制器(或三项控制器),其是在工业控制系统和需要连续调制控制的各种其他应用中广泛地使用的控制回路反馈机制。
图1A和图1B图示在功率封顶期间发生性能降级的场景100的示例框图。
参考图1A,在框102,存在16个实例A、B、C、D、E、F、G、H、I、J、K、L、M、N、O和P,其中数据生成和消耗在实例当中紧密连接。实例之间的箭头表示实例之间的依赖关系。例如,在实例A被执行之后,实例B被执行,依此类推。实例A的输出被提供给实例F,并且实例B的输出被提供给实例E,依此类推。
参考框104,16个实例被映射到4个机架上的12个节点。例如,实例J以2.5GHz+在机架_3节点_5上运行。实例K以2.5GHz+在机架_4节点_7上运行。实例A至I以2.5GHz在机架_11节点_6至节点_10上运行。实例L至P以2.5GHz在机架_15节点_11至节点_15上运行。
参考框106,当功率封顶开启时,由4个机架处的12个节点汲取的总功率被封顶以不超过功率极限/上限。可以基于实际需要动态地设置和/或调整功率极限/上限。节点的频率被动态地调整以满足功率极限/上限。例如,由于功率封顶,机架3在故障安全模式(S5)下运行。故障安全模式是在故障情况下机架/节点以最小响应方式(几乎被挂起)运行的设计特征或做法。机架4以1.2GHz运行。机架11以2.0GHz运行。机架15节点11至15处的实例L至P以2.0GHz运行。因此,由于功率封顶4个机架处的12个节点的频率降低了。
参考图1B,框108示出在时间T的结果。例如,因为由于功率封顶而导致的低频率,在机架_3处的节点_5上运行的缓冲器溢出(停止响应)。结果,在机架_3处的节点_5上运行的实例J崩溃(停止响应)。
框110示出在时间T+1的结果。因为缓冲器溢出问题具传染性,所以在一个节点未能及时处理请求之后,另一节点将这样做。例如,另一实例K也停止响应。
框112示出在时间T+2的后果,其中其他四个节点受到严重地影响。实例A、C、F和G慢慢地响应或甚至停止响应。结果,能够观察到性能降级。在那种情况下,发生雪崩。服务停止,并且客户感到惊讶。
图2图示计算系统的功率管理的过程200的示例流程图。
在框202,在对计算系统执行功率封顶过程的同时,功率管理组件动态地监测计算系统的性能级别。计算系统包括多个处理组件。在实现方式中,计算系统包括分布式系统中的一个或多个节点。分布式系统可以是大规模分布式计算系统。
在实现方式中,功率管理组件是监测并管理计算系统的功耗的组件。功率管理组件可以用软件、硬件、固件或其任何组合来实现。功率管理组件对计算系统执行功率封顶过程,使得计算系统的功耗不超过功率限制/上限。可以基于实际需要动态地设置和/或调整功率极限/上限。
在实现方式中,功率管理组件获得计算系统中的多个处理组件当中的处理组件组的多个性能参数。多个性能参数中的相应的性能参数与处理组件组中的相应的处理组件相关联。功率管理组件基于多个性能参数计算性能级别。性能级别包括多个性能参数的平均值。在一些实施例中,平均值是瞬时值。处理组件组的多个性能参数包括处理组件组的多个频率。
在框204,当监测到计算系统的性能级别低于阈值时,功率管理组件挂起/停止计算系统的功率封顶过程。
在实现方式中,功率管理组件获得计算系统中的处理组件组的多个频率。功率管理组件基于计算系统中的处理组件组的多个频率来计算性能级别。
在实现方式中,处理组件组的性能对计算系统的整体性能具有显著影响。在一些实施例中,处理组件组运行需要低于第一阈值例如1μs、5μs等的时延的一个或多个实例。在一些实施例中,处理组件组运行需要高于第二阈值例如每秒20亿条指令、每秒50亿条指令等的指令执行速率的一个或多个实例。可以基于实际需要动态地设置和/或调整第一阈值和第二阈值。在一些实施例中,处理组件组不是固定的,并且能够动态地改变组中的处理组件。
在实现方式中,阈值表示计算系统的性能级别在功率封顶过程期间的降级在控制之下或对客户可接受的计算系统的最小/最低性能级别。能够基于服务提供商与客户之间的SLA确定计算系统的最小/最低性能级别和对客户可接受的性能降级。可以基于实际需要动态地设置和/或调整阈值。
在实现方式中,功率管理组件在将功率封顶过程挂起达一段时间例如50ms、2s、1分钟等之后自动地恢复功率封顶过程。在一些实施例中,当条件满足时,例如当计算系统的功耗超过上限时,功率管理组件恢复功率封顶过程。可以基于实际需要动态地设置和/或调整上限。
利用上述示例过程200,在功率封顶期间动态地监测计算系统的性能级别。当性能级别低于阈值时,功率封顶被挂起/停止,使得能够防止计算系统的进一步性能降级。因此,计算系统的可接受的性能级别被确保,在所述可接受的性能级别下,计算系统在功率封顶期间的性能降级在控制之下或对客户可接受。因此,改进了计算系统的功率管理。
图3图示计算系统的功率管理的机制300的示例框图。
参考图3,功率管理组件302创建功率封顶线程304和性能监测线程306。在功率封顶线程304中,功率管理组件302对计算系统(未示出)执行功率封顶以确保计算系统的功耗不超过功率极限/上限。可以基于实际需要动态地设置和/或调整功率极限/上限。
在性能监测线程306中,功率管理组件302监测计算系统的性能。
在实现方式中,一个或多个处理组件的性能可能对计算系统的整体性能至关重要或者具有显著影响。因此,性能关键区(PCZ)在本文中被定义为其性能对计算系统的整体性能至关重要或者具有显著影响的处理组件组。在一些实施例中,性能关键区不是固定的,并且能够动态地改变性能关键区中的处理组件。
在实现方式中,计算系统包括N个处理组件,例如N个CPU,其中N是正整数。在N个CPU当中,在性能关键区中有M个CPU,其中M是正整数。换句话说,M个CPU的性能对计算系统的整体性能具有显著影响。在一些实施例中,性能关键区中的M个CPU运行时延敏感的工作负载/实例。时延敏感的工作负载/实例需要低于第一阈值例如10μs、5μs等的时延。在一些实施例中,性能关键区中的M个CPU运行吞吐量敏感的工作负载/实例。吞吐量敏感的工作负载/实例需要高于第二阈值例如每秒20亿条指令、每秒50亿条指令等的指令执行速率。可以动态地设置和/或调整第一阈值和第二阈值。
在框308,功率管理组件302动态地获得计算系统的性能级别。在实现方式中,功率管理组件302周期性地例如每X毫秒获得计算系统的性能级别,其中可以基于实际需要设置和/或调整X。在一些实施例中,X可以是几十到几百毫秒。
在框310,功率管理组件302获得性能关键区中的处理组件的性能参数并且计算性能级别。
在实现方式中,功率管理组件302可以使用基于性能监测单元(PMU)的机制来收集遥测数据以协助性能降级感测。遥测是将数据从远程或不可访问的源自动地记录并发送到不同位置的IT系统以进行监测和分析。例如,性能参数是处理组件的频率。功率管理组件302通过性能关键区中的M个CUP中的每一个中的dev/CPUx/MSR接口来读取包括APERF和MPERF的模式特定寄存器(MSR)。更详细地,功率管理组件302读取CPU0中的APERF0和MPERF0、CPU1中的APERF1和MPERF1、…以及CPUM-1中的APERFM-1和MPERFM-1。功率管理组件302基于读取结果计算性能关键区中的M个CPU的频率的平均值Favg。在一些实施例中,平均值Favg是瞬时值。在下文中参考图4描述有关计算平均值Favg的算法的细节。
在框312,功率管理组件302确定性能级别是否大于或等于阈值。在实现方式中,功率管理组件302确定平均值Favg是否大于或等于阈值频率Fmin。阈值频率Fmin表示计算系统的性能级别是可接受的并且计算系统在功率封顶期间的性能降级在控制之下或对客户可接受的最小/最低频率。能够基于客户的要求、机器学习、经验值、实验数据等确定阈值频率Fmin。可以动态地设置和/或调整阈值频率Fmin。能够基于服务提供商与客户之间的SLA确定对客户可接受的计算系统的性能级别和性能降级。
如果功率管理组件302在框312确定性能级别大于或等于阈值,则功率管理组件302在框314等待直到下一周期为止。在实现方式中,如果功率管理组件302确定平均值Favg大于或等于阈值频率Fmin,则功率管理组件302等待直到下一周期为止。
如果功率管理组件302在框312确定性能级别不大于或等于阈值,则功率管理组件302在框316挂起/停止功率封顶线程304。在实现方式中,如果功率管理组件302确定平均值Favg低于阈值频率Fmin,则功率管理组件302挂起/停止功率封顶线程304,并且在框316立即返回到性能监测线程306。
附加地或可替代地,如果功率管理组件302确定性能级别低于阈值,则功率管理组件指示调度器尽可能快地将在计算系统上运行的实例迁移到其他计算系统(未示出)。然而,这种迁移可以对调度器强加压力并且一些实例可能未被迁移。
在框318,在下一周期中,功率管理组件302如上面参考框308-310所描述的那样再次获得计算系统的性能级别,并且这里不重复细节。
附加地或可替代地,功率管理组件302在将功率封顶过程挂起一段时间例如50ms、2s、1分钟等之后自动地恢复功率封顶过程。在一些实施例中,当满足条件时,例如当计算系统的功耗超过上限时,功率管理组件302恢复功率封顶过程。可以基于实际需要动态地设置和/或调整上限。
利用上述示例机制300,在功率封顶期间动态地监测计算系统的性能级别。当性能级别低于阈值时,功率封顶被挂起/停止,使得能够防止计算系统的进一步性能降级。因此,保证了计算系统的可接受的性能级别,在所述可接受的性能级别下,计算系统在功率封顶期间的性能降级在控制之下或对客户可接受。因此,改进了计算系统的功率管理。
图4图示用于在计算系统中计算性能关键区中的处理组件的频率的平均值的过程400的示例流程图。在实现方式中,计算系统包括N个CPU,其中N是正整数。
在框402,功率管理组件读取CPUi的标称频率F*,其中i是正整数。能够基于规格、经验值、实验数据等确定标称频率F*。
在框404,功率管理组件确定CPUi是否在性能关键区(PCZ)中。
如果功率管理组件在框404确定CPUi在PCZ中,则功率管理组件在框406读取CPUi的模式特定寄存器(包括APERF和MPERF),其中读取结果被称为APERFi和MPERFi。如果管理组件在框404确定CPUi不在PCZ中,则过程400进行到框412。
在框408,功率管理组件根据以下公式(1)来计算作为当前APERFi与前一个APERFprv_i之间的变化值的第一变化值delta_APERFi,并且根据以下公式(2)来计算作为当前MPERFi与前一个MPERFprv_i之间的变化值的第二变化值delta_MPERFi:
delta_APERFi=APERFi-APERFprv_i (1)
delta_MPERFi=MPERFi-MPERFprv_i (2)
在框410,功率管理组件根据以下公式(3)来计算CPUi的平均频率Favg_i。在一些实施例中,平均频率Favg_i是瞬时值。
Favg_i=F*(delta_APERF/delta_MPERF) (3)
在框412,功率管理组件将i增加1。
在框414,功率管理组件确定i是否大于计算系统中的CPU的总数,即i是否大于N。
如果功率管理组件在框414确定i大于N,则功率管理组件在框416计算PCZ中的所有CPU的频率的平均值Favg。如果在框414确定i不大于N,则过程400返回到框404。
图5图示用于实现上述过程和方法的设备500的示例框图。
设备500包括一个或多个处理器502和通信地耦合到处理器502的存储器504。处理器502执行一个或多个模块和/或过程以使处理器502执行各种功能。在实现方式中,处理器502可以包括中央处理单元(CPU)、图形处理单元(GPU)、CPU和GPU两者、或本领域中已知的其他处理单元或组件。附加地,每一个处理器502可以拥有它自己的本地存储器,其还可以存储程序模块、程序数据和/或一个或多个操作系统。在实现方式中,存储器504可以是易失性的,诸如RAM,非易失性的,诸如ROM、闪速存储器、微型硬盘驱动器、存储卡等,或其某种组合。
设备500可以附加地包括用于接收和输出数据的输入/输出(I/O)接口506。设备500还可以包括允许设备500通过网络(未示出)与其他装置(未示出)进行通信的通信模块508。网络可以包括因特网、诸如有线网络或直接有线连接的有线介质以及诸如声学、射频(RF)、红外和其他无线介质的无线介质。
存储器504可以包括可由处理器502执行的一个或多个计算机可执行模块(模块)。在实现方式中,存储器504可以包括但不限于监测模块510和挂起模块512。
监测模块510被配置为在对计算系统执行功率封顶过程的同时动态地监测计算系统的性能级别。计算系统包括多个处理组件。在实现方式中,计算系统包括分布式系统中的一个或多个节点。分布式系统可以是大规模分布式计算系统。
监测模块510被进一步配置为获得计算系统中的多个处理组件当中的处理组件组的多个性能参数,并且基于多个性能参数计算性能级别。多个性能参数中的相应的性能参数与处理组件组中的相应的处理组件相关联。性能级别包括多个性能参数的平均值。在一些实施例中,平均值是瞬时值。处理组件组的多个性能参数包括处理组件组的多个频率。
挂起模块512被配置为当监测到计算系统的性能级别低于阈值时挂起/停止计算系统的功率封顶过程。
挂起模块512被进一步配置为确定平均值是否低于阈值频率,并且响应于确定平均值低于阈值频率而挂起/停止计算系统的功率封顶过程。
在实现方式中,处理组件组的性能对计算系统的性能级别具有显著影响。在一些实施例中,处理组件组运行需要低于第一阈值例如10μs、5μs等的时延的一个或多个实例。在一些实施例中,处理组件组运行需要高于第二阈值例如每秒20亿条指令、每秒50亿条指令等的指令执行速率的一个或多个实例。可以基于实际需要动态地设置和/或调整第一阈值和第二阈值。在一些实施例中,处理组件组不是固定的,并且能够动态地改变组中的处理组件。
在实现方式中,阈值表示计算系统在功率封顶过程期间的性能降级在控制之下或对客户可接受的计算系统的最小/最低性能级别。能够基于服务提供商与客户之间的SLA确定计算系统的最小/最低性能级别和对客户可接受的性能降级。可以基于实际需要动态地设置和/或调整阈值。
利用上述示例设备500,在功率封顶期间动态地监测计算系统的性能级别。当性能级别低于阈值时,功率封顶被挂起/停止,使得能够防止计算系统的进一步性能降级。因此,保证了计算系统的可接受的性能级别,在所述可接受的性能级别下,计算系统在功率封顶期间的性能降级在控制之下或对客户可接受。因此,改进了计算系统的功率管理。
可以在但不限于分布式计算环境、并行计算环境、集群计算环境、网格计算环境、云计算环境、电动车辆、电力设施等中实现本文讨论的过程和系统。
能够通过执行如在下面定义的存储在计算机可读存储介质上的计算机可读指令来执行上述方法的一些或所有操作。如说明书和权利要求中使用的术语“计算机可读指令”包括例程、应用、应用模块、程序模块、程序、组件、数据结构、算法等。能够在各种系统配置上实现计算机可读指令,所述各种系统配置包括单处理器或多处理器系统、微型计算机、大型计算机、个人计算机、手持计算装置、基于微处理器的可编程消费者电子装置、其组合等。
计算机可读存储介质可以包括易失性存储器(诸如随机存取存储器(RAM))和/或非易失性存储器(诸如只读存储器(ROM)、闪速存储器等)。计算机可读存储介质还可以包括附加可移动存储装置和/或非可移动存储装置,包括但不限于可以提供计算机可读指令、数据结构、程序模块等的非易失性存储的闪速存储器、磁存储器、光学存储装置和/或磁带存储装置。
非暂时性计算机可读存储介质是计算机可读介质的示例。计算机可读介质包括至少两种类型的计算机可读介质,即计算机可读存储介质和通信介质。计算机可读存储介质包括在任何过程或技术中实现以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的易失性和非易失性、可移动和非可移动介质。计算机可读存储介质包括但不限于相变存储器(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM)、闪速存储器或其他存储器技术、紧致盘只读存储器(CD-ROM)、数字通用盘(DVD)或其他光学存储装置、磁盒、磁带、磁盘存储装置或其他磁存储装置,或能够用于存储信息以供由计算装置访问的任何其他非传输介质。相比之下,通信介质可以在诸如载波或其他传输机制的调制数据信号中体现计算机可读指令、数据结构、程序模块或其他数据。如本文所定义的,计算机可读存储介质不包括通信介质。
存储在一个或多个非暂时性计算机可读存储介质上的计算机可读指令当由一个或多个处理器执行时,可以执行上面参考图1-5描述的操作。通常,计算机可读指令包括执行特定功能或者实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。描述操作的次序不旨在被解释为限制,并且能够以任何次序和/或并行地组合任何数目的所描述的操作以实现这些过程。
示例条款
条款1.一种方法,所述方法包括:在对计算系统执行功率封顶过程的同时动态地监测所述计算系统的性能级别,所述计算系统包括多个处理组件;以及当监测到所述计算系统的所述性能级别低于阈值时挂起所述计算系统的所述功率封顶过程。
条款2.根据条款1所述的方法,其中动态地监测所述计算系统的所述性能级别包括周期性地获得所述计算系统的所述性能级别。
条款3.根据条款1所述的方法,其中动态地监测所述计算系统的所述性能级别包括:获得所述计算系统中的所述多个处理组件当中的处理组件组的多个性能参数,所述多个性能参数中的相应的性能参数与所述处理组件组中的相应的处理组件相关联;以及基于所述多个性能参数计算所述性能级别。
条款4.根据条款3所述的方法,其中所述性能级别包括所述多个性能参数的平均值。
条款5.根据条款4所述的方法,其中当监测到所述计算系统的所述性能级别低于所述阈值时挂起所述计算系统的所述功率封顶过程包括:确定所述平均值是否低于阈值频率;以及响应于确定所述平均值低于所述阈值频率而挂起所述计算系统的所述功率封顶过程。
条款6.根据条款3所述的方法,其中所述处理组件组的性能对所述计算系统的所述性能级别具有显著影响。
条款7.根据条款6所述的方法,其中所述处理组件组运行需要低于第一阈值的时延的一个或多个实例。
条款8.根据条款6所述的方法,其中所述处理组件组运行需要高于第二阈值的指令执行速率的一个或多个实例。
条款9.根据条款3所述的方法,其中获得所述处理组件组的多个性能参数包括:读取所述处理组件组的多个寄存器以获得所述多个性能参数。
条款10.根据条款3所述的方法,其中所述处理组件组的所述多个性能参数包括所述处理组件组的多个频率。
条款11.根据条款1所述的方法,其中所述阈值表示所述计算系统在所述功率封顶过程期间的性能降级可接受的所述计算系统的最低性能级别。
条款12.根据条款1所述的方法,其中所述计算系统包括分布式系统中的一个或多个节点。
条款13.一种计算机可读存储介质,所述计算机可读存储介质存储可由一个或多个处理器执行的计算机可读指令,当由所述一个或多个处理器执行时,所述计算机可读指令使所述一个或多个处理器执行操作,所述操作包括:在对计算系统执行功率封顶过程的同时动态地监测所述计算系统的性能级别,所述计算系统包括多个处理组件;以及当监测到所述计算系统的所述性能级别低于阈值时挂起所述计算系统的所述功率封顶过程。
条款14.根据条款13所述的计算机可读存储介质,其中动态地监测所述计算系统的所述性能级别包括周期性地获得所述计算系统的所述性能级别。
条款15.根据条款13所述的计算机可读存储介质,其中动态地监测所述计算系统的所述性能级别包括:获得所述计算系统中的所述多个处理组件当中的处理组件组的多个性能参数,所述多个性能参数中的相应的性能参数与所述处理组件组中的相应的处理组件相关联;以及基于所述多个性能参数计算所述性能级别。
条款16.根据条款15所述的计算机可读存储介质,其中所述性能级别包括所述多个性能参数的平均值。
条款17.根据条款18所述的计算机可读存储介质,其中当监测到所述计算系统的所述性能级别低于所述阈值时挂起所述计算系统的所述功率封顶过程包括:确定所述平均值是否低于阈值频率;以及响应于确定所述平均值低于所述阈值频率而挂起所述计算系统的所述功率封顶过程。
条款18.根据条款15所述的计算机可读存储介质,其中所述处理组件组的性能对所述计算系统的所述性能级别具有显著影响。
条款19.根据条款18所述的计算机可读存储介质,其中所述处理组件组运行需要低于第一阈值的时延的一个或多个实例。
条款20.根据条款18所述的计算机可读存储介质,其中所述处理组件组运行需要高于第二阈值的指令执行速率的一个或多个实例。
条款21.根据条款15所述的计算机可读存储介质,其中获得所述处理组件组的多个性能参数包括:读取所述处理组件组的多个寄存器以获得所述多个性能参数。
条款22.根据条款15所述的计算机可读存储介质,其中所述处理组件组的所述多个性能参数包括所述处理组件组的多个频率。
条款23.根据条款13所述的计算机可读存储介质,其中所述阈值表示所述计算系统在所述功率封顶过程期间的性能降级可接受的所述计算系统的最低性能级别。
条款24.根据条款13所述的计算机可读存储介质,其中所述计算系统包括分布式系统中的一个或多个节点。
条款25.一种设备,所述设备包括:一个或多个处理器;以及存储器,所述存储器通信地耦合到所述一个或多个处理器,所述存储器存储可由所述一个或多个处理器执行的计算机可执行模块,所述计算机可执行模块包括:监测模块,所述监测模块被配置为在对计算系统执行功率封顶过程的同时动态地监测所述计算系统的性能级别,所述计算系统包括多个处理组件;以及挂起模块,所述挂起模块被配置为当监测到所述计算系统的所述性能级别低于阈值时挂起所述计算系统的所述功率封顶过程。
条款26.根据条款25所述的设备,其中所述监测模块被进一步配置为:获得所述计算系统中的所述多个处理组件当中的处理组件组的多个性能参数,所述多个性能参数中的相应的性能参数与所述处理组件组中的相应的处理组件相关联;以及基于所述多个性能参数计算所述性能级别。
条款27.根据条款26所述的设备,其中所述性能级别包括所述多个性能参数的平均值。
条款28.根据条款27所述的设备,其中所述挂起模块被进一步配置为:确定所述平均值是否低于阈值频率;以及响应于确定所述平均值低于所述阈值频率而挂起所述计算系统的所述功率封顶过程。
条款29.根据条款26所述的设备,其中所述处理组件组的性能对所述计算系统的所述性能级别具有显著影响。
条款30.根据条款29所述的设备,其中所述处理组件组运行需要低于第一阈值的时延的一个或多个实例。
条款31.根据条款29所述的设备,其中所述处理组件组运行需要高于第二阈值的指令执行速率的一个或多个实例。
条款32.根据条款26所述的设备,其中所述处理组件组的所述多个性能参数包括所述处理组件组的多个频率。
条款33.根据条款25所述的设备,其中所述阈值表示所述计算系统在所述功率封顶过程期间的性能降级可接受的所述计算系统的最低性能级别。
条款34.根据条款25所述的设备,其中所述计算系统包括分布式系统中的一个或多个节点。
结论
尽管已经用特定于结构特征和/或方法学行为的语言描述了主题,但是应当理解,所附权利要求中限定的主题不一定限于所描述的特定特征或行为。相反,特定特征和行为作为实现权利要求的示例性形式被公开。
Claims (34)
1.一种方法,所述方法包括:
在对计算系统执行功率封顶过程的同时动态地监测所述计算系统的性能级别,所述计算系统包括多个处理组件;以及
当监测到所述计算系统的所述性能级别低于阈值时挂起所述计算系统的所述功率封顶过程。
2.根据权利要求1所述的方法,其中动态地监测所述计算系统的所述性能级别包括周期性地获得所述计算系统的所述性能级别。
3.根据权利要求1所述的方法,其中动态地监测所述计算系统的所述性能级别包括:
获得所述计算系统中的所述多个处理组件当中的处理组件组的多个性能参数,所述多个性能参数中的相应的性能参数与所述处理组件组中的相应的处理组件相关联;以及
基于所述多个性能参数计算所述性能级别。
4.根据权利要求3所述的方法,其中所述性能级别包括所述多个性能参数的平均值。
5.根据权利要求4所述的方法,其中当监测到所述计算系统的所述性能级别低于所述阈值时挂起所述计算系统的所述功率封顶过程包括:
确定所述平均值是否低于阈值频率;以及
响应于确定所述平均值低于所述阈值频率而挂起所述计算系统的所述功率封顶过程。
6.根据权利要求3所述的方法,其中所述处理组件组的性能对所述计算系统的所述性能级别具有显著影响。
7.根据权利要求6所述的方法,其中所述处理组件组运行需要低于第一阈值的时延的一个或多个实例。
8.根据权利要求6所述的方法,其中所述处理组件组运行需要高于第二阈值的指令执行速率的一个或多个实例。
9.根据权利要求3所述的方法,其中获得所述处理组件组的多个性能参数包括:
读取所述处理组件组的多个寄存器以获得所述多个性能参数。
10.根据权利要求3所述的方法,其中所述处理组件组的所述多个性能参数包括所述处理组件组的多个频率。
11.根据权利要求1所述的方法,其中所述阈值表示所述计算系统在所述功率封顶过程期间的性能降级可接受的所述计算系统的最低性能级别。
12.根据权利要求1所述的方法,其中所述计算系统包括分布式系统中的一个或多个节点。
13.一种计算机可读存储介质,所述计算机可读存储介质存储可由一个或多个处理器执行的计算机可读指令,当由所述一个或多个处理器执行时,所述计算机可读指令使所述一个或多个处理器执行操作,所述操作包括:
在对计算系统执行功率封顶过程的同时动态地监测所述计算系统的性能级别,所述计算系统包括多个处理组件;以及
当监测到所述计算系统的所述性能级别低于阈值时挂起所述计算系统的所述功率封顶过程。
14.根据权利要求13所述的计算机可读存储介质,其中动态地监测所述计算系统的所述性能级别包括周期性地获得所述计算系统的所述性能级别。
15.根据权利要求13所述的计算机可读存储介质,其中动态地监测所述计算系统的所述性能级别包括:
获得所述计算系统中的所述多个处理组件当中的处理组件组的多个性能参数,所述多个性能参数中的相应的性能参数与所述处理组件组中的相应的处理组件相关联;以及
基于所述多个性能参数计算所述性能级别。
16.根据权利要求15所述的计算机可读存储介质,其中所述性能级别包括所述多个性能参数的平均值。
17.根据权利要求18所述的计算机可读存储介质,其中当监测到所述计算系统的所述性能级别低于所述阈值时挂起所述计算系统的所述功率封顶过程包括:
确定所述平均值是否低于阈值频率;以及
响应于确定所述平均值低于所述阈值频率而挂起所述计算系统的所述功率封顶过程。
18.根据权利要求15所述的计算机可读存储介质,其中所述处理组件组的性能对所述计算系统的所述性能级别具有显著影响。
19.根据权利要求18所述的计算机可读存储介质,其中所述处理组件组运行需要低于第一阈值的时延的一个或多个实例。
20.根据权利要求18所述的计算机可读存储介质,其中所述处理组件组运行需要高于第二阈值的指令执行速率的一个或多个实例。
21.根据权利要求15所述的计算机可读存储介质,其中获得所述处理组件组的多个性能参数包括:
读取所述处理组件组的多个寄存器以获得所述多个性能参数。
22.根据权利要求15所述的计算机可读存储介质,其中所述处理组件组的所述多个性能参数包括所述处理组件组的多个频率。
23.根据权利要求13所述的计算机可读存储介质,其中所述阈值表示所述计算系统在所述功率封顶过程期间的性能降级可接受的所述计算系统的最低性能级别。
24.根据权利要求13所述的计算机可读存储介质,其中所述计算系统包括分布式系统中的一个或多个节点。
25.一种设备,所述设备包括:
一个或多个处理器;以及
存储器,所述存储器通信地耦合到所述一个或多个处理器,所述存储器存储可由所述一个或多个处理器执行的计算机可执行模块,所述计算机可执行模块包括:
监测模块,所述监测模块被配置为在对计算系统执行功率封顶过程的同时动态地监测所述计算系统的性能级别,所述计算系统包括多个处理组件;以及
挂起模块,所述挂起模块被配置为当监测到所述计算系统的所述性能级别低于阈值时挂起所述计算系统的所述功率封顶过程。
26.根据权利要求25所述的设备,其中所述监测模块被进一步配置为:
获得所述计算系统中的所述多个处理组件当中的处理组件组的多个性能参数,所述多个性能参数中的相应的性能参数与所述处理组件组中的相应的处理组件相关联;以及
基于所述多个性能参数计算所述性能级别。
27.根据权利要求26所述的设备,其中所述性能级别包括所述多个性能参数的平均值。
28.根据权利要求27所述的设备,其中所述挂起模块被进一步配置为:
确定所述平均值是否低于阈值频率;以及
响应于确定所述平均值低于所述阈值频率而挂起所述计算系统的所述功率封顶过程。
29.根据权利要求26所述的设备,其中所述处理组件组的性能对所述计算系统的所述性能级别具有显著影响。
30.根据权利要求29所述的设备,其中所述处理组件组运行需要低于第一阈值的时延的一个或多个实例。
31.根据权利要求29所述的设备,其中所述处理组件组运行需要高于第二阈值的指令执行速率的一个或多个实例。
32.根据权利要求26所述的设备,其中所述处理组件组的所述多个性能参数包括所述处理组件组的多个频率。
33.根据权利要求25所述的设备,其中所述阈值表示所述计算系统在所述功率封顶过程期间的性能降级可接受的所述计算系统的最低性能级别。
34.根据权利要求25所述的设备,其中所述计算系统包括分布式系统中的一个或多个节点。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/108559 WO2021056418A1 (en) | 2019-09-27 | 2019-09-27 | Power management method and apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114391128A true CN114391128A (zh) | 2022-04-22 |
Family
ID=75164780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980099699.2A Pending CN114391128A (zh) | 2019-09-27 | 2019-09-27 | 功率管理方法和设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114391128A (zh) |
WO (1) | WO2021056418A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110178652A1 (en) * | 2010-01-15 | 2011-07-21 | International Business Machines Corporation | Dynamically Adjusting an Operating State of a Data Processing System Running Under a Power Cap |
CN102844724A (zh) * | 2010-03-25 | 2012-12-26 | 微软公司 | 管理分布式计算系统中的功率供应 |
CN103154854A (zh) * | 2010-09-16 | 2013-06-12 | 高通股份有限公司 | 用于优化一组性能缩放算法的配置的系统和方法 |
US20170017288A1 (en) * | 2015-07-16 | 2017-01-19 | Cisco Technology, Inc. | Determining power capping policies for a computer device |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8478451B2 (en) * | 2009-12-14 | 2013-07-02 | Intel Corporation | Method and apparatus for dynamically allocating power in a data center |
US8479034B2 (en) * | 2010-08-09 | 2013-07-02 | Hewlett-Packard Development Company, L.P. | Controlling the power usage of a computer |
US9081613B2 (en) * | 2010-11-02 | 2015-07-14 | International Business Machines Corporation | Unified resource manager providing a single point of control |
-
2019
- 2019-09-27 CN CN201980099699.2A patent/CN114391128A/zh active Pending
- 2019-09-27 WO PCT/CN2019/108559 patent/WO2021056418A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110178652A1 (en) * | 2010-01-15 | 2011-07-21 | International Business Machines Corporation | Dynamically Adjusting an Operating State of a Data Processing System Running Under a Power Cap |
CN102844724A (zh) * | 2010-03-25 | 2012-12-26 | 微软公司 | 管理分布式计算系统中的功率供应 |
CN103154854A (zh) * | 2010-09-16 | 2013-06-12 | 高通股份有限公司 | 用于优化一组性能缩放算法的配置的系统和方法 |
US20170017288A1 (en) * | 2015-07-16 | 2017-01-19 | Cisco Technology, Inc. | Determining power capping policies for a computer device |
Also Published As
Publication number | Publication date |
---|---|
WO2021056418A1 (en) | 2021-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Paya et al. | Energy-aware load balancing and application scaling for the cloud ecosystem | |
US10877533B2 (en) | Energy efficient workload placement management using predetermined server efficiency data | |
JP5648939B2 (ja) | コンピュータ・システム内でタスクをディスパッチするための方法、システム及びコンピュータ・プログラム | |
EP3087503B1 (en) | Cloud compute scheduling using a heuristic contention model | |
US20160179560A1 (en) | CPU Overprovisioning and Cloud Compute Workload Scheduling Mechanism | |
US20140325524A1 (en) | Multilevel load balancing | |
US20160378570A1 (en) | Techniques for Offloading Computational Tasks between Nodes | |
US20150193244A1 (en) | Autonomously managed virtual machine anti-affinity rules in cloud computing environments | |
EP3750057B1 (en) | Hybrid system-on-chip for power and performance prediction and control | |
US20180136971A1 (en) | Techniques for virtual machine migration | |
KR102199275B1 (ko) | 분산 컴퓨팅 시스템에서의 적응적 리소스 관리 | |
US20140040474A1 (en) | Maximizing server utilization within a datacenter | |
US20170255240A1 (en) | Energy efficient workload placement management based on observed server efficiency measurements | |
Zhang et al. | Cool cloud: A practical dynamic virtual machine placement framework for energy aware data centers | |
US20120266163A1 (en) | Virtual Machine Migration | |
WO2019153188A1 (en) | Gpu power modeling using system performance data | |
CN114461335A (zh) | 云计算环境虚拟机和容器弹性伸缩方法、装置及设备 | |
CN107624181B (zh) | 包括虚拟处理器的闲置和调度的虚拟机管理方法和装备 | |
CN113590285A (zh) | 一种用于线程池参数动态设置的方法、系统及设备 | |
CN113312235A (zh) | 吞吐量优化的服务质量预警功率封顶系统 | |
CN114391128A (zh) | 功率管理方法和设备 | |
Suksriupatham et al. | Workload prediction with regression for over and under provisioning problems in multi-agent dynamic resource provisioning framework | |
JP2014206805A (ja) | 制御装置 | |
Singh et al. | An efficient fault tolerance mechanism based on moving averages algorithm | |
CN114402272B (zh) | 功率管理方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220422 |