一种服务器的电源控制方法、系统及装置与流程

文档序号:23394684发布日期:2020-12-22 14:02阅读:285来源:国知局
一种服务器的电源控制方法、系统及装置与流程

本发明涉及服务器领域,特别是涉及一种服务器的电源控制方法、系统及装置。



背景技术:

ai(artificialintelligence,人工智能)服务器需要具备大量平行运算的能力,而gpu(graphicsprocessingunit,图形处理器)较适用于平行运算,被广泛应用于ai服务器。gpu是ai服务器的效能高低的关键,ai服务器拥有的gpu数量越多,ai服务器的效能越高,但gpu数量越多,所有gpu所需的电流就越多,电流控制也就越来越不容易。而gpu在短时间内要执行高效能计算时,可允许短时间电流上升,此短时间电流称为edpp(electricaldesignpointpeakcurrent,峰值电流),edpp通常是平时电流的2到3倍,电流更不好控制,若电流控制不佳,会造成系统总电源直接关机或重开机。

现有技术中,gpuedpp的控制方法为:在用于为gpu供电的psu(powersupplyunit,电源供应器)内或系统总电源板上增设大电容来阻止gpu在短时间内的峰值电流,并如图1所示,在psu(系统总电源)和各gpu之间增设管理单元,若系统总电源的使用率过高,则由管理单元同时触发各gpu的powerbrake讯号,各gpu将高效能计算改为低效能计算,以降低gpu功耗,阻止系统总电源关机或重开机,但这也会让整个ai服务器的计算性能有很大程度地下降。

因此,如何提供一种解决上述技术问题的方案是本领域的技术人员目前需要解决的问题。



技术实现要素:

本发明的目的是提供一种服务器的电源控制方法、系统及装置,采用系统总电源的使用率分等级的方式,在系统总电源的使用率越高的情况下对系统gpu的计算能力越抑制,即系统gpu的功耗降低越多,从而在阻止系统总电源关机或重开机的同时尽可能保证服务器的计算性能。

为解决上述技术问题,本发明提供了一种服务器的电源控制方法,包括:

预先将系统总电源的使用率进行等级划分,并在不同等级的系统总电源的使用率下一一设置gpu电源控制策略;其中,越高等级的系统总电源的使用率越高,越高等级的系统总电源的使用率下设置的gpu电源控制策略对系统gpu计算能力的抑制程度越强;

获取所述系统总电源的实际使用率,并根据所述系统总电源的使用率等级划分结果确定与所述实际使用率对应的目标使用率等级;

按照所述目标使用率等级对应的gpu电源控制策略,对系统中的gpu进行电源控制。

优选地,预先将系统总电源的使用率进行等级划分,并在不同等级的系统总电源的使用率下一一设置gpu电源控制策略的过程,包括:

预先将系统总电源的使用率进行三等级划分,得到低等级使用率、中等级使用率及高等级使用率;

为所述低等级使用率设置用于调节系统中各gpu的负载均衡分配的第一gpu电源控制策略;

为所述中等级使用率设置用于按照预设gpu触发选择策略从各gpu中选择目标触发gpu并触发所述目标触发gpu的powerbrake讯号的第二gpu电源控制策略;

为所述高等级使用率设置用于按照预设gpu关闭选择策略从各gpu中选择目标关闭gpu并关闭所述目标关闭gpu的电源的第三gpu电源控制策略。

优选地,调节系统中各gpu的负载均衡分配的过程,包括:

预先为各gpu一一配置用于获取gpu电源参数的集成芯片,并利用所述集成芯片获取各gpu的电流参数;

判断目标gpu的电流参数是否大于预设电流阈值;若是,则确定所述目标gpu处于高工作负载状态;若否,则确定所述目标gpu处于低工作负载状态;其中,所述目标gpu为任一gpu;

将处于高工作负载状态的gpu的部分运算工作量均衡分配给处于低工作负载状态的各gpu,以使原处于高工作负载状态的gpu降至处于低工作负载状态。

优选地,按照预设gpu触发选择策略从各gpu中选择目标触发gpu并触发所述目标触发gpu的powerbrake讯号的过程,包括:

预先为各gpu一一配置用于获取gpu电源参数的集成芯片,并利用所述集成芯片获取各gpu的电流参数;

判断目标gpu的电流参数是否大于预设电流阈值;若是,则确定所述目标gpu处于高工作负载状态;其中,所述目标gpu为任一gpu;

依次触发处于高工作负载状态的gpu的powerbrake讯号,直至所述系统总电源的实际使用率的等级降至低等级。

优选地,按照预设gpu关闭选择策略从各gpu中选择目标关闭gpu并关闭所述目标关闭gpu的电源的过程,包括:

预先为各gpu一一配置用于获取gpu电源参数的集成芯片,并利用所述集成芯片获取各gpu的电流参数;

判断目标gpu的电流参数是否大于预设电流阈值;若是,则确定所述目标gpu处于高工作负载状态;若否,则确定所述目标gpu处于低工作负载状态;其中,所述目标gpu为任一gpu;

优先关闭处于低工作负载状态的gpu的电源,再关闭处于高工作负载状态的gpu的电源,直至所述系统总电源的实际使用率的等级降至中等级。

优选地,所述服务器的电源控制方法还包括:

将利用所述集成芯片获取的目标gpu的各电源参数分别与其对应的预设参数安全阈值作比较,当所述目标gpu的任一电源参数大于其对应的预设参数安全阈值时,借助所述集成芯片直接关闭所述目标gpu的电源。

为解决上述技术问题,本发明还提供了一种服务器的电源控制系统,包括:

预设模块,用于预先将系统总电源的使用率进行等级划分,并在不同等级的系统总电源的使用率下一一设置gpu电源控制策略;其中,越高等级的系统总电源的使用率越高,越高等级的系统总电源的使用率下设置的gpu电源控制策略对系统gpu计算能力的抑制程度越强;

确定模块,用于获取所述系统总电源的实际使用率,并根据所述系统总电源的使用率等级划分结果确定与所述实际使用率对应的目标使用率等级;

控制模块,用于按照所述目标使用率等级对应的gpu电源控制策略,对系统中的gpu进行电源控制。

优选地,所述预设模块具体用于:

预先将系统总电源的使用率进行三等级划分,得到低等级使用率、中等级使用率及高等级使用率;

为所述低等级使用率设置用于调节系统中各gpu的负载均衡分配的第一gpu电源控制策略;

为所述中等级使用率设置用于按照预设gpu触发选择策略从各gpu中选择目标触发gpu并触发所述目标触发gpu的powerbrake讯号的第二gpu电源控制策略;

为所述高等级使用率设置用于按照预设gpu关闭选择策略从各gpu中选择目标关闭gpu并关闭所述目标关闭gpu的电源的第三gpu电源控制策略。

优选地,调节系统中各gpu的负载均衡分配的过程,包括:

预先为各gpu一一配置用于获取gpu电源参数的集成芯片,并利用所述集成芯片获取各gpu的电流参数;

判断目标gpu的电流参数是否大于预设电流阈值;若是,则确定所述目标gpu处于高工作负载状态;若否,则确定所述目标gpu处于低工作负载状态;其中,所述目标gpu为任一gpu;

将处于高工作负载状态的gpu的部分运算工作量均衡分配给处于低工作负载状态的各gpu,以使原处于高工作负载状态的gpu降至处于低工作负载状态。

为解决上述技术问题,本发明还提供了一种服务器的电源控制装置,包括:

存储器,用于存储计算机程序;

设于系统总电源和系统中各gpu之间的处理器,用于在执行所述计算机程序时实现上述任一种服务器的电源控制方法的步骤。

本发明提供了一种服务器的电源控制方法,预先将系统总电源的使用率进行等级划分,并在不同等级的系统总电源的使用率下一一设置gpu电源控制策略;其中,越高等级的系统总电源的使用率越高,越高等级的系统总电源的使用率下设置的gpu电源控制策略对系统gpu计算能力的抑制程度越强;获取系统总电源的实际使用率,并根据系统总电源的使用率等级划分结果确定与实际使用率对应的目标使用率等级;按照目标使用率等级对应的gpu电源控制策略,对系统中的gpu进行电源控制。可见,本申请采用系统总电源的使用率分等级的方式,在系统总电源的使用率越高的情况下对系统gpu的计算能力越抑制,即系统gpu的功耗降低越多,从而在阻止系统总电源关机或重开机的同时尽可能保证服务器的计算性能。

本发明还提供了一种服务器的电源控制系统及装置,与上述电源控制方法具有相同的有益效果。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为现有技术中的一种服务器的电源控制原理图;

图2为本发明实施例提供的一种服务器的电源控制方法的流程图;

图3为本发明实施例提供的一种服务器内gpu的电源系统的结构示意图。

具体实施方式

本发明的核心是提供一种服务器的电源控制方法、系统及装置,采用系统总电源的使用率分等级的方式,在系统总电源的使用率越高的情况下对系统gpu的计算能力越抑制,即系统gpu的功耗降低越多,从而在阻止系统总电源关机或重开机的同时尽可能保证服务器的计算性能。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参照图2,图2为本发明实施例提供的一种服务器的电源控制方法的流程图。

该服务器的电源控制方法包括:

步骤s1:预先将系统总电源的使用率进行等级划分,并在不同等级的系统总电源的使用率下一一设置gpu电源控制策略。

具体地,本申请提前将系统总电源的使用率进行等级划分,需要说明的是,越高等级的系统总电源的使用率越高,即越低等级的系统总电源的使用率越低,比如,系统总电源的使用率在80%以下时,系统总电源没有关机或重开机风险,没必要对80%以下的系统总电源的使用率进行等级划分,可将80%及其以上的系统总电源的使用率进行等级划分,如设置80%-90%为第一等级,90%-100%为第二等级,100%及其以上为第三等级,等级排序为:第一等级<第二等级<第三等级。

而且,本申请还提前在不同等级的系统总电源的使用率下一一设置gpu电源控制策略,即在每一等级的系统总电源的使用率下,均设置一个gpu电源控制策略,可以理解的是,系统总电源的使用率越高,系统总电源关机或重开机的风险越大,所以越高等级的系统总电源的使用率下设置的gpu电源控制策略对系统gpu计算能力的抑制程度应越强,即在系统总电源的使用率越高时,系统gpu计算能力越弱,系统gpu的功耗降低越多,以阻止系统总电源关机或重开机;在系统总电源的使用率越低时,系统gpu计算能力越强,系统gpu的功耗降低越少,以保证服务器的计算性能,从而在阻止系统总电源关机或重开机的同时尽可能保证服务器的计算性能。

步骤s2:获取系统总电源的实际使用率,并根据系统总电源的使用率等级划分结果确定与实际使用率对应的目标使用率等级。

具体地,本申请获取系统总电源的实际使用率,然后根据系统总电源的使用率等级划分结果,确定与系统总电源的实际使用率对应的使用率等级(称为目标使用率等级),以为后续确定在系统总电源的实际使用率下所需的gpu电源控制策略。

步骤s3:按照目标使用率等级对应的gpu电源控制策略,对系统中的gpu进行电源控制。

具体地,本申请在确定与系统总电源的实际使用率对应的目标使用率等级之后,根据使用率等级与gpu电源控制策略的对应关系,确定与目标使用率等级对应的gpu电源控制策略,然后按照目标使用率等级对应的gpu电源控制策略,对系统中的gpu进行电源控制。

本发明提供了一种服务器的电源控制方法,预先将系统总电源的使用率进行等级划分,并在不同等级的系统总电源的使用率下一一设置gpu电源控制策略;其中,越高等级的系统总电源的使用率越高,越高等级的系统总电源的使用率下设置的gpu电源控制策略对系统gpu计算能力的抑制程度越强;获取系统总电源的实际使用率,并根据系统总电源的使用率等级划分结果确定与实际使用率对应的目标使用率等级;按照目标使用率等级对应的gpu电源控制策略,对系统中的gpu进行电源控制。可见,本申请采用系统总电源的使用率分等级的方式,在系统总电源的使用率越高的情况下对系统gpu的计算能力越抑制,即系统gpu的功耗降低越多,从而在阻止系统总电源关机或重开机的同时尽可能保证服务器的计算性能。

在上述实施例的基础上:

作为一种可选的实施例,预先将系统总电源的使用率进行等级划分,并在不同等级的系统总电源的使用率下一一设置gpu电源控制策略的过程,包括:

预先将系统总电源的使用率进行三等级划分,得到低等级使用率、中等级使用率及高等级使用率;

为低等级使用率设置用于调节系统中各gpu的负载均衡分配的第一gpu电源控制策略;

为中等级使用率设置用于按照预设gpu触发选择策略从各gpu中选择目标触发gpu并触发目标触发gpu的powerbrake讯号的第二gpu电源控制策略;

为高等级使用率设置用于按照预设gpu关闭选择策略从各gpu中选择目标关闭gpu并关闭目标关闭gpu的电源的第三gpu电源控制策略。

需要说明的是,本申请的预设是提前设置好的,只需要设置一次,除非根据实际情况需要修改,否则不需要重新设置。

具体地,本申请提前将系统总电源的使用率进行低、中、高三等级划分,得到低等级使用率、中等级使用率及高等级使用率。考虑到越高等级的系统总电源的使用率下设置的gpu电源控制策略对系统gpu计算能力的抑制程度应越强,所以本申请为低等级使用率设置的第一gpu电源控制策略为:调节系统中各gpu的负载均衡分配,即将处于高工作负载状态的gpu的部分运算工作量均衡分配给处于低工作负载状态的各gpu,以使原处于高工作负载状态的gpu降至处于低工作负载状态,处于高工作负载状态的gpu的电流通常是处于低工作负载状态的gpu的电流的2到3倍,从而降低了系统gpu的功耗,以阻止系统总电源关机或重开机,且并未影响到服务器的计算性能。为中等级使用率设置的第二gpu电源控制策略为:按照预设gpu触发选择策略从各gpu中选择出预将高效能计算改为低效能计算的gpu(称为目标触发gpu),然后触发目标触发gpu的powerbrake讯号,从而降低了系统gpu的功耗,以阻止系统总电源关机或重开机。为高等级使用率设置的第三gpu电源控制策略为:按照预设gpu关闭选择策略从各gpu中选择出预关闭电源的gpu(称为目标关闭gpu),然后关闭目标关闭gpu的电源,从而降低了系统gpu的功耗,以阻止系统总电源关机或重开机。

比如,设置80%-90%为低等级使用率(警告),90%-100%为中等级使用率(严重),100%及其以上为高等级使用率(致命),其各自对应的gpu电源控制策略如下表1所示:

表1

作为一种可选的实施例,调节系统中各gpu的负载均衡分配的过程,包括:

预先为各gpu一一配置用于获取gpu电源参数的集成芯片,并利用集成芯片获取各gpu的电流参数;

判断目标gpu的电流参数是否大于预设电流阈值;若是,则确定目标gpu处于高工作负载状态;若否,则确定目标gpu处于低工作负载状态;其中,目标gpu为任一gpu;

将处于高工作负载状态的gpu的部分运算工作量均衡分配给处于低工作负载状态的各gpu,以使原处于高工作负载状态的gpu降至处于低工作负载状态。

具体地,本申请提前为各gpu一一配置用于获取gpu电源参数的集成芯片,以利用集成芯片获取各gpu的电流参数。考虑到处于高工作负载状态的gpu的电流>处于低工作负载状态的gpu的电流,所以本申请设置一个电流阈值,使其:处于高工作负载状态的gpu的电流>电流阈值>处于低工作负载状态的gpu的电流,则在获取目标gpu的电流参数后,判断目标gpu的电流参数是否大于预设电流阈值;若大于预设电流阈值,说明目标gpu处于高工作负载状态;若不大于预设电流阈值,说明目标gpu处于低工作负载状态,从而实现根据gpu的电流大小判断gpu的工作负载状态。

基于此,调节系统中各gpu的负载均衡分配的具体过程为:将处于高工作负载状态的gpu的部分运算工作量均衡分配给处于低工作负载状态的各gpu,以使原处于高工作负载状态的gpu降至处于低工作负载状态,从而降低了系统gpu的功耗,以阻止系统总电源关机或重开机,且并未影响到服务器的计算性能。

作为一种可选的实施例,按照预设gpu触发选择策略从各gpu中选择目标触发gpu并触发目标触发gpu的powerbrake讯号的过程,包括:

预先为各gpu一一配置用于获取gpu电源参数的集成芯片,并利用集成芯片获取各gpu的电流参数;

判断目标gpu的电流参数是否大于预设电流阈值;若是,则确定目标gpu处于高工作负载状态;其中,目标gpu为任一gpu;

依次触发处于高工作负载状态的gpu的powerbrake讯号,直至系统总电源的实际使用率的等级降至低等级。

具体地,gpu的工作负载状态的判定原理在上述实施例已经提及,本申请在此不再赘述。

基于此,从各gpu中选择目标触发gpu并触发目标触发gpu的powerbrake讯号的具体过程为:从各gpu中依次选择处于高工作负载状态的gpu作为目标触发gpu,并触发当前的目标触发gpu的powerbrake讯号,直至系统总电源的实际使用率的等级降至低等级。

需要说明的是,这种gpu依次触发方式能够在阻止系统总电源关机或重开机的同时,尽可能保证服务器的最大允许计算性能。

作为一种可选的实施例,按照预设gpu关闭选择策略从各gpu中选择目标关闭gpu并关闭目标关闭gpu的电源的过程,包括:

预先为各gpu一一配置用于获取gpu电源参数的集成芯片,并利用集成芯片获取各gpu的电流参数;

判断目标gpu的电流参数是否大于预设电流阈值;若是,则确定目标gpu处于高工作负载状态;若否,则确定目标gpu处于低工作负载状态;其中,目标gpu为任一gpu;

优先关闭处于低工作负载状态的gpu的电源,再关闭处于高工作负载状态的gpu的电源,直至系统总电源的实际使用率的等级降至中等级。

具体地,gpu的工作负载状态的判定原理在上述实施例已经提及,本申请在此不再赘述。

基于此,从各gpu中选择目标关闭gpu并关闭目标关闭gpu的电源的具体过程为:从各gpu中优先选择处于低工作负载状态的gpu依次作为目标关闭gpu,在处于低工作负载状态的gpu选择完毕后,再选择处于高工作负载状态的gpu依次作为目标关闭gpu,并关闭当前的目标关闭gpu的电源,直至系统总电源的实际使用率的等级降至中等级。

需要说明的是,这种处于低工作负载状态的gpu的电源优先关闭且电源依次关闭的方式能够在阻止系统总电源关机或重开机的同时,尽可能保证服务器的最大允许计算性能。

作为一种可选的实施例,服务器的电源控制方法还包括:

将利用集成芯片获取的目标gpu的各电源参数分别与其对应的预设参数安全阈值作比较,当目标gpu的任一电源参数大于其对应的预设参数安全阈值时,借助集成芯片直接关闭目标gpu的电源。

进一步地,本申请还可将利用集成芯片获取的目标gpu的各电源参数分别与其对应的预设参数安全阈值作比较,如目标gpu的电流参数与其对应的预设电流参数安全阈值作比较;目标gpu的电压参数与其对应的预设电压参数安全阈值作比较;若目标gpu的任一电源参数大于其对应的预设参数安全阈值,则借助集成芯片直接关闭目标gpu的电源,从而避免gpu芯片被烧毁。

综上,如图3所示,服务器内gpu的电源系统包括psu和电源控制装置,电源控制装置包括处理器和用于获取gpu电源参数的集成芯片(hotswapic),处理器用于在执行存储器存储的计算机程序时实现上述任一种服务器的电源控制方法的步骤。

本申请还提供了一种服务器的电源控制系统,包括:

预设模块,用于预先将系统总电源的使用率进行等级划分,并在不同等级的系统总电源的使用率下一一设置gpu电源控制策略;其中,越高等级的系统总电源的使用率越高,越高等级的系统总电源的使用率下设置的gpu电源控制策略对系统gpu计算能力的抑制程度越强;

确定模块,用于获取系统总电源的实际使用率,并根据系统总电源的使用率等级划分结果确定与实际使用率对应的目标使用率等级;

控制模块,用于按照目标使用率等级对应的gpu电源控制策略,对系统中的gpu进行电源控制。

作为一种可选的实施例,预设模块具体用于:

预先将系统总电源的使用率进行三等级划分,得到低等级使用率、中等级使用率及高等级使用率;

为低等级使用率设置用于调节系统中各gpu的负载均衡分配的第一gpu电源控制策略;

为中等级使用率设置用于按照预设gpu触发选择策略从各gpu中选择目标触发gpu并触发目标触发gpu的powerbrake讯号的第二gpu电源控制策略;

为高等级使用率设置用于按照预设gpu关闭选择策略从各gpu中选择目标关闭gpu并关闭目标关闭gpu的电源的第三gpu电源控制策略。

作为一种可选的实施例,调节系统中各gpu的负载均衡分配的过程,包括:

预先为各gpu一一配置用于获取gpu电源参数的集成芯片,并利用集成芯片获取各gpu的电流参数;

判断目标gpu的电流参数是否大于预设电流阈值;若是,则确定目标gpu处于高工作负载状态;若否,则确定目标gpu处于低工作负载状态;其中,目标gpu为任一gpu;

将处于高工作负载状态的gpu的部分运算工作量均衡分配给处于低工作负载状态的各gpu,以使原处于高工作负载状态的gpu降至处于低工作负载状态。

本申请提供的电源控制系统的介绍请参考上述电源控制方法的实施例,本申请在此不再赘述。

本申请还提供了一种服务器的电源控制装置,包括:

存储器,用于存储计算机程序;

设于系统总电源和系统中各gpu之间的处理器,用于在执行计算机程序时实现上述任一种服务器的电源控制方法的步骤。

本申请提供的电源控制装置的介绍请参考上述电源控制方法的实施例,本申请在此不再赘述。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1