CN105718364B - 一种云计算平台中计算资源能力动态评估方法 - Google Patents
一种云计算平台中计算资源能力动态评估方法 Download PDFInfo
- Publication number
- CN105718364B CN105718364B CN201610027583.6A CN201610027583A CN105718364B CN 105718364 B CN105718364 B CN 105718364B CN 201610027583 A CN201610027583 A CN 201610027583A CN 105718364 B CN105718364 B CN 105718364B
- Authority
- CN
- China
- Prior art keywords
- heap
- resource
- task
- node
- disk
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3433—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种云计算平台中计算资源能力动态评估方法:依据云计算中负载大多为大规模并行而设计,通常包含多个执行逻辑相同或相似的任务的特性,通过分析多个执行逻辑相同或相似的任务在不同计算资源上执行的信息以及节点运行时信息对CPU、内存、磁盘带宽、网络带宽等计算资源的能力进行动态评估。本发明在保证评估值时效性、精确性的情况下,具有极低的运行时开销。本发明动态评估产生的结果可以用在云计算平台资源管理、作业调度、负载均衡、平台容错等方面,提高平台中计算资源的利用效率,最终提升云计算平台的整体吞吐率。
Description
技术领域
本发明属于计算机领域,涉及云计算平台中的资源监控及管理系统,特别涉及计算资源能力评估方法。
背景技术
云计算是一种基于互联网的计算方式,通过这种方式,用户可以按需获取计算资源、计算能力。云计算平台的基础设施一般由许多计算机节点通过高性能网络互联而成,其将众多节点组织成高性能、高可用、可扩展的单一映像,提供给用户使用。
随着云计算应用的日益广泛,用户的需求也日益增长,云计算平台会对其基础设施进行更新换代及规模扩充,这造成平台中的各个计算机节点的计算资源能力存在先天差异。另外,负载在节点间的分布不同,也导致原本计算能力相同的节点在运行时出现性能差异。
各种因素导致的节点计算资源能力的差异给云计算资源管理及作业调度带来了新的问题:
首先,云计算平台分配资源时,无法精确衡量计算资源(CPU、内存、磁盘带宽、网络带宽等)与负载资源需求的适配性,分配资源少于需求时,共享计算资源的负载间发生竞争,造成性能低下;分配资源多于需求时,计算资源未被充分利用,存在资源浪费。
其次,云计算平台负载均衡时,无法准确获得各节点计算资源情况,负载分布的调整、迁移均缺乏依据,大大降低了负载均衡的有效性。
最后,云计算平台负载容错时,为了避免单个任务拖慢整个作业,需要挑选性能较好的节点启动任务的冗余执行,由于计算资源能力的持续变化的差异性,执行冗余任务的节点的选择也缺乏依据。
因此,如何对计算资源的能力进行量化评估,并在管理、调度、负载均衡、容错时屏蔽计算资源的差异性,成为了云计算平台研究中的重要问题。对计算资源能力进行动态的量化评估可以为资源管理、作业调度、负载均衡、任务容错等方面提供有力支持,从而提高系统的吞吐率。
亚马逊公司的弹性云计算平台EC2使用ECU衡量CPU计算资源的性能,ECU被定义为一颗1.0-1.2GHz 2007年生产的Opteron或者Xeon处理器的计算能力。ECU被用于申请和配置计算资源,但是并不能动态评价运行中计算资源能力。
开源云计算平台YARN中使用虚拟核作为CPU资源的分配单位,但是物理CPU对应的虚拟核数目由管理员指定,因此也不能动态评价运行中计算资源能力。
发明内容
针对上述现有技术存在的缺陷和不足,本发明的目的在于提供一种云计算平台中计算资源能力动态评估方法。
为了实现上述目的,本发明采用了以下技术方案:
本发明依据云计算负载含有多个执行逻辑相同或相似的任务的特性,通过分析执行逻辑相同或相似的任务在不同节点计算资源上执行的信息和节点运行时信息,对节点计算资源的能力进行运行时动态评估,得到节点计算资源能力的动态评估值。
所述计算资源为CPU资源、内存资源或磁盘带宽资源。
对CPU资源能力的动态评估按照CPU型号分别进行,CPU资源能力的评估因素包括CPU空闲时间百分比、IPC、IO等待时间百分比、节点平均负载、cache失效率和上下文切换次数,CPU资源能力的动态评估值与CPU空闲时间百分比、IPC成正比,而与IO等待时间百分比、节点平均负载、cache失效率、上下文切换次数成反比。
CPU资源能力的动态评估值按以下公式计算:
其中,AvailableCapacitycpu为某节点CPU资源能力的动态评估值,idle为空闲CPU时间百分比,load为节点的平均负载,iowait为节点上IO等待时间占CPU时间的百分比,ipc为任务平均每个时钟周期完成的指令数(IPC),miss为任务的cache失效率,switch为任务执行时上下文切换次数,TASK表示所述某节点上执行的任务集合,MST()表示取云计算负载中所有与TASK中第task个任务具有相同或相似执行逻辑的当前执行任务对应评估因素的中位数,size()表示取集合元素个数。
内存资源能力的评估因素包括可用内存空间大小和任务内存缺页频率,内存资源能力的动态评估值与可用内存空间大小成正比,而与任务内存缺页频率成反比。
内存资源能力的动态评估值按以下公式计算:
其中,AvailableCapacitymemory表示某节点内存资源能力的动态评估值,total表示节点总物理内存大小,used表示节点被占用的物理内存大小,cached表示cache缓存占用的内存大小,buffer表示buffer缓存占用的内存大小,pagefault表示任务发生的缺页频率,TASK表示所述某节点上执行的任务集合,MST()表示取云计算负载中所有与TASK中第task个任务具有相同或相似执行逻辑的当前执行任务对应评估因素的中位数,size()表示取集合元素个数。
磁盘带宽资源能力的评估因素包括节点磁盘未使用TPS、磁盘未利用的传输带宽、磁盘的传输请求平均等待时间、请求队列平均长度和传输请求的平均执行时间,磁盘带宽资源能力的动态评估值与节点磁盘未使用TPS、磁盘未利用的传输带宽成正比,而与磁盘的传输请求平均等待时间、请求队列平均长度、传输请求的平均执行时间成反比。
磁盘带宽资源能力的动态评估值按以下公式计算:
其中,AvailableCapacitystorage表示某节点磁盘带宽资源能力的动态评估值,peak表示测出的磁盘传输能力峰值,current表示当前磁盘传输速度,avgqu表示磁盘IO请求的平均队列长度,await表示磁盘IO请求的平均处理时间,svctm表示磁盘IO请求的平均执行时间,peakTPS表示磁盘每秒钟传输次数峰值,currentTPS表示磁盘平均每秒钟的传输次数,MN()表示取所有当前运行任务节点对应评估因素的中位数。
所述评估方法还包括以下步骤:
取得所有当前运行任务节点计算资源能力的动态评估值的中位数,并按以下公式进行处理:
其中,Capacityr,i为节点i上资源r能力的归一化评估值,Cr,i为节点i上资源r能力的动态评估值,M(r)为所有当前运行任务节点资源r能力的动态评估值的中位数,i=1,2,3…,L,L为所有当前运行任务节点数目,资源r为CPU资源、内存资源或磁盘带宽资源。
将需要取中位数的计算资源的评估因素以及计算资源能力的动态评估值作为元素分别构建中位堆,中位堆由一个大顶堆和一个小顶堆组成,大顶堆中堆顶元素大于等于大顶堆中所有元素,而小顶堆中堆顶元素小于等于小顶堆中所有元素,并且满足:
heap_size(min_heap)≤heap_size(max_heap)≤heap_size(min_heap)+1
root(max_heap)≤root(min_heap)
其中,min_heap表示小顶堆,max_heap表示大顶堆,heap_size()表示取大顶堆或小顶堆的元素个数,root()表示取得堆顶元素。
本发明的有益效果体现在:
本发明提出了一种可以对云计算平台中各节点计算资源能力进行量化的动态评估方法,该方法依据云计算负载大多为大规模并行而设计,并且通常含有多个执行逻辑相同或相似任务的特性,通过分析任务在不同计算资源上执行的信息对计算资源的能力进行运行时动态评估。本发明所述方法可以在任务执行过程中实时进行,实施灵活方便且代价小。同时,本发明所述方法评估出的结果可为细粒度、精确地计算资源管理、用户作业调度、平台负载均衡、任务冗余容错,以及异常节点发现等方面提供数值依据,从而提高计算资源利用率,最终提升云计算平台的整体吞吐率。
附图说明
图1为云计算平台中计算资源能力评估方法的流程框图。
图2为中位堆中插入元素的逻辑图。
图3为中位堆的修改元素的逻辑图。
具体实施方式
下面结合附图和实施例对本发明做详细说明。
参见图1,本发明依据云计算中负载大多为大规模并行而设计,通常包含多个执行逻辑相同或相似的任务的特性,通过分析多个执行逻辑相同或相似的任务在不同计算资源上执行的信息以及节点运行时信息对CPU、内存、磁盘带宽、网络带宽等计算资源的能力进行动态评估。该方法能够在云计算平台中对计算资源的能力进行动态量化评估,从而为资源管理、作业调度、冗余容错等模块提供有力的数值依据,进一步的提高资源使用效率。
步骤1:云计算平台向节点分配任务,节点执行任务的同时监控任务及节点的信息,并将收集到的信息汇报给云计算平台。
监控的节点信息包括:节点的平均负载、空闲CPU时间百分比、IO等待时间占CPU时间百分比、当前可用物理内存大小、buffer缓存占用的内存大小、cache缓存占用的内存大小、当前磁盘传输速度、磁盘平均每秒钟的传输次数、IO请求的平均处理时间、IO请求的平均队列长度、IO请求的平均执行时间、当前网络传输速度、磁盘传输能力峰值、测试得出的磁盘每秒钟传输次数峰值等。
监控的任务执行信息包括:CPU资源占用率、等效CPU主频、IPC(平均每个时钟周期完成的指令数)、cache失效率、上下文切换次数、占用内存大小、占用物理内存大小、任务内存使用峰值、内存缺页频率等。
步骤2:云计算平台使用相应的信息对节点CPU资源能力进行动态评估。
在云计算中,负载多为大规模并行而设计,因此一个作业中通常包含多个执行逻辑相同或者相似的任务。据此,通过分析具有相同或者相似执行逻辑的任务在不同计算资源上的运行时信息对计算资源能力进行动态评估。
对于执行逻辑相同或者相似的任务,可认为它们在相同性能的CPU上获得的IPC是相同的。在云计算中,执行逻辑相同或相似的任务被分发到不同节点上执行,对于型号相同的CPU,任务获得的IPC越高,则可认为CPU的计算能力越强。因此CPU资源能力的动态评估值与任务的IPC成正比。CPU的空闲时间百分比代表了CPU的空闲程度,CPU越空闲则其可用的计算能力越多,因此CPU资源能力的动态评估值与CPU空闲时间百分比成正比。节点的平均负载、cache失效率、上下文切换次数等因素均与节点上任务拥挤程度有一定关系,节点上执行中任务越多,则上述值越高,CPU的可用计算能力越低。因此CPU资源能力的动态评估值与节点平均负载、cache失效率、上下文切换次数成反比。
CPU资源能力的动态评估按照型号分别进行,原因在于不同型号的CPU在相同负载下通常有不同的IPC和空闲CPU时间百分比。CPU资源能力动态评估具体公式如下:
其中,AvailableCapacitycpu为CPU资源能力的动态评估值,idle为空闲CPU时间百分比,load为节点的平均负载,iowait为节点上IO等待时间占CPU时间的百分比,ipc为任务平均每个时钟周期完成的指令数,miss为任务的cache失效率,switch为任务执行时上下文切换次数,TASK表示节点上执行的任务集合,MST()表示取云计算负载中所有与TASK中第task个任务具有相同或相似执行逻辑的当前执行任务对应评估因素的中位数,size()表示取集合元素个数。
步骤3:云计算平台使用相应的信息对节点内存资源能力进行动态评估。
执行逻辑相同或相似任务在不同内存资源执行中的内存缺页频率一定程度上代表了节点上内存的拥挤程度,缺页频率越高则节点内存资源越紧缺,因此内存资源能力的动态评估值与任务的缺页频率成反比。可用的内存大小是衡量内存资源能力的另一个方面,内存可用空间越大,内存资源能力越大,因此内存资源能力的动态评估值与可用内存空间大小成正比。
内存资源能力动态评估具体公式如下:
其中,AvailableCapacitymemory表示内存资源能力的动态评估值,total表示总物理内存大小,used表示被占用的物理内存大小,cached表示cache缓存占用的内存大小,buffer表示buffer缓存占用的内存大小,pagefault表示任务发生的缺页频率,TASK表示节点上执行的任务集合,MST()表示取云计算负载中所有与TASK中第task个任务具有相同或相似执行逻辑的当前执行任务对应评估因素的中位数,size()表示取集合元素个数。
步骤4:云计算平台使用相应的信息对节点磁盘带宽资源能力进行动态评估。
任务执行过程中,节点磁盘未使用TPS(每秒钟完成的IO传输次数)以及磁盘未利用的传输带宽均代表了磁盘可用传输能力,因此磁盘带宽资源能力的动态评估值与上述因素成正比。磁盘的传输请求平均等待时间和请求队列平均长度均代表了磁盘使用的拥挤程度,因此磁盘带宽资源能力的动态评估值与上述这两个值成反比。传输请求的平均执行时间代表了磁盘在完成任务传输请求时的性能,请求的平均执行时间越小,磁盘的传输性能越好,因此磁盘带宽资源能力的动态评估值与上述值(传输请求的平均执行时间)成反比。
磁盘带宽资源能力动态评估具体公式如下:
其中,AvailableCapacitystorage表示磁盘带宽资源能力的动态评估值,peak表示测出的磁盘传输能力峰值,current表示当前磁盘传输速度,avgqu表示磁盘IO请求的平均队列长度,await表示磁盘IO请求的平均处理时间(处理时间包括等待时间和执行时间),svctm表示磁盘IO请求的平均执行时间,peakTPS表示磁盘每秒钟传输次数峰值,currentTPS表示磁盘平均每秒钟的传输次数,MN()表示取所有当前运行任务节点对应评估因素的中位数。
步骤5:云计算平台使用相应的信息对节点网络带宽资源能力进行动态评估。
任务执行中,节点网络未利用的带宽代表了网络带宽资源可用能力大小,因此网络带宽资源能力的动态评估值与节点网络未利用的带宽成正比。
网络带宽资源能力动态评估具体公式如下:
AvailableCapacitynetwork=peak-current
其中,AvailableCapacitynetwork表示网络带宽资源能力的动态评估值,peak表示网络实际能达到的带宽峰值,current表示当前的网络传输速度。
步骤6:云计算平台根据各节点计算资源能力动态评估结果对各节点上计算资源能力进行最终评估。
本发明设计了中位堆(Median Heap)结构维护各节点对应项计算资源能力动态评估结果(即动态评估值),从每个中位堆中可以快速、方便的取得对应项计算资源能力动态评估结果的中位数,并使用中位数对对应项计算资源能力评估结果进行处理。
使用中位数进行处理之后,计算资源能力的各项评估结果均分布在1左右,具体公式如下:
其中,Capacityr,i为节点i上资源r能力的最终评估值,Cr,i为节点i上资源r能力的动态评估值,M(r)为所有当前运行任务节点资源r能力的动态评估值的中位值,i=1,2,3…,L,L为所有当前运行任务节点数目。
中位堆由一个大顶堆max_heap和一个小顶堆min_heap组成,中位堆中的元素为某项计算资源能力的动态评估值,一个元素对应一个节点,其满足以下条件:
1.heap_size(min_heap)≤heap_size(max_heap)≤heap_size(min_heap)+1,其中,heap_size()表示取大顶堆或小顶堆的元素个数;
2.root(max_heap)≤root(min_heap),其中root()表示取大顶堆或小顶堆的堆顶元素;
并且,由于大顶堆中堆顶元素大于等于堆中所有元素,而小顶堆中堆顶元素小于等于堆中所有元素,因此有大顶堆中所有元素小于等于小顶堆中最小元素,即大顶堆的堆顶元素值即为中位堆的中位数。
中位堆在插入、修改元素后维护堆性质的时间复杂度是O(logn),而从中位堆取得中位数仅需要O(1),即常数时间复杂度。
中位堆以一定周期选出中位数,周期结束时若堆中元素有改变才重新选出中位数,选出的中位数在周期内不随着中位堆中元素改变而改变,这样有效的避免了节点信息频繁变动带来的计算开销。
由于之前CPU资源能力动态评估、内存资源能力动态评估以及磁盘带宽资源能力动态评估的公式中也存在用中位数对评估因素进行处理的情况(MN()、MST()),所以对相应的评估因素也建立了各自的中位堆。
云计算平台按节点存储各种计算资源的最终评估结果并在运行时定期更新,评估结果可被提供给平台的资源管理、作业调度、负载均衡、任务容错等模块使用。
按上述方法即可实现对云计算平台中节点计算资源能力的动态评估量化,由此完成计算资源能力的评估过程。
应用实例
1)以下结合在开源云计算平台Yarn的具体实例对本发明方法作进一步详细描述,但本发明的实施不限于开源云计算平台Yarn:
步骤1:Application Master向Resource Manager申请资源,Resource Manager根据该作业同种类型任务资源需求情况和节点剩余资源情况向Application Master分配资源。
步骤2:Application Master通知计算资源所在节点的Node Manager启动任务。Node Manager监控节点上执行的任务,并将采集到的信息通过心跳(Heartbeat)汇报给Resource Manager。
Node Manager通过Shell脚本查看、分析Linux Proc文件夹下节点上各种资源的使用信息,另外通过perf和nethogs分别获得网络使用情况和CPU性能计数器信息。
步骤3:Resource Manager收到各个节点Node Manager汇报的动态信息(即包括所述节点信息和任务执行信息)后,将动态信息存储起来,并依据执行逻辑相同的任务在各个节点上的执行信息以及节点信息,对节点上计算资源当前能力进行动态评估。
CPU动态评估按CPU型号不同分组进行,具体公式如下:
其中,idle为空闲CPU时间百分比,load为节点平均负载,iowait为节点上IO等待时间占CPU时间的百分比,ipc为任务平均每个时钟周期完成的指令数,miss为任务的cache失效率,switch为任务执行时上下文切换次数,TASK表示节点上执行的任务集合,size()表示取集合元素个数。
内存资源动态评估公式如下:
其中,total表示总物理内存大小,used表示被占用的物理内存大小,cached和buffer分别表示两种缓存占用的内存大小,pagefault表示任务发生的缺页频率,TASK表示节点上执行的任务集合,size()表示取集合元素个数。
磁盘带宽资源能力动态评估公式如下:
其中,peak表示测出的传输能力峰值,current表示当前磁盘传输速度,avgqu表示磁盘IO请求的平均队列长度,await表示磁盘IO请求的平均处理时间,svctm表示磁盘IO请求的平均执行时间,peakTPS表示测试得出的磁盘每秒钟传输次数峰值,currentTPS表示磁盘平均每秒钟的传输次数。
网络带宽资源能力动态评估公式如下:
AvailableCapacitynetwork=peak-current
其中,peak表示实际能达到的带宽峰值,current表示当前的传输速度。
步骤4:Resource Manager计算最终的动态评估结果。
最终动态评估值计算公式如下:
其中,Capacityr,i为节点i上资源r的最终评估值,Cr,i为节点i上资源r的动态评估值,M(r)为资源r动态评估值的中位值。
2)以下给出一种中位堆的实现方法:
对于已有的m个元素,中位堆中大顶堆max_heap中含有个元素,小顶堆min_heap含有个元素。
在中位堆中插入元素的逻辑参见图2:
如果新插入元素的值小于大顶堆堆顶元素值,则将新元素插入大顶堆中;如果新元素值大于小顶堆堆顶元素值,则将新元素插入小顶堆中。插入完成后,检查两堆内元素个数是否符合中位堆定义,不满足则通过将大顶堆堆顶元素插入小顶堆或将小顶堆堆顶元素插入大顶堆对两堆元素个数进行调整。
如果新元素值介于大顶堆堆顶元素值与小顶堆堆顶元素值之间,则检查大顶堆和小顶堆的元素个数情况,如果两堆元素个数相等,则插入大顶堆中,否则插入小顶堆中。
在中位堆中修改元素值的逻辑参见图3(old为修改前元素值,new为修改后元素值):
首先确定需要修改的元素所在的堆,如果元素修改前值小于等于大顶堆堆顶元素值,则需要修改的元素在大顶堆中,否则需要修改的元素在小顶堆中。对元素进行修改之后,调整元素所在堆使其满足堆的性质,如果大顶堆堆顶元素值大于小顶堆堆顶元素值,则交换两堆堆顶元素并再一次调整两堆元素,使其满足堆的性质。
实际测试结果表明,该方法得出的评估结果可以为资源管理、作业调度,负载均衡、平台容错等方面提供有力依据,并提高云计算平台的资源利用效率,最终提升云计算平台的整体吞吐率。
通过上述实施例可以看出,本发明可以用于云计算平台中对节点计算资源能力的动态评估中。本发明提出的动态评估方法利用了云计算负载的特性,分析执行逻辑相同或相似的任务在不同计算资源上的执行信息,在极低的开销下实现了计算资源能力的运行时评估。
本发明不仅可用于云计算平台中的计算资源能力的评估,基于集群的资源管理平台也可借鉴改进。
Claims (8)
1.一种云计算平台中计算资源能力动态评估方法,其特征在于:该评估方法包括以下步骤:
依据云计算负载含有多个执行逻辑相同的任务的特性,通过分析执行逻辑相同的任务在不同节点计算资源上执行的信息和节点运行时信息,对节点计算资源的能力进行运行时动态评估,得到节点计算资源能力的动态评估值;
所述计算资源为CPU资源、内存资源或磁盘带宽资源;
当所述计算资源为CPU资源时,对CPU资源能力的动态评估按照CPU型号分别进行,CPU资源能力的评估因素包括CPU空闲时间百分比、IPC、IO等待时间百分比、节点平均负载、cache失效率和上下文切换次数,CPU资源能力的动态评估值与CPU空闲时间百分比、IPC成正比,而与IO等待时间百分比、节点平均负载、cache失效率、上下文切换次数成反比。
2.根据权利要求1所述的方法,其特征在于:CPU资源能力的动态评估值按以下公式计算:
其中,AvailableCapacitycpu为某节点CPU资源能力的动态评估值,idle为空闲CPU时间百分比,load为节点的平均负载,iowait为节点上IO等待时间占CPU时间的百分比,ipc为任务平均每个时钟周期完成的指令数,miss为任务的cache失效率,switch为任务执行时上下文切换次数,TASK表示所述某节点上执行的任务集合,MST()表示取云计算负载中所有与TASK中第task个任务具有相同执行逻辑的当前执行任务对应评估因素的中位数,size()表示取集合元素个数。
3.根据权利要求1所述的方法,其特征在于:当所述计算资源为内存资源时,内存资源能力的评估因素包括可用内存空间大小和任务内存缺页频率,内存资源能力的动态评估值与可用内存空间大小成正比,而与任务内存缺页频率成反比。
4.根据权利要求3所述的方法,其特征在于:内存资源能力的动态评估值按以下公式计算:
其中,AvailableCapacitymemory表示某节点内存资源能力的动态评估值,total表示节点总物理内存大小,used表示节点被占用的物理内存大小,cached表示cache缓存占用的内存大小,buffer表示buffer缓存占用的内存大小,pagefault表示任务发生的缺页频率,TASK表示所述某节点上执行的任务集合,MST()表示取云计算负载中所有与TASK中第task个任务具有相同执行逻辑的当前执行任务对应评估因素的中位数,size()表示取集合元素个数。
5.根据权利要求1所述的方法,其特征在于:当所述计算资源为磁盘带宽资源时,磁盘带宽资源能力的评估因素包括节点磁盘未使用TPS、磁盘未利用的传输带宽、磁盘的传输请求平均等待时间、请求队列平均长度和传输请求的平均执行时间,磁盘带宽资源能力的动态评估值与节点磁盘未使用TPS、磁盘未利用的传输带宽成正比,而与磁盘的传输请求平均等待时间、请求队列平均长度、传输请求的平均执行时间成反比。
6.根据权利要求5所述的方法,其特征在于:磁盘带宽资源能力的动态评估值按以下公式计算:
其中,AvailableCapacitystorage表示某节点磁盘带宽资源能力的动态评估值,peak表示测出的磁盘传输能力峰值,current表示当前磁盘传输速度,avgqu表示磁盘IO请求的平均队列长度,await表示磁盘IO请求的平均处理时间,svctm表示磁盘IO请求的平均执行时间,peakTPS表示磁盘每秒钟传输次数峰值,currentTPS表示磁盘平均每秒钟的传输次数,MN()表示取所有当前运行任务节点对应评估因素的中位数。
7.根据权利要求1所述的方法,其特征在于:所述评估方法还包括以下步骤:
取得所有当前运行任务节点计算资源能力的动态评估值的中位数,并按以下公式进行处理:
其中,Capacityr,i为节点i上资源r能力的归一化评估值,Cr,i为节点i上资源r能力的动态评估值,M(r)为所有当前运行任务节点资源r能力的动态评估值的中位数,i=1,2,3…,L,L为所有当前运行任务节点数目,资源r为CPU资源、内存资源或磁盘带宽资源。
8.根据权利要求2、4、6或7所述的方法,其特征在于:将需要取中位数的计算资源的评估因素以及计算资源能力的动态评估值作为元素分别构建中位堆,中位堆由一个大顶堆和一个小顶堆组成,大顶堆中堆顶元素大于等于大顶堆中所有元素,而小顶堆中堆顶元素小于等于小顶堆中所有元素,并且满足:
heap_size(min_heap)≤heap_size(max_heap)≤heap_size(min_heap)+1
root(max_heap)≤root(min_heap)
其中,min_heap表示小顶堆,max_heap表示大顶堆,heap_size()表示取大顶堆或小顶堆的元素个数,root()表示取得堆顶元素。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610027583.6A CN105718364B (zh) | 2016-01-15 | 2016-01-15 | 一种云计算平台中计算资源能力动态评估方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610027583.6A CN105718364B (zh) | 2016-01-15 | 2016-01-15 | 一种云计算平台中计算资源能力动态评估方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105718364A CN105718364A (zh) | 2016-06-29 |
CN105718364B true CN105718364B (zh) | 2018-07-17 |
Family
ID=56147131
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610027583.6A Active CN105718364B (zh) | 2016-01-15 | 2016-01-15 | 一种云计算平台中计算资源能力动态评估方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105718364B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107025138A (zh) * | 2016-12-08 | 2017-08-08 | 阿里巴巴集团控股有限公司 | 一种资源处理方法及装置 |
CN107346281A (zh) * | 2017-07-05 | 2017-11-14 | 中国人民大学 | 一种基于资源解耦的大数据系统性能评估方法 |
CN107562532B (zh) * | 2017-07-13 | 2020-11-27 | 华为技术有限公司 | 一种预测设备集群的硬件资源利用率的方法及装置 |
CN107797863B (zh) * | 2017-09-29 | 2020-07-28 | 西安交通大学 | 一种云计算平台中细粒度资源匹配方法 |
CN109936472A (zh) * | 2017-12-18 | 2019-06-25 | 上海无线通信研究中心 | 面向雾计算的节点计算能力描述方法、交互方法及其设备 |
CN108021453A (zh) * | 2017-12-22 | 2018-05-11 | 联想(北京)有限公司 | 一种计算资源优化方法、装置及服务器集群 |
CN108628682B (zh) * | 2018-04-17 | 2021-09-24 | 西南交通大学 | 一种基于数据持久化的Spark平台成本优化方法 |
CN110795301A (zh) * | 2018-08-01 | 2020-02-14 | 马上消费金融股份有限公司 | 作业监测方法、装置、终端以及计算机存储介质 |
CN109165045A (zh) * | 2018-08-09 | 2019-01-08 | 网宿科技股份有限公司 | 一种调整服务器的硬件配置的方法和装置 |
CN109446020B (zh) * | 2018-09-21 | 2022-05-13 | 曙光云计算集团有限公司 | 云存储系统的动态评估方法以及装置 |
CN109460293B (zh) * | 2018-10-11 | 2022-01-28 | 东南大学 | 无线云计算系统中分布式计算环境下的计算资源选择方法 |
CN111190688B (zh) * | 2019-12-19 | 2022-12-09 | 西安交通大学 | 一种面向云数据中心的Docker迁移方法及系统 |
CN111209102A (zh) * | 2020-01-08 | 2020-05-29 | 湖南映客互娱网络信息有限公司 | 一种分布式任务分发方法与系统 |
EP4436138A1 (en) * | 2021-12-20 | 2024-09-25 | Huawei Technologies Co., Ltd. | Chip management apparatus and related method |
CN117331611A (zh) * | 2022-06-25 | 2024-01-02 | 华为技术有限公司 | 一种程序运行方法及装置 |
CN118312332B (zh) * | 2024-06-11 | 2024-08-13 | 中国电信股份有限公司四川分公司 | 一种基于骨干网负载率的异构算力资源调度系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102708011A (zh) * | 2012-05-11 | 2012-10-03 | 南京邮电大学 | 一种面向云计算平台任务调度的多级负载评估方法 |
CN104239154A (zh) * | 2014-10-09 | 2014-12-24 | 浪潮(北京)电子信息产业有限公司 | 一种Hadoop集群中的作业调度方法和作业调度器 |
CN104317658A (zh) * | 2014-10-17 | 2015-01-28 | 华中科技大学 | 一种基于MapReduce的负载自适应任务调度方法 |
CN104915407A (zh) * | 2015-06-03 | 2015-09-16 | 华中科技大学 | 一种基于Hadoop多作业环境下的资源调度方法 |
-
2016
- 2016-01-15 CN CN201610027583.6A patent/CN105718364B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102708011A (zh) * | 2012-05-11 | 2012-10-03 | 南京邮电大学 | 一种面向云计算平台任务调度的多级负载评估方法 |
CN104239154A (zh) * | 2014-10-09 | 2014-12-24 | 浪潮(北京)电子信息产业有限公司 | 一种Hadoop集群中的作业调度方法和作业调度器 |
CN104317658A (zh) * | 2014-10-17 | 2015-01-28 | 华中科技大学 | 一种基于MapReduce的负载自适应任务调度方法 |
CN104915407A (zh) * | 2015-06-03 | 2015-09-16 | 华中科技大学 | 一种基于Hadoop多作业环境下的资源调度方法 |
Non-Patent Citations (1)
Title |
---|
面向过程感知的云作业资源调度;第7期;《中国优秀硕士学位论文全文数据库 信息科技辑》;20140715;正文第36-39页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105718364A (zh) | 2016-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105718364B (zh) | 一种云计算平台中计算资源能力动态评估方法 | |
Zhong et al. | A cost-efficient container orchestration strategy in kubernetes-based cloud computing infrastructures with heterogeneous resources | |
Peng et al. | Optimus: an efficient dynamic resource scheduler for deep learning clusters | |
US20200287961A1 (en) | Balancing resources in distributed computing environments | |
CN106776005B (zh) | 一种面向容器化应用的资源管理系统及方法 | |
Yeung et al. | Horus: Interference-aware and prediction-based scheduling in deep learning systems | |
CN104283946B (zh) | 一种单物理机下多虚拟机的资源自适应调整系统及方法 | |
CN102780759B (zh) | 基于调度目标空间的云计算资源调度方法 | |
CN107003887A (zh) | Cpu超载设置和云计算工作负荷调度机构 | |
CN108845874B (zh) | 资源的动态分配方法及服务器 | |
CN104954277B (zh) | 一种负载均衡方法、网关服务器及相关系统 | |
CN104902001B (zh) | 基于操作系统虚拟化的Web请求负载均衡方法 | |
CN105373432B (zh) | 一种基于虚拟资源状态预测的云计算资源调度方法 | |
CN106325976B (zh) | 一种渲染任务调度处理方法及服务器 | |
CN105471985A (zh) | 负载均衡方法及云平台计算方法、云平台 | |
CN103064744B (zh) | 一种基于SLA的面向多层Web应用的资源优化方法 | |
CN109918170A (zh) | 一种云数据中心虚拟机动态资源配置方法及系统 | |
Chen et al. | Improving resource utilization via virtual machine placement in data center networks | |
CN110321198B (zh) | 一种容器云平台计算资源与网络资源协同调度方法及系统 | |
Zuo et al. | Dynamically weighted load evaluation method based on self-adaptive threshold in cloud computing | |
JP6191695B2 (ja) | 仮想リソース制御システムおよび仮想リソース制御方法 | |
CN107317836A (zh) | 一种混合云环境下时间可感知的请求调度方法 | |
CN110347489A (zh) | 一种基于Spark的多中心数据协同计算的流处理方法 | |
CN106569892A (zh) | 资源调度方法与设备 | |
CN117032902A (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 |