CN106254058B - 一种调整服务器的频率的方法及装置 - Google Patents
一种调整服务器的频率的方法及装置 Download PDFInfo
- Publication number
- CN106254058B CN106254058B CN201510326091.2A CN201510326091A CN106254058B CN 106254058 B CN106254058 B CN 106254058B CN 201510326091 A CN201510326091 A CN 201510326091A CN 106254058 B CN106254058 B CN 106254058B
- Authority
- CN
- China
- Prior art keywords
- server
- frequency
- time
- group
- goal task
- 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.)
- Active
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/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例公开了一种调整服务器的频率的方法及装置,涉及通信技术领域,能够降低执行过程中的目标任务在所有服务器上执行完毕后产生长尾的概率。本发明实施例的方法包括:获取目标任务在第j个服务器的执行时间,其中,j为大于0并且小于N的正整数;当所述执行时间大于预设的第一阈值时,根据所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率。本发明适用于数据中心。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种调整服务器的频率的方法及装置。
背景技术
在现有数据中心的分布式环境下,针对search和memkeyvalue这两类拓扑结构,为了减少目标任务在各个服务器上执行完毕后产生的长尾,也就是尽可能保证目标任务在各个服务器上执行的总执行时间小于或等于SLO(Service-Level Object,服务等级目标值),性能监测模块(Performance Monitor)实时检测当前目标任务在各个服务器上的延迟值,并将当前目标任务在各个服务器上的延迟值向频率控制模块(Frequency Contrl)发送。其中,各个服务器之间串行,也就是后一个服务器在执行目标任务时,需要使用前一个服务器执行目标任务之后得到的执行结果,各个服务器均用于执行同一个目标任务,并且在执行目标任务的过程中,各个服务器按照串行顺序依次执行目标任务。当频率控制模块接收到任务在所有服务器上的延迟值之后,根据当前目标任务在所有服务器上的延迟值、当前目标任务在所有服务器上的延迟值的平均值、SLO确定所有服务器调整后的频率,并由频率控制模块统一调整所有服务器的频率。
在实际调频过程中,由于当前目标任务需要在各个服务器上执行完毕后,频率控制模块才能确定各个服务器的频率调整值。因此,采用上述调频策略可以降低后续目标任务在各个服务器上执行完毕后产生长尾的概率。但是,对于执行过程中的目标任务而言,上述调频策略无法降低当前目标任务在各个服务器上执行完毕后产生长尾的概率。
发明内容
本发明实施例提供一种调整服务器的频率的方法及装置,能够降低执行过程中的目标任务在所有服务器上执行完毕后产生长尾的概率。
为达到上述目的,本发明实施例采用如下技术方案:
第一方面,本发明实施例提供一种调整服务器的频率的方法,所述方法用于调整N个服务器中至少一个服务器的频率,所述N个服务器用于依次串行的执行目标任务,其中,N为大于1的正整数,所述方法包括:
获取目标任务在第j个服务器的执行时间,其中,j为大于0并且小于N的正整数;
当所述执行时间大于预设的第一阈值时,根据所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率。
结合第一方面,在第一方面的第一种可能的实现方式中,所述获取目标任务在第j个服务器的执行时间包括:
获取所述第j个服务器执行所述目标任务所占用的时间。
结合第一方面,在第一方面的第二种可能的实现方式中,所述获取目标任务在第j个服务器的执行时间包括:
获取所述第j个服务器执行所述目标任务结束后,第1至第j个服务器执行所述目标任务所占用的总执行时间。
结合第一方面,或第一方面的第一至第二种可能的实现方式中的任意一项,在第一方面的第三种可能的实现方式中,根据所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率,包括:
分别获取第j+1至第N个服务器的切频代价,其中,切频代价表示在单个服务器运行在第一频率时和所述单个服务器运行在第二频率时,用于执行所述目标任务所需要的时间的差值,所述第二频率的数值大于所述第一频率;
根据所述第j+1至第N个服务器中每个服务器的切频代价和所述执行时间,确定所述第j+1至第N个服务器中的第一服务器组,其中所述第一服务器组中的服务器运行在所述第一频率,并调整所述第一服务器组的工作频率至所述第二频率。
结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述根据所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率,包括:
确定所述第j+1至第N个服务器中,从所述第一频率调整至所述第二频率的i个服务器,其中,i为大于0并且小于N-j的正整数;
获取所述i个服务器的切频代价之和;
当所述i个服务器的切频代价之和小于松弛时间时,根据所述松弛时间与所述i个服务器的切频代价之和的差值,从所述第j+1至第N个服务器中确定所述第一服务器组,其中,所述松弛时间为所述执行时间和所述第一阈值的差值;
将所述第一服务器组中每个服务器的频率调整至所述第二频率。
结合第一方面的第三种可能的实现方式,在第一方面的第五种可能的实现方式中,所述方法还包括:
当所述N个服务器的总执行时间小于预设的第二阈值时,根据所述总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第二服务器组,其中,所述第二服务器组中的服务器运行在所述第二频率,并将所述第二服务器组中每个服务器的频率调整至所述第一频率;
当所述总执行时间大于预设的第三阈值时,根据所述总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第三服务器组,其中,所述第三服务器组中的服务器运行在所述第一频率,并将所述第三服务器组的频率调整至所述第二频率。
结合第一方面的第三种可能的实现方式,在第一方面的第六种可能的实现方式中,所述方法还包括:
当所述目标任务在所述N个服务器上执行结束后,将所述第一服务器组中每个服务器的频率调整至所述第一频率。
第二方面,本发明实施例提供一种调整服务器的频率的装置,所述装置用于调整N个服务器中至少一个服务器的频率,所述N个服务器用于依次串行的执行目标任务,其中,N为大于1的正整数,所述装置包括:
时间统计模块,用于获取目标任务在第j个服务器的执行时间,其中,j为大于0并且小于N的正整数;
频率控制模块,用于当所述执行时间大于预设的第一阈值时,根据所述时间统计模块获取的所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率。
结合第二方面,在第二方面的第一种可能的实现方式中,所述时间统计模块,具体用于:
获取所述第j个服务器执行所述目标任务所占用的时间。
结合第二方面,在第二方面的第二种可能的实现方式中,所述时间统计模块,具体用于:
获取所述第j个服务器执行所述目标任务结束后,第1至第j个服务器执行所述目标任务所占用的总执行时间。
结合第二方面,或第二方面的第一至第二种可能的实现方式中的任意一项,在第二方面的第三种可能的实现方式中,所述频率控制模块,具体用于:
分别获取第j+1至第N个服务器的切频代价,其中,切频代价表示在单个服务器运行在第一频率时和所述单个服务器运行在第二频率时,用于执行所述目标任务所需要的时间的差值,所述第二频率的数值大于所述第一频率;
根据所述第j+1至第N个服务器中每个服务器的切频代价和所述执行时间,确定所述第j+1至第N个服务器中的第一服务器组,其中所述第一服务器组中的服务器运行在所述第一频率,并调整所述第一服务器组的工作频率至所述第二频率。
结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述频率控制模块,具体用于:
确定所述第j+1至第N个服务器中,从所述第一频率调整至所述第二频率的i个服务器,其中,i为大于0并且小于N-j的正整数;
获取所述i个服务器的切频代价之和;
当所述i个服务器的切频代价之和小于松弛时间时,根据所述松弛时间与所述i个服务器的切频代价之和的差值,从所述第j+1至第N个服务器中确定所述第一服务器组,其中,所述松弛时间为所述执行时间和所述第一阈值的差值;
将所述第一服务器组中每个服务器的频率调整至所述第二频率。
结合第二方面的第三种可能的实现方式,在第二方面的第五种可能的实现方式中,所述频率控制模块,还用于:
当所述N个服务器的总执行时间小于预设的第二阈值时,根据所述总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第二服务器组,其中,所述第二服务器组中的服务器运行在所述第二频率,并将所述第二服务器组中每个服务器的频率调整至所述第一频率;
当所述总执行时间大于预设的第三阈值时,根据所述总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第三服务器组,其中,所述第三服务器组中的服务器运行在所述第一频率,并将所述第三服务器组的频率调整至所述第二频率。
结合第二方面的第三种可能的实现方式,在第二方面的第六种可能的实现方式中,所述频率控制模块,还用于当所述目标任务在所述N个服务器上执行结束后,将所述第一服务器组中每个服务器的频率调整至所述第一频率。
本发明实施例提供的一种调整服务器的频率的方法及装置,当获取的目标任务在第j个服务器的执行时间大于预设的第一阈值时,根据执行时间确定第j+1至第N个服务器中的第一服务器组,并调整第一服务器组的频率。其中,j为大于0并且小于N的正整数。相比较于现有技术中目标任务在所有服务器上执行完毕之后,频率控制模块统一调整所有服务器的频率。本发明实施例中,可以实时获取目标任务在第j个服务器的执行时间,并根据执行时间确定第一服务器组,并调整第一服务器组的频率。这样可以通过调整第一服务器组的频率,使已经产生长尾的目标任务在后续执行过程中得到一定补偿,也就是通过调整第一服务器组的频率,来减少第一服务器组用于执行目标任务的时间,从而弥补目标任务在当前服务器上产生长尾的时间。因此,降低了执行过程中的目标任务在所有服务器上执行完毕后产生长尾的概率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种数据中心的结构示意图;
图2为本发明实施例提供的一种调整服务器的频率的方法流程图;
图3为本发明实施例提供的另一种调整服务器的频率的方法流程图;
图4为本发明实施例提供的另一种调整服务器的频率的方法流程图;
图5为本发明实施例提供的另一种调整服务器的频率的方法流程图;
图6为本发明实施例提供的另一种调整服务器的频率的方法流程图;
图7为本发明实施例提供的一种将所有服务器分组的示意图;
图8为本发明实施例提供的另一种调整服务器的频率的方法流程图;
图9为本发明实施例提供的一种划分总执行时间所在区间的示意图;
图10为本发明实施例提供的另一种调整服务器的频率的方法流程图;
图11为本发明实施例提供的一种调整服务器的频率的装置结构示意图;
图12为本发明实施例提供的一种调整服务器的频率的设备结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括复数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
本发明实施例可以用于数据中心,数据中心设置有时间统计模块和频率控制模块。其中,时间统计模块可以实时统计每个任务在服务器中的处理状态,比如:每个任务在服务器上的执行时间,其中,执行时间可以包括服务器的节点延迟和传输过程中的网络延迟;频率控制模块可以根据用于表示所有服务器中每个服务器上每个任务的处理状态的参数,来确定所有服务器中的第一服务器组,并调整第一服务器组的频率。在数据中心还可以专门设置用于实时监测各个服务器性能的性能监测模块,性能监测模块可以根据时间统计模块上报的用于表示每个任务在服务器中的处理状态的参数,来监测所有服务器中每个服务器上每个任务的处理状态。数据中心还设置有多个串行的服务器,如图1所示为时间统计模块、性能监测模块、频率控制模块和服务器1、服务器2等N个服务器的结构示意图。其中,服务器1至服务器N串行,并且,在执行任务的过程中,服务器1至服务器N需要按照串行排列的顺序依次执行同一个任务。
本发明实施例提供一种调整服务器的频率的方法,所述方法用于调整N个服务器中至少一个服务器的频率,所述N个服务器用于依次串行的执行任务,其中,N为大于1的正整数。如图2所示,所述方法包括:
101、获取目标任务在第j个服务器的执行时间。
其中,j为大于0并且小于N的正整数。
任务在服务器上的执行过程中,当任务所在服务器运行频率较低时,任务在服务器上的执行时间较长;当任务所在服务器运行频率较高时,任务在服务器上的执行时间较短。因此,在调整服务器的频率的过程中,可以通过获取执行时间来确定将服务器的频率调高或调低,比如:将服务器的频率调整至高频或是调整至低频。需要说明的是,由于在实际应用场景中,每个服务器上可能存在多个正在执行的任务,而分别获取每个任务的执行时间会占用大量资源,因此,可以根据不同的应用场景设定采样时间,也就是可以周期性获取服务器上运行的每个任务的执行时间,之后根据周期性获取的每个任务的执行时间,执行步骤102,而不必获取每个出现在服务器上的任务的执行时间,从而减少获取任务的执行时间所占用的资源。
102、当所述执行时间大于预设的第一阈值时,根据所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率。
需要说明的是,执行时间可以是按照一定周期性直接获取的参数,或者是根据所获取的参数通过分析和/或计算得到的结果,其中,执行时间是与调整服务器的频率相关的参数。此外,在本文中涉及到执行时间的地方均可以参考这部分内容。在本发明实施例中可以根据执行时间来确定所有服务器中的第一服务器组,之后可以按照预先设定的调整规则根据不同应用场景的需求来调整第一服务器组的频率。需要说明的是,调整频率的方式可以有多种,具体可以参照后文中本发明实施例的其他实现方式。
需要说明的是,目标任务在第j个服务器的执行时间可以是第j个服务器执行目标任务所占用的时间,或是第j个服务器执行目标任务结束后,第1至第j个服务器执行目标任务所占用的总执行时间。第一服务器组可以包括一个或多个需要调整的服务器,在本发明实施例中,对于第一服务器组中服务器的数量不作具体限定,可以根据不同的应用场景来确定第一服务器组中服务器的数量。
因此,在本发明实施例的另一个实现方式中,在如图2所示的实现方式的基础上,还可以实现为如图3所示的实现方式,其中,步骤101可以具体实现为步骤1011:
1011、获取所述第j个服务器执行所述目标任务所占用的时间。
或者,在本发明实施例的另一个实现方式中,在如图2所示的实现方式的基础上,还可以实现为如图4所示的实现方式,其中,步骤101可以具体实现为步骤1012:
1012、获取所述第j个服务器执行所述目标任务结束后,第1至第j个服务器执行所述目标任务所占用的总执行时间。
本发明实施例提供的一种调整服务器的频率的方法,当获取的目标任务在第j个服务器的执行时间大于预设的第一阈值时,根据执行时间确定第j+1至第N个服务器中的第一服务器组,并调整第一服务器组的频率。其中,j为大于0并且小于N的正整数。相比较于现有技术中目标任务在所有服务器上执行完毕之后,频率控制模块统一调整所有服务器的频率。本发明实施例中,可以实时获取目标任务在第j个服务器的执行时间,并根据执行时间确定第一服务器组,并调整第一服务器组的频率。这样可以通过调整第一服务器组的频率,使已经产生长尾的目标任务在后续执行过程中得到一定补偿,也就是通过调整第一服务器组的频率,来减少第一服务器组用于执行目标任务的时间,从而弥补目标任务在当前服务器上产生长尾的时间。因此,降低了执行过程中的目标任务在所有服务器上执行完毕后产生长尾的概率。
为了更加准确的确定第一服务器组,在本发明实施例的另一个实现方式中,可以根据第j+1至第N个服务器的切频代价和执行时间来确定第一服务器组。因此,在如图2所示的实现方式的基础上,还可以实现为如图5所示的实现方式,其中,步骤102当所述执行时间大于预设的第一阈值时,根据所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率,可以具体实现为步骤1021和步骤1022:
1021、当所述执行时间大于预设的第一阈值时,分别获取第j+1至第N个服务器的切频代价。
其中,切频代价表示在单个服务器运行在第一频率时和所述单个服务器运行在第二频率时,用于执行所述目标任务所需要的时间的差值,所述第二频率的数值大于所述第一频率。
在本发明实施例中,可以通过将目标任务在第j个服务器的执行时间和预先设置的第一阈值进行比较来判断是否产生长尾,当执行时间大于第一阈值时,则目标任务在第j个服务器产生长尾,需要在目标任务的后续执行过程中进行补偿;当执行时间小于或等于第一阈值时,则目标任务在第j个服务器未产生长尾。其中,补偿的具体实现方式在后文中本发明实施例的其他实现方式中会提到。
需要说明的是,由于补偿过程是在目标任务在后续执行过程中进行的,因此,在本发明实施例中,可以通过调整串行的所有服务器中最后执行目标任务的几个服务器来实现补偿。而在调整服务器的频率的过程中,会考虑到调整频率所带来的切频代价,因此,这里需要分别获取第j+1至第N个服务器的切频代价。
在本发明实施例中,在目标任务在当前服务器上执行之前,可以预先根据经验值来进行第一阈值的设定。需要说明的是,由于每个服务器的性能可能不同,对于处理数据较大的服务器和处理数据相对较小的服务器设定不同的第一阈值可以更准确的对是否发生长尾进行判断。因此,可以根据每个服务器的性能为数据中心的所有服务器分别设定不同的第一阈值。
1022、根据所述第j+1至第N个服务器中每个服务器的切频代价和所述执行时间,确定所述第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的工作频率至所述第二频率。
其中,所述第一服务器组中的服务器运行在所述第一频率。
本发明实施例提供的一种调整服务器的频率的方法,当获取的目标任务在第j个服务器的执行时间大于预设的第一阈值时,根据执行时间和第j+1至第N个服务器中每个服务器的切频代价,确定第j+1至第N个服务器中的第一服务器组,并调整第一服务器组的工作频率至第二频率。其中,j为大于0并且小于N的正整数,第一服务器组中的服务器运行在第一频率。相比较于现有技术中目标任务在所有服务器上执行完毕之后,频率控制模块统一调整所有服务器的频率。本发明实施例中,可以实时获取目标任务在第j个服务器的执行时间,并获取第j+1至第N个服务器中每个服务器的切频代价,之后根据执行时间和获取的切频代价确定第一服务器组,并调整第一服务器组的工作频率至第二频率。这样可以通过调整第一服务器组的频率,使已经产生长尾的目标任务在后续执行过程中得到一定补偿,也就是通过调整第一服务器组的频率,来减少第一服务器组用于执行目标任务的时间,从而弥补目标任务在当前服务器上产生长尾的时间。因此,降低了执行过程中的目标任务在所有服务器上执行完毕后产生长尾的概率。
为了更加准确的确定第一服务器组,在本发明实施例的另一个实现方式中,可以根据第j+1至第N个服务器中,从第一频率动态调整至第二频率的i个服务器的切频代价之和,以及松弛时间,确定第一服务器组。因此,在如图5所示的实现方式的基础上,还可以实现为如图6所示的实现方式,其中,步骤1022根据所述第j+1至第N个服务器中每个服务器的切频代价和所述执行时间,确定所述第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的工作频率至所述第二频率,可以具体实现为步骤10221至步骤10224:
10221、确定所述第j+1至第N个服务器中,从所述第一频率调整至所述第二频率的i个服务器。
其中,i为大于0并且小于N-j的正整数。
10222、获取所述i个服务器的切频代价之和。
10223、当所述i个服务器的切频代价之和小于松弛时间时,根据所述松弛时间与所述i个服务器的切频代价之和的差值,从所述第j+1至第N个服务器中确定所述第一服务器组。
其中,所述松弛时间为所述执行时间和所述第一阈值的差值。
在本发明实施例中,可以根据公式Slack_time=Elapsed_time-Threshold_time进行计算得到松弛时间Slack_time。其中,Elapsed_time表示执行时间,Threshold_time表示第一阈值。由于在本发明实施例的调整服务器的频率的过程属于实时调整过程,也就是每当出现目标任务在当前服务器上产生长尾时,就会对第一服务器组的频率进行调整,这样被调整的服务器需要根据目标任务在当前服务器上产生的松弛时间来确定,而不需要考虑目标任务在当前服务器之前的其他服务器上产生的松弛时间。因此,在本发明实施例中,可以只获取目标任务在当前服务器上产生的松弛时间。
在本发明实施例中,可以根据第j+1至第N个服务器中每个服务器的切频代价、松弛时间和公式进行计算得到m。其中,m为大于0并且小于N-j-i的正整数,m表示N个服务器中的第一服务器组的数量,Scale_timei表示第i个服务器的切频代价。在本发明实施例中,为了避免针对每个目标任务所调整的服务器造成过多的资源浪费,步骤10223确定的第一服务器组可以是服务器在物理拓扑排序的最后m个,也就是按照目标任务在各个物理服务器上的执行的先后顺序,将各个物理服务器进行排序,形成服务器的物理拓扑排序,之后在服务器的调整过程中,通过确定m的值来确定物理拓扑排序中需要调整的最后m个服务器,也就是任务最后到达的m个服务器,并对这m个服务器进行调整。这样当需要针对多个正在执行任务来调整服务器的频率时,就可以使待调整服务器形成交集,比如:针对目标任务1需要调整m1个服务器,针对目标任务2需要调整m2个服务器,其中m1>m2,则同时针对目标任务1和目标任务2,只需要调整m1个服务器。如果在调整过程中采用随机挑选服务器的方式来进行调整,那可能同时需要调整m1+m2个服务器来保证目标任务1和目标任务2的执行,相对于只调整m1个服务器至高频,按照物理拓扑排序进行服务器的调整,可以节省大量资源。
在本发明实施例中,可以将所有服务器分成两组,第一组服务器运行在高频,第二组服务器运行在低频,并且为了方便确定第一服务器组的位置,可以将所有服务器按照一定规则进行排序。比如:第一组服务器可以按照每个服务器执行相同任务时的负载程度升序排列,也就是按照每个服务器的负载值升序排列;第二组服务器可以按照每个服务器执行相同任务时的负载程度降序排列,也就是按照每个服务器的负载值降序排列。如图7所示,在数据中心中设置有N个服务器、性能监测模块和频率控制模块。其中,第一组包括k个服务器,这k个服务器均运行在每个服务器的高频,且这k个服务器按照服务器的负载程度升序排列为服务器k、服务器k-1至服务器1;第二组包括N-k个服务器,这N-k个服务器均运行在每个服务器的低频,且这k个服务器按照服务器的负载程度降序排列为服务器k+1、服务器k+2至服务器N。在调整服务器的频率的过程中,当需要将一定数量的服务器从运行在低频调整至运行在高频时,可以从第二组最左端按照顺序依次选择一定数量的服务器移至第一组最左端需要调整的服务器是从第二组服务器中负载程度最高的服务器开始调整的。通过将两组服务器按照第一组升序和第二组降序的方式进行排列,可以看成将两组服务器的最左端连接起来时,所有服务器从服务器1至服务器N是按照负载程度的降序排列的。
需要说明的是,在本发明实施例中不具体限定排序的规则和排序方式,可以根据不同的应用场景设定具体的规则和排序方式,比如:按照一定数量的任务在N个服务器上产生长尾的概率降序排列,或者按照N个服务器中每个服务器上执行相同任务所占用的时间或是所耗费的资源升序排列。
10224、将所述第一服务器组中每个服务器的频率调整至所述第二频率。
为了方便调整,可以采取如图7所示的排列方式,这样第一服务器组可以是逻辑上连续的服务器,也就是负载程度相近的服务器组成的第一服务器组。对于数据中心而言,将第二组服务器中负载程度较高的m个第一服务器组的运行频率从低频调整至每个服务器的高频,可以有效的降低目标任务分别在负载程度较高的第一服务器组的服务器上的执行时间,从而通过调整较少数量的服务器来实现通过调整第一服务器组的频率对目标任务在第j个服务器产生的长尾进行补偿。
本发明实施例提供的一种调整服务器的频率的方法,当获取的目标任务在第j个服务器的执行时间大于预设的第一阈值时,根据从第一频率动态调整至第二频率的i个服务器的切频代价值和松弛时间,确定第j+1至第N个服务器中的第一服务器组,并将第一服务器组的频率调整至第二频率。其中,j为大于0并且小于N的正整数。相比较于现有技术中目标任务在所有服务器上执行完毕之后,频率控制模块统一调整所有服务器的频率。本发明实施例中,可以实时获取从第一频率动态调整至第二频率的i个服务器的切频代价值和松弛时间,并根据松弛时间与i个服务器的切频代价之和的差值,确定第一服务器组,并将第一服务器组的频率调整至第二频率。这样可以通过调整第一服务器组的频率,使已经产生长尾的目标任务在后续执行过程中得到一定补偿,也就是通过调整第一服务器组的频率,来减少第一服务器组用于执行目标任务的时间,从而弥补目标任务在当前服务器上产生长尾的时间。因此,降低了执行过程中的目标任务在所有服务器上执行完毕后产生长尾的概率。
为了降低在目标任务之后执行的其他目标任务在N个服务器上执行完毕后产生长尾的概率,在本发明实施例的另一个实现方式中,可以根据N个服务器的总执行时间和第二阈值的大小关系来确定第二服务器组,并调整第二服务器组的频率,或者根据N个服务器的总执行时间和第三阈值的大小关系来确定第三服务器组,并调整第三服务器组的频率。因此,在如图5所示的实现方式的基础上,还可以实现为如图8所示的实现方式:
103、当所述N个服务器的总执行时间小于预设的第二阈值时,根据所述总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第二服务器组,并将所述第二服务器组中每个服务器的频率调整至所述第一频率。
其中,所述第二服务器组中的服务器运行在所述第二频率。
需要说明的是,第二服务器组可以包括一个或多个需要调整的服务器,在本发明实施例中,对于第二服务器组中服务器的数量不作具体限定,可以根据不同的应用场景来确定第二服务器组中服务器的数量。
104、当所述总执行时间大于预设的第三阈值时,根据所述总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第三服务器组,并将所述第三服务器组的频率调整至所述第二频率。
其中,所述第三服务器组中的服务器运行在所述第一频率。
需要说明的是,第三服务器组可以包括一个或多个需要调整的服务器,在本发明实施例中,对于第三服务器组中服务器的数量不作具体限定,可以根据不同的应用场景来确定第三服务器组中服务器的数量。
根据公式Lantencyj=Lantencyj-1+Elapsed_timej进行计算得到总执行时间Lantencyj。其中,Lantencyj-1表示前j-1个服务器的总执行时间,Elapsed_timej表示所述目标任务在第j个服务器上开始执行到执行完毕所占用的时间。当在执行目标任务过程中,所述第j个服务器是第N个服务器时,根据公式确定第1至第N个服务器的总执行时间Lantencyj。
在本发明实施例中,可以根据N个服务器的总执行时间来确定是否需要对N个服务器进行调整,当N个服务器的总执行时间满足预设条件时,按照预设规则调整N个服务器。其中,预设条件和预设规则可以根据历史数据来设定。具体用于判断第二服务器组和第三服务器组的方法有多种,比如:通过预先设定用来判断总执行时间是否满足条件的区间,之后针对总执行时间所在的不同区间内来分别设定预设规则,以保证调整后的N个服务器的频率可以更适应于下一个目标任务的执行,从而降低下一个目标任务在N个服务器上执行完毕后产生长尾的概率,在后文会提到区间设定以及区间判断的具体实现方式。
例如:区间可以包括第一区间、第二区间和第三区间。
当N个服务器的总执行时间Lantencyj在第一区间时,可以根据公式
进行计算得到p,并将p个服务器中的每个服务器的频率调整为p个服务器中的每个服务器的低频。其中,p表示第二服务器组中服务器的数量,Tdown表示第一区间的上限,Scale_timei表示第i个服务器的切频代价。需要说明的是,在目标任务开始执行之前,为了保证目标任务在N个服务器上的执行过程中产生长尾的概率较低,可以将每个服务器分别设置为每个服务器的高频。之后根据目标任务在N个服务器上的总执行时间所在区间来判断是否需要将部分服务器调整至部分服务器的低频。当N个服务器的总执行时间Lantencyj在第二区间时,可以根据公式进行计算得到q,并将q个服务器中的每个服务器的频率调整至q个服务器中的每个服务器的高频。其中,q表示第三服务器组中服务器的数量,Tup表示第二区间的下限。当N个服务器的总执行时间Lantencyj在第三区间时,可以将N个服务器中的每个服务器的频率调整至N个服务器中的每个服务器的高频。
如图9所示,区间包括第一区间、第二区间和第三区间。在本发明实施例中,区间还可以包括第四区间,第四区间是为了避免频繁调整服务器的频率而设置的,在理想情况下,任务在数据中心的所有服务器上执行结束的总执行时间将收敛于此区间内,并达到稳定状态。其中,第一区间的上限值与第四区间的下限值相同,为Tdown;第四区间的上限值与第二区间的下限值相同,为Tup;第二区间的上限值与第三区间的下限值相同,为Deadline。
当目标任务的总执行时间在第一区间内时,可以确定如图7所示的第一组服务器中负载程度较小的n个服务器,将这n个服务器从运行在高频调整至运行在低频,同时第一组服务器的数量从k个增加至k+n个,第二组服务器的数量从N-k个减少至N-k-n个,其中,n<N-k;当目标任务的总执行时间在第二区间内时,可以确定如图7所示的第二组服务器中负载程度较大的n个服务器,将这n个服务器从运行在低频调整至运行在高频,同时第一组服务器的数量从k个减少至k-n个,第二组服务器的数量从N-k个增加至N-k+n个,其中,n<N-k;当当前目标任务的总执行时间在第三区间内时,表示目标任务在所有服务器上执行过程中产生的长尾是无法进行补偿的,此时可以将所有服务器中运行在低频的服务器的频率调整至高频,并维持预设时间,以减少后续目标任务因当前目标任务产生的长尾而产生长尾的概率,其中,预设时间可以是根据历史数据预先设定的经验值,在本发明实施例中不具体限定。需要说明的是,每个区间的上限和下限可以根据历史数据,针对不同的应用场景具体设定,在本发明实施例中,不对设定每个区间的上限和下限的具体方法进行限定。
本发明实施例提供的一种调整服务器的频率的方法,根据N各服务器的总执行时间和第二阈值的大小关系,确定第二服务器组,或者,N各服务器的总执行时间和第三阈值的大小关系,确定第三服务器组,并调整第二服务器组或第三服务器组的频率。相比较于现有技术中目标任务在所有服务器上执行完毕之后,频率控制模块统一调整所有服务器的频率。本发明实施例中,可以获取N个服务器的总执行时间,并根据总执行时间和第二阈值,以及第三阈值的大小关系来确定第二服务器组或第三服务器组,并调整第二服务器组或第三服务器组的频率。这样可以通过调整第二服务器组或第三服务器组的频率,来降低下一个目标任务在执行过程中产生长尾的概率,同时通过调整第二服务器组或第三服务器组的频率,降低执行时间较短的服务器的能耗。
为了节约数据中心的能耗,在本发明实施例的另一个实现方式中,可以在目标任务在N个服务器上执行结束之后,将被调整频率的服务器的频率进行恢复。因此,在如图5所示的实现方式的基础上,还可以实现为如图10所示的实现方式:
105、当所述目标任务在所述N个服务器上执行结束后,将所述第一服务器组中每个服务器的频率调整至所述第一频率。
将已调整频率的服务器从运行在高频调整为运行在低频的过程中,可以根据具体的应用场景来确定是否需要将所有已调整频率的服务器调回运行在低频。需要说明的是,具体是将所有已调整频率的服务器调回运行在低频,还是将部分已调整频率的服务器调回运行在低频在本发明实施例中,不作具体限定。
本发明实施例提供的一种调整服务器的频率的方法,当获取的目标任务在第j个服务器的执行时间大于预设的第一阈值时,根据执行时间确定第j+1至第N个服务器中的第一服务器组,并调整第一服务器组的频率。其中,j为大于0并且小于N的正整数。相比较于现有技术中目标任务在所有服务器上执行完毕之后,频率控制模块统一调整所有服务器的频率。本发明实施例中,可以实时获取目标任务在第j个服务器的执行时间,并根据执行时间确定第一服务器组,并调整第一服务器组的频率。这样可以通过调整第一服务器组的频率,使已经产生长尾的目标任务在后续执行过程中得到一定补偿,也就是通过调整第一服务器组的频率,来减少第一服务器组用于执行目标任务的时间,从而弥补目标任务在当前服务器上产生长尾的时间。因此,降低了执行过程中的目标任务在所有服务器上执行完毕后产生长尾的概率。并且,可以在目标任务在N个服务器上执行结束后,通过将被调整的服务器的频率调回低频,来降低被调整的服务器的能耗,从而实现数据中心的节能。
本发明实施例提供一种调整服务器的频率的装置20,如图11所示,所述装置20用于调整N个服务器中至少一个服务器的频率,所述N个服务器用于依次串行的执行目标任务,其中,N为大于1的正整数,所述装置20包括:
时间统计模块21,用于获取目标任务在第j个服务器的执行时间,其中,j为大于0并且小于N的正整数。
频率控制模块22,用于当所述执行时间大于预设的第一阈值时,根据所述时间统计模块21获取的所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率。
在本发明实施例的另一个实现方式中,所述时间统计模块21,具体用于:
获取所述第j个服务器执行所述目标任务所占用的时间。
在本发明实施例的另一个实现方式中,所述时间统计模块21,具体用于:
获取所述第j个服务器执行所述目标任务结束后,第1至第j个服务器执行所述目标任务所占用的总执行时间。
在本发明实施例的另一个实现方式中,所述频率控制模块22,具体用于:
分别获取第j+1至第N个服务器的切频代价,其中,切频代价表示在单个服务器运行在第一频率时和所述单个服务器运行在第二频率时,用于执行所述目标任务所需要的时间的差值,所述第二频率的数值大于所述第一频率;
根据所述第j+1至第N个服务器中每个服务器的切频代价和所述执行时间,确定所述第j+1至第N个服务器中的第一服务器组,其中所述第一服务器组中的服务器运行在所述第一频率,并调整所述第一服务器组的工作频率至所述第二频率。
在本发明实施例的另一个实现方式中,所述频率控制模块22,具体用于:
确定所述第j+1至第N个服务器中,从所述第一频率调整至所述第二频率的i个服务器,其中,i为大于0并且小于N-j的正整数;
获取所述i个服务器的切频代价之和;
当所述i个服务器的切频代价之和小于松弛时间时,根据所述松弛时间与所述i个服务器的切频代价之和的差值,从所述第j+1至第N个服务器中确定所述第一服务器组,其中,所述松弛时间为所述执行时间和所述第一阈值的差值;
将所述第一服务器组中每个服务器的频率调整至所述第二频率。
在本发明实施例的另一个实现方式中,所述频率控制模块22,还用于:
当所述N个服务器的总执行时间小于预设的第二阈值时,根据所述总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第二服务器组,其中,所述第二服务器组中的服务器运行在所述第二频率,并将所述第二服务器组中每个服务器的频率调整至所述第一频率;
当所述总执行时间大于预设的第三阈值时,根据所述总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第三服务器组,其中,所述第三服务器组中的服务器运行在所述第一频率,并将所述第三服务器组的频率调整至所述第二频率。
在本发明实施例的另一个实现方式中,所述频率控制模块22,还用于当所述目标任务在所述N个服务器上执行结束后,将所述第一服务器组中每个服务器的频率调整至所述第一频率。
本发明实施例提供的一种调整服务器的频率的装置,当获取的目标任务在第j个服务器的执行时间大于预设的第一阈值时,根据执行时间确定第j+1至第N个服务器中的第一服务器组,并调整第一服务器组的频率。其中,j为大于0并且小于N的正整数。相比较于现有技术中目标任务在所有服务器上执行完毕之后,频率控制模块统一调整所有服务器的频率。本发明实施例中,可以实时获取目标任务在第j个服务器的执行时间,并根据执行时间确定第一服务器组,并调整第一服务器组的频率。这样可以通过调整第一服务器组的频率,使已经产生长尾的目标任务在后续执行过程中得到一定补偿,也就是通过调整第一服务器组的频率,来减少第一服务器组用于执行目标任务的时间,从而弥补目标任务在当前服务器上产生长尾的时间。因此,降低了执行过程中的目标任务在所有服务器上执行完毕后产生长尾的概率。
本发明实施例提供一种调整服务器的频率的设备30,如图12所示,所述设备30用于调整N个服务器中至少一个服务器的频率,所述N个服务器用于依次串行的执行目标任务,其中,N为大于1的正整数;设备30可包括存储器31、接收器32、处理器33和总线34,其中,存储器31、接收器32、处理器33通过总线34通信连接。
存储器31可以是只读存储器(Read Only Memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(Random Access Memory,RAM)。存储器31可以存储操作系统和其他应用程序。在通过软件或者固件来实现本发明实施例提供的技术方案时,用于实现本发明实施例提供的技术方案的程序代码保存在存储器31中,并由处理器33来执行。
接收器32用于设备30与其他设备或通信网络(例如但不限于以太网,无线接入网(Radio Access Network,RAN),无线局域网(Wireless Local Area Network,WLAN)等)之间的通信。
处理器33可以采用通用的中央处理器(Central Processing Unit,CPU),微处理器,应用专用集成电路(Application Specific Integrated Circuit,ASIC),或者一个或多个集成电路,用于执行相关程序,以实现本发明实施例所提供的技术方案。
总线34可包括一通路,在装置各个部件(例如存储器31、接收器32和处理器33)之间传送信息。
应注意,尽管图12所示的硬件仅仅示出了存储器31、接收器32和处理器33以及总线34,但是在具体实现过程中,本领域的技术人员应当明白,设备30还包含实现正常运行所必须的其他器件。同时,根据具体需要,本领域的技术人员应当明白,还可包含实现其他功能的硬件器件。
图12所示的设备30用于实现图11所示的装置20时,所述接收器32,用于获取目标任务在第j个服务器的执行时间,其中,j为大于0并且小于N的正整数。
所述处理器33,与所述存储器31和所述接收器32耦合,用于当所述执行时间大于预设的第一阈值时,根据所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率。
在本发明实施例的另一个实现方式中,所述接收器32,具体用于获取所述第j个服务器执行所述目标任务所占用的时间。
在本发明实施例的另一个实现方式中,所述接收器32,具体用于获取所述第j个服务器执行所述目标任务结束后,第1至第j个服务器执行所述目标任务所占用的总执行时间。
在本发明实施例的另一个实现方式中,所述处理器33,具体用于:
分别获取第j+1至第N个服务器的切频代价,其中,切频代价表示在单个服务器运行在第一频率时和所述单个服务器运行在第二频率时,用于执行所述目标任务所需要的时间的差值,所述第二频率的数值大于所述第一频率;
根据所述第j+1至第N个服务器中每个服务器的切频代价和所述执行时间,确定所述第j+1至第N个服务器中的第一服务器组,其中所述第一服务器组中的服务器运行在所述第一频率,并调整所述第一服务器组的工作频率至所述第二频率。
在本发明实施例的另一个实现方式中,所述接收器32,具体用于:
确定所述第j+1至第N个服务器中,从所述第一频率调整至所述第二频率的i个服务器,其中,i为大于0并且小于N-j的正整数;
获取所述i个服务器的切频代价之和;
当所述i个服务器的切频代价之和小于松弛时间时,根据所述松弛时间与所述i个服务器的切频代价之和的差值,从所述第j+1至第N个服务器中确定所述第一服务器组,其中,所述松弛时间为所述执行时间和所述第一阈值的差值;
将所述第一服务器组中每个服务器的频率调整至所述第二频率。
在本发明实施例的另一个实现方式中,所述处理器33,还用于:
当所述N个服务器的总执行时间小于预设的第二阈值时,根据所述总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第二服务器组,其中,所述第二服务器组中的服务器运行在所述第二频率,并将所述第二服务器组中每个服务器的频率调整至所述第一频率;
当所述总执行时间大于预设的第三阈值时,根据所述总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第三服务器组,其中,所述第三服务器组中的服务器运行在所述第一频率,并将所述第三服务器组的频率调整至所述第二频率。
在本发明实施例的另一个实现方式中,所述处理器33,还用于:
当所述目标任务在所述N个服务器上执行结束后,将所述第一服务器组中每个服务器的频率调整至所述第一频率。
本发明实施例提供的一种调整服务器的频率的设备,当获取的目标任务在第j个服务器的执行时间大于预设的第一阈值时,根据执行时间确定第j+1至第N个服务器中的第一服务器组,并调整第一服务器组的频率。其中,j为大于0并且小于N的正整数。相比较于现有技术中目标任务在所有服务器上执行完毕之后,频率控制模块统一调整所有服务器的频率。本发明实施例中,可以实时获取目标任务在第j个服务器的执行时间,并根据执行时间确定第一服务器组,并调整第一服务器组的频率。这样可以通过调整第一服务器组的频率,使已经产生长尾的目标任务在后续执行过程中得到一定补偿,也就是通过调整第一服务器组的频率,来减少第一服务器组用于执行目标任务的时间,从而弥补目标任务在当前服务器上产生长尾的时间。因此,降低了执行过程中的目标任务在所有服务器上执行完毕后产生长尾的概率。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (14)
1.一种调整服务器的频率的方法,其特征在于,所述方法用于调整N个服务器中至少一个服务器的频率,所述N个服务器用于依次串行的执行目标任务,其中,N为大于1的正整数,所述方法包括:
获取目标任务在第j个服务器的执行时间,其中,j为大于0并且小于N的正整数;
当所述执行时间大于预设的第一阈值时,根据所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率。
2.根据权利要求1所述的方法,其特征在于,所述获取目标任务在第j个服务器的执行时间包括:
获取所述第j个服务器执行所述目标任务所占用的时间。
3.根据权利要求1所述的方法,其特征在于,所述获取目标任务在第j个服务器的执行时间包括:
获取所述第j个服务器执行所述目标任务结束后,第1至第j个服务器执行所述目标任务所占用的总执行时间。
4.根据权利要求1至3中任意一项所述的方法,其特征在于,根据所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率,包括:
分别获取第j+1至第N个服务器的切频代价,其中,切频代价表示在单个服务器运行在第一频率时和所述单个服务器运行在第二频率时,用于执行所述目标任务所需要的时间的差值,所述第二频率的数值大于所述第一频率;
根据所述第j+1至第N个服务器中每个服务器的切频代价和所述执行时间,确定所述第j+1至第N个服务器中的第一服务器组,其中所述第一服务器组中的服务器运行在所述第一频率,并调整所述第一服务器组的工作频率至所述第二频率。
5.根据权利要求4所述的方法,其特征在于,所述根据所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率,包括:
确定所述第j+1至第N个服务器中,从所述第一频率调整至所述第二频率的i个服务器,其中,i为大于0并且小于N-j的正整数;
获取所述i个服务器的切频代价之和;
当所述i个服务器的切频代价之和小于松弛时间时,根据所述松弛时间与所述i个服务器的切频代价之和的差值,从所述第j+1至第N个服务器中确定所述第一服务器组,其中,所述松弛时间为所述执行时间和所述第一阈值的差值;
将所述第一服务器组中每个服务器的频率调整至所述第二频率。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当所述N个服务器的总执行时间小于预设的第二阈值时,根据所述N个服务器的总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第二服务器组,其中,所述第二服务器组中的服务器运行在所述第二频率,并将所述第二服务器组中每个服务器的频率调整至所述第一频率;
当所述N个服务器的总执行时间大于预设的第三阈值时,根据所述N个服务器的总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第三服务器组,其中,所述第三服务器组中的服务器运行在所述第一频率,并将所述第三服务器组的频率调整至所述第二频率。
7.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当所述目标任务在所述N个服务器上执行结束后,将所述第一服务器组中每个服务器的频率调整至所述第一频率。
8.一种调整服务器的频率的装置,其特征在于,所述装置用于调整N个服务器中至少一个服务器的频率,所述N个服务器用于依次串行的执行目标任务,其中,N为大于1的正整数,所述装置包括:
时间统计模块,用于获取目标任务在第j个服务器的执行时间,其中,j为大于0并且小于N的正整数;
频率控制模块,用于当所述执行时间大于预设的第一阈值时,根据所述时间统计模块获取的所述执行时间确定第j+1至第N个服务器中的第一服务器组,并调整所述第一服务器组的频率。
9.根据权利要求8所述的装置,其特征在于,所述时间统计模块,具体用于:
获取所述第j个服务器执行所述目标任务所占用的时间。
10.根据权利要求8所述的装置,其特征在于,所述时间统计模块,具体用于:
获取所述第j个服务器执行所述目标任务结束后,第1至第j个服务器执行所述目标任务所占用的总执行时间。
11.根据权利要求8至10中任意一项所述的装置,其特征在于,所述频率控制模块,具体用于:
分别获取第j+1至第N个服务器的切频代价,其中,切频代价表示在单个服务器运行在第一频率时和所述单个服务器运行在第二频率时,用于执行所述目标任务所需要的时间的差值,所述第二频率的数值大于所述第一频率;
根据所述第j+1至第N个服务器中每个服务器的切频代价和所述执行时间,确定所述第j+1至第N个服务器中的第一服务器组,其中所述第一服务器组中的服务器运行在所述第一频率,并调整所述第一服务器组的工作频率至所述第二频率。
12.根据权利要求11所述的装置,其特征在于,所述频率控制模块,具体用于:
确定所述第j+1至第N个服务器中,从所述第一频率调整至所述第二频率的i个服务器,其中,i为大于0并且小于N-j的正整数;
获取所述i个服务器的切频代价之和;
当所述i个服务器的切频代价之和小于松弛时间时,根据所述松弛时间与所述i个服务器的切频代价之和的差值,从所述第j+1至第N个服务器中确定所述第一服务器组,其中,所述松弛时间为所述执行时间和所述第一阈值的差值;
将所述第一服务器组中每个服务器的频率调整至所述第二频率。
13.根据权利要求11所述的装置,其特征在于,所述频率控制模块,还用于:
当所述N个服务器的总执行时间小于预设的第二阈值时,根据所述N个服务器的总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第二服务器组,其中,所述第二服务器组中的服务器运行在所述第二频率,并将所述第二服务器组中每个服务器的频率调整至所述第一频率;
当所述N个服务器的总执行时间大于预设的第三阈值时,根据所述N个服务器的总执行时间,以及所述N个服务器中每个服务器的切频代价,确定所述N个服务器中的第三服务器组,其中,所述第三服务器组中的服务器运行在所述第一频率,并将所述第三服务器组的频率调整至所述第二频率。
14.根据权利要求11所述的装置,其特征在于,所述频率控制模块,还用于当所述目标任务在所述N个服务器上执行结束后,将所述第一服务器组中每个服务器的频率调整至所述第一频率。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510326091.2A CN106254058B (zh) | 2015-06-12 | 2015-06-12 | 一种调整服务器的频率的方法及装置 |
PCT/CN2016/073870 WO2016197621A1 (zh) | 2015-06-12 | 2016-02-16 | 一种调整服务器的频率的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510326091.2A CN106254058B (zh) | 2015-06-12 | 2015-06-12 | 一种调整服务器的频率的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106254058A CN106254058A (zh) | 2016-12-21 |
CN106254058B true CN106254058B (zh) | 2019-06-11 |
Family
ID=57504197
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510326091.2A Active CN106254058B (zh) | 2015-06-12 | 2015-06-12 | 一种调整服务器的频率的方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106254058B (zh) |
WO (1) | WO2016197621A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111475297B (zh) * | 2018-06-27 | 2023-04-07 | 国家超级计算天津中心 | 一种作业柔性配置方法 |
US10931542B2 (en) * | 2018-08-10 | 2021-02-23 | Futurewei Technologies, Inc. | Network embedded real time service level objective validation |
CN111078718B (zh) * | 2019-12-30 | 2023-04-07 | 广州酷狗计算机科技有限公司 | 频率控制方法、装置、设备以及计算机存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7647399B2 (en) * | 2005-12-06 | 2010-01-12 | Shunra Software Ltd. | System and method for comparing a service level at a remote network location to a service level objective |
CN104460934A (zh) * | 2013-09-13 | 2015-03-25 | 华为终端有限公司 | 多cpu调度方法及装置 |
CN104486129A (zh) * | 2014-12-24 | 2015-04-01 | 中国科学院计算技术研究所 | 分布式环境下保障应用服务质量的方法及系统 |
CN104679213A (zh) * | 2013-11-26 | 2015-06-03 | 英业达科技有限公司 | 服务器及服务器的控制方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246340A (zh) * | 2012-02-06 | 2013-08-14 | 索尼公司 | 动态调整中央处理单元的频率的装置和方法 |
-
2015
- 2015-06-12 CN CN201510326091.2A patent/CN106254058B/zh active Active
-
2016
- 2016-02-16 WO PCT/CN2016/073870 patent/WO2016197621A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7647399B2 (en) * | 2005-12-06 | 2010-01-12 | Shunra Software Ltd. | System and method for comparing a service level at a remote network location to a service level objective |
CN104460934A (zh) * | 2013-09-13 | 2015-03-25 | 华为终端有限公司 | 多cpu调度方法及装置 |
CN104679213A (zh) * | 2013-11-26 | 2015-06-03 | 英业达科技有限公司 | 服务器及服务器的控制方法 |
CN104486129A (zh) * | 2014-12-24 | 2015-04-01 | 中国科学院计算技术研究所 | 分布式环境下保障应用服务质量的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2016197621A1 (zh) | 2016-12-15 |
CN106254058A (zh) | 2016-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sun et al. | Autonomous resource slicing for virtualized vehicular networks with D2D communications based on deep reinforcement learning | |
EP2083590A3 (en) | Communication systems | |
CN112148484B (zh) | 一种基于耦合度的微服务在线分配方法与系统 | |
CN105227488A (zh) | 一种用于分布式计算机平台的网络流组调度方法 | |
CN106254058B (zh) | 一种调整服务器的频率的方法及装置 | |
KR20170059315A (ko) | 상태 관련 정보 공유 방법 및 장치 | |
CN114253735B (zh) | 一种任务处理方法、装置及相关设备 | |
US10476644B2 (en) | Method and apparatus for allocating sounding resources in a wireless network | |
CN104808770A (zh) | 基于动态调频的数据中心能耗管理方法及系统 | |
Zhang et al. | Deep reinforcement learning based cooperative partial task offloading and resource allocation for IIoT applications | |
CN113132945B (zh) | 一种铁路专网基站小区节能调度方法和系统 | |
CN112020098B (zh) | 负荷均衡方法、装置、计算设备及计算机存储介质 | |
CN113543160B (zh) | 5g切片资源配置方法、装置、计算设备及计算机存储介质 | |
CN113138860A (zh) | 消息队列的管理方法及装置 | |
CN109714795A (zh) | 一种基于sdn网络切片的资源管理方法、资源管理系统以及装置 | |
CN108021447B (zh) | 一种基于分布式数据确定最优资源策略的方法及系统 | |
CN109981744A (zh) | 数据的分发方法、装置、存储介质及电子设备 | |
CN105677447A (zh) | 分布式云中基于聚类的时延带宽极小化虚拟机部署方法 | |
CN116235529A (zh) | 实现多个接入网络设备的自组织网络的方法和执行该方法的电子装置 | |
CN118138590A (zh) | 一种数据中心负载均衡方法 | |
CN105335376B (zh) | 一种流处理方法、装置及系统 | |
CN110245019A (zh) | 一种自适应系统资源的线程并发方法及装置 | |
CN116132353A (zh) | 基于ddqn的tsn路由选择方法 | |
CN112637904B (zh) | 负载均衡方法、装置及计算设备 | |
CN111459651B (zh) | 一种负载均衡方法、装置、存储介质及调度系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |