CN109144706A - 一种cpu资源的动态分配方法、装置及物理机 - Google Patents
一种cpu资源的动态分配方法、装置及物理机 Download PDFInfo
- Publication number
- CN109144706A CN109144706A CN201710452195.7A CN201710452195A CN109144706A CN 109144706 A CN109144706 A CN 109144706A CN 201710452195 A CN201710452195 A CN 201710452195A CN 109144706 A CN109144706 A CN 109144706A
- Authority
- CN
- China
- Prior art keywords
- core
- physical
- exclusively
- shared
- multiple physical
- 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
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000012544 monitoring process Methods 0.000 claims description 7
- 230000000694 effects Effects 0.000 abstract description 8
- 238000005457 optimization Methods 0.000 abstract description 7
- 230000008859 change Effects 0.000 description 10
- 238000013507 mapping Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 3
- 238000013468 resource allocation Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
一种CPU资源的动态分配方法、装置及物理机,所述方法包括:确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;根据所述状态信息,动态调整所述多个物理核或多个虚拟机中共享核的数量和独享核的数量;对所述多个物理核中的共享核,以多个逻辑核共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核或单个虚拟机独享的方式进行分配。本申请还提供了相应的动态分配装置和物理机。本申请方案可以根据物理机的工作状态调整共享核和独享核的数量,在提高物理机CPU资源的整体利用率和避免资源争抢之间取得优化的效果。
Description
技术领域
本发明涉及计算机领域,更具体地,涉及一种CPU资源的动态分配方法、装置及物理机。
背景技术
在目前的云计算环境中,云厂商会通过虚拟化技术实现物理机中CPU资源的独享或共享,但两者不会同时存在。一台物理机(也可称为宿主机)的CPU资源可以用物理核的数量表示。文中,将物理机具有的CPU核称为物理核,将虚拟机使用的CPU核称为逻辑核,为虚拟机分配CPU资源时需建立物理核和逻辑核之间的映射关系。
在独享方案中,一个物理核只能映射到一个逻辑核或一个虚拟机,文中将这种类型的物理核称为独享核。此时物理机CPU资源的虚拟比(即逻辑核的数量与物理核的数量之比)较低,虽然虚拟机之间不会争抢CPU资源,但是物理机CPU资源的整体利用率较低。
在共享方案中,一个物理核可以映射到多个逻辑核或多个虚拟机,文中将这种类型的物理核称为共享核。此时物理机CPU资源的虚拟比较高,CPU资源的整体利用率较高,但虚拟机之间存在争抢CPU资源的情况。
发明内容
有鉴于此,本发明实施例提供了一种CPU资源的动态分配方法,包括:
确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
根据所述状态信息,确定所述多个物理核或多个虚拟机中共享核的数量和独享核的数量;
对所述多个物理核中的共享核,以多个逻辑核共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核或单个虚拟机独享的方式进行分配。
有鉴于此,本发明实施例还提供了一种CPU资源的动态分配装置,包括:
状态监控模块,设置为:确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
数量确定模块,设置为:根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量;
资源分配模块,设置为:对所述多个物理核中的共享核,以多个逻辑核或多个虚拟机共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核或单个虚拟机独享的方式进行分配。
有鉴于此,本发明实施例还提供了一种物理机,包括存储器和处理器,其中:
所述存储器设置为:保存程序代码;
所述处理器设置为:读取所述程序代码以执行以下处理:
确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量;
对所述多个物理核中的共享核,以多个逻辑核或多个虚拟机共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核或单个虚拟机独享的方式进行分配。
有鉴于此,本发明实施例还提供了一种处理器资源的动态分配方法,包括:
确定物理机工作时的状态信息,所述物理机的处理器包括多个物理核;
根据所述状态信息,调整所述多个物理核中共享核的数量和独享核的数量;
对所述多个物理核中的共享核,以多个逻辑核或多个虚拟机共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核或单个虚拟机独享的方式进行分配。
上述方案可以根据物理机的工作状态调整共享核和独享核的数量,在提高物理机CPU资源的整体利用率和避免资源争抢之间取得优化的效果。
附图说明
图1是本发明实施例一CPU资源动态分配方法的流程图;
图2是本发明实施例一物理机的模块图;
图3是本发明实施例二根据负载对共享核和独享核的数量进行调整的流程图;
图4是本发明实施例二共享核和独享核的数量随CPU资源占用率变化的示意图;
图5A和图5B分别是本发明实施例二在一次CPU资源分配前和分配后的物理核共享和独享的示意图;
图6是本发明实施例三CPU资源动态分配方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
实施例一
在云计算环境中,需要将物理机中的CPU资源分配给相应的虚拟机使用。在本实施例中,虚拟机的CPU资源用逻辑核来表示,通过将物理机中的多个物理核以共享或独享的方式映射到逻辑核来间接实现对虚拟机的资源分配,且在不同的工作状态下,共享核的数量和独享核的数量可以自动调节,从而在CPU资源利用率和避免资源争抢之间取得优化的效果。
本实施例提供一种CPU资源的动态分配方法,如图1所示,包括:
步骤110,确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
本实施例中,所述物理机的CPU可以有一个或多个。所述状态信息为物理机的CPU资源占用率,但本发明不局限于此。
本实施例的物理机是云平台中的物理机,但不限于此。
步骤120,根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量;
这里提到的多个物理核是一台物理机中用于映射到逻辑核的所有物理核。物理机中可以有其他用途的物理核。
本实施例中,是根据物理机的CPU资源占用率确定共享核的数量N1和独享核的数量N2(N1+N2等于物理机包括的上述多个物理核的数量N),假定数量为N),具体地,所述物理机的CPU资源占用率越大(也可以说CPU资源占用率越高),则共享核的数量越小而独享核的数量越大。在CPU资源占用率越大的情况下时,虚拟机之间发生资源争抢的可能性越大,此时增大独享核的数量,可以更为有效地避免资源争抢的发生,有利于保障虚拟机的正常工作。
所述物理机的CPU资源占用率越大,则共享核的数量越小而独享核的数量越大。也就等效于,物理机的CPU资源占用率越小,则共享核的数量越大而独享核的数量越小。在CPU资源占用率越小的情况下,发生资源争抢的可能性越小,此时增大共享核的数量可以提高物理机CPU资源的整体利用率。
按照上述方式,根据物理机当前的CPU资源占用率调整共享核和独享核的数量,就可以在资源争抢几率小时通过增加共享核提高资源的整体利用率,在资源争抢几率大时,通过减小共享核以避免频率发生资源争抢,对虚拟机的工作造成严重影响。
在提高物理机CPU资源的整体利用率和避免资源争抢之间取得优化的效果。
本实施例中,根据所述状态信息动态调整所述多个物理核中共享核的数量和独享核的数量后,可以按以下方式之一确定所述多个物理核中的共享核和独享核:
方式一,将所述多个物理核中的N1个物理核指定为共享核,N2个物理核指定为独享核,且使已分配的物理核中类型被改变的物理核的数量最少;
方式二,保持所述多个物理核中已分配的物理核的类型不变,通过对未分配的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;
方式三,保持所述多个物理核中已分配给多个逻辑核或多个虚拟机的物理核的类型不变,通过对未分配以及已分配给一个逻辑核的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;
其中,所述物理核的类型为共享核或独享核,N1表示根据所述状态信息确定的所述共享核的数量,N2表示根据所述状态信息确定的所述独享核的数量,N1,N2为正整数。
其中,方式一在指定所述多个物理核中的共享核和独享核时,优先按照确定的共享核的数量和独享核的数量来指定。
在一个示例中,假定一台物理机中有10个物理核用于映射到逻辑核。假定当前有5个共享核和5个独享核,而此次根据CPU占用率确定共享核的数量N1=4,独享核的数量N2=6,那么不管上次指定的共享核和独享核是否已经分配即已经映射到逻辑核,此次均要指定4个共享核和6个独享核。只是在指定时,尽量不改变已分配的物理核的类型,改变已分配的物理核的类型可能会影响到物理核与逻辑核之间的映射关系,对虚拟机工作造成一些影响。具体地,上次指定的4个共享核不变(此次仍指定为共享核),而将上次指定的1个共享核改为独享核,以满足此次确定的共享核的数量N1=4和独享核的数量N2=6的要求。
其中,方式二在指定所述多个物理核中的共享核和独享核时,优先保持所述多个物理核中已分配的物理核的类型不变,不改变已有的物理核到逻辑核的映射关系。在当前共享核和独享核的数量与此次确定的不同时,只对还没有分配的物理核(之前可能是共享核也可能是独享核)重新指定,可以改变空闲的物理核的类型,以尽量满足根据当前状态信息确定的共享核和独享核的数量。
方式二具体可采用以下算法:
如果当前已映射的共享核的数量N1’<N1,则将已映射的N1’个共享核及N1”个未分配的物理核指定为共享核,N1”=min(M,N1-N1’)(即取M,N1-N1’中的小值),余下的物理核指定为独享核;
如果当前已分配的独享核的数量N2’<N2,则将已分配的N2’个独享核和N2”个未分配的物理核指定为独享核,N2”=min(M,N2-N2’),余下的物理核指定为共享核;
其中,M为所述多个物理核中还未映射到逻辑核的物理核的数量。
在一个示例中,假定一台物理机中有10个物理核用于映射到逻辑核。假定当前有5个共享核和5个独享核,而此次根据CPU占用率确定共享核的数量N1=4,独享核的数量N2=6,此时需要考虑上次指定的共享核和独享核是否已经映射到逻辑核,假定上次指定的至少1个共享核还没有映射到逻辑核,则可以将其中的一个共享核重新指定为独享核以满足要求。如果上次指定的5个共享核均已映射到逻辑核,则M=0,则不再重新指定。在又一示例中,假定当前有5个共享核和5个独享核,其中只有一个共享核空闲,此次根据CPU占用率确定共享核的数量N1=3,独享核的数量N2=7,则将上次指定的该空闲的共享核重新指定为独享核,以使重新指定后共享核和独享核的数量最接近于N1和N2,具体地,重新指定后共享核的数量为4,独享核的数量为6。
方式三是将独享核和只分配给一个逻辑核的共享核也作为可改变类型的物理核,但不能改变已分配给多个逻辑核或多个虚拟机的物理核的类型。根据所述状态信息动态调整所述多个物理核中共享核的数量和独享核的数量后,在算法上可以将独享核和只分配给一个逻辑核也视为方式二中未分配的物理核,按照方式二的算法确定所述多个物理核中的共享核和独享核。因为物理核为独享核和只映射到一个逻辑核的共享核时,即使类型变化,也不需要改变到逻辑核的映射关系。
按照方式二和方式三并不一定有物理核的类型被改变
上述步骤110~120的动态分配处理可以在物理机采用定时触发方式或者事件触发方式或者其他任意的方式来触发。
步骤130,对所述多个物理核中的共享核,以多个逻辑核共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核独享的方式进行分配。
也就是说,一个共享核可以分配给多个逻辑核,一个独享核只能分配给一个逻辑核,具体的分配可以采用相关技术中的方式。
虽然本实施例是以云计算的虚拟机分配为例进行说明,但本发明CPU资源的动态分配方法并不局限于虚拟机的资源分配,也可以用于其他场景。
本实施例还提供了一种CPU资源的动态分配装置,如图2所示,所述动态分配装置包括:
状态监控模块10,设置为:确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
数量确定模块20,设置为:根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量;
资源分配模块30,设置为:对所述多个物理核中的共享核,以多个逻辑核共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核独享的方式进行分配。
本实施例中,
所述状态监控模块确定物理机工作时的状态信息,其中,所述状态信息为物理机的CPU资源占用率。
本实施例中,
所述数量确定模块根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量,包括:所述物理机的CPU资源占用率越大,则共享核的数量越小而独享核的数量越大。
本实施例中,
所述数量确定模块根据所述状态信息动态调整所述多个物理核中共享核的数量和独享核的数量后,还包括:按以下方式确定所述多个物理核中的共享核和独享核:
以共享核到逻辑核的映射关系改变最少为条件,将所述多个物理核中的N1个物理核指定为共享核,N2个物理核指定为独享核;或者
保持所述多个物理核中已分配的物理核的类型不变,通过对未分配的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2,所述物理核的类型为共享核或独享核。
上述各个模块的具体处理可与本实施例方法中相应的处理相同,不再赘述。
上述CPU资源的动态分配装置可以设置在物理机的内部,也可以设置在物理机的外部。
本实施例还提供了一种物理机,包括存储器和处理器,其中:
所述存储器设置为:保存程序代码;
所述处理器设置为:读取所述程序代码以执行以下处理:
确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量;
对所述多个物理核中的共享核,以多个逻辑核共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核独享的方式进行分配。
本实施例中,
所述处理器确定物理机工作时的状态信息,其中,所述状态信息为物理机的CPU资源占用率。
本实施例中,
所述处理器根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量,包括:所述物理机的CPU资源占用率越大,则共享核的数量越小而独享核的数量越大。
本实施例中,
所述处理器根据所述状态信息动态调整所述多个物理核中共享核的数量和独享核的数量后,还按以下方式确定所述多个物理核中的共享核和独享核:
以共享核到逻辑核的映射关系改变最少为条件,将所述多个物理核中的N1个物理核指定为共享核,N2个物理核指定为独享核;或者
保持所述多个物理核中已分配的物理核的类型不变,通过对未分配的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2,所述物理核的类型为共享核或独享核。
上述处理器执行的处理可与本实施例方法相同,这里不再一一赘述。
本实施例方案可以根据物理机的工作状态调整共享核和独享核的数量,在提高物理机CPU资源的整体利用率和避免资源争抢之间取得更好的平衡,达到优化的效果。
实施例一是对CPU资源进行动态分配,在另一实施例中,是对处理器资源进行动态分配,该处理器资源不仅可以包括CPU资源,还可以包括物理机中的其他处理器资源,例如协处理器资源,该协处理器资源如可以是图形处理器(GPU:Graphics Processing Unit)的物理核。对处理器资源进行动态分配时,可以是对协处理器资源进行动态分配,或者对CPU资源进行动态分配,或者对协处理器资源和CPU资源进行动态分配,等等。具体分配方式与实施例一相同,这里不再赘述。
实施例二
本实施例是实施例一的一个具体应用示例,主要说明如何根据负载变化来调整共享核和独享核的数量的方法,如图3所示,一次调整过程包括以下步骤:
步骤210,宿主机对负载进行监控,确定当前负载,其中,所述负载在此是指CPU资源占用率;
步骤220,根据当前负载,计算共享核和独享核的数量;
如果负载没有变化,可以不再执行以下的流程。默认为不需要改变共享核和独享核的数量。
本步骤中,可以根据图4所示的曲线来计算,图中的横座标表示核数,竖坐标表示CPU资源占用率。如图所示,曲线一表示独享核的数量随负载变化的情况,当负载为100%时对应的独享核的数量为10,当负载为10%时对应的独享核的数量为1,负载在100%和10%之间时,负载越大对应的独享核的数量也越大。曲线2表示共享核的数量随负载变化的情况,当负载为100%时对应的共享核的数量为1,当负载为10%时对应的共享核的数量为10,负载在100%和10%之间时,负载越大则对应的共享核的数量越小。其实现的效果是:当物理机的负载逐步跑高时,则将共享核数量与独享核数量的比值调小;当物理机负载逐步降低时,则将共享核数量与独享核数量的比值调大。
除了使用曲线外,还可以预先定义多个负载取值区间,并建立每一个负载取值区间与共享核数量、独享核数量的对应关系。如果确定当前负载所在的区间发生变化,查找对应关系即可确定共享核和独享核的数量。这里的具体算法很多,本发明不局限于任何一种特定的算法。
需要说明的是,实施例一中所说的:物理机的CPU资源占用率越大,则共享核的数量越小而独享核的数量越大。并不表示只要负载发生变化就一定要改变共享核的数量和独享核的数量,因为物理核的数量是整数,具体可以采用四舍五入或区间等方式来计算,但在负载的整个取值区间上,存在着负载越大,则共享核的数量越小而独享核的数量越大的现象。
步骤230,判断计算的共享核和独享核的数量与当前数量相比是否有变化,如果是,执行步骤240,如果否,结束此次处理;
例如,如果计算的共享核的数量为5而当前共享核的数量不等于5即有变化,如果当前共享核的数量也等于5,则没有变化。
步骤240,根据计算的共享核和独享核的数量,对宿主机中物理核的类型进行指定;
此处具体的指定方式在实施例一中已经详细说明,不再重复。
步骤250,根据当前负载的变化对共享核的使用价格进行调整,所述负载越大,共享核的使用价格越高,结束。
独享核可以出售给需要稳定计算,对价格不敏感的用户;而共享核可以出售给对计算性能的稳定不严格要求,需要低价计算的用户,共享核的使用价格可以根据物理机整体负载(这里指CPU资源占用率)进行动态调整,当整体负载低时,将价格调低吸引更多用户使用,当整体负载高时将价格调高。从而提高物理机资源的整体利用率,更高效地发挥云计算的价值。
结束此次处理之后,可以间隔预定时间后再次运行上述调整的流程。
在图5A和图5B中示出了一台物理机中共享核的数量和独享核的数量变化的情况,图中实线绘制的是物理核,虚拟绘制的是逻辑核。物理机中共有4个物理核。在本次分配之前,如图5A所示,这4个物理核中有2个是独享核,已分配给1个逻辑核(或者说已映射到1个逻辑核),有2个是共享核,已分配给2个逻辑核(或者说映射到到2个逻辑核)为示例,在实际工作时,指定为共享核的物理核可能还没有映射到逻辑核,也可能已映射到一个逻辑核,也可能已经映射到多个逻辑核。假定此次检测到CPU资源占用率下降,通过本实施例的分配方法,增加共享核的数量为3个,而独享核的数量降为1个,调整后共享和独享的情况如图5B所示。
实施例三
本实施例也涉及云计算环境,需要将物理机中的CPU资源分配给相应的虚拟机使用。与实施例一不同的是,本实施例直接将物理核分配给虚拟机,不采用逻辑核映射的方式。且在不同的工作状态下,共享核的数量和独享核的数量也可以自动调节,以在CPU资源利用率和避免资源争抢之间取得优化的效果。
本实施例提供一种CPU资源的动态分配方法,如图6所示,包括:
步骤310,确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
本实施例中,所述状态信息为物理机的CPU资源占用率,但本发明不局限于此。
本实施例的物理机是云平台中的物理机,但不限于此。
步骤320,根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量;
这里提到的多个物理核是一台物理机中用于分配给虚拟机的所有物理核。物理机中可以有其他用途的物理核。
本实施例中,根据物理机的CPU资源占用率确定共享核的数量和独享核的数量,所述物理机的CPU资源占用率越大,共享核的数量越小而独享核的数量越大。在CPU资源占用率越大的情况下时,虚拟机之间发生资源争抢的可能性越大,此时增大独享核的数量,可以更为有效地避免资源争抢的发生,有利于保障虚拟机的正常工作。物理机的CPU资源占用率越小,则共享核的数量越大而独享核的数量越小。在CPU资源占用率越小的情况下,发生资源争抢的可能性越小,此时增大共享核的数量可以提高物理机CPU资源的整体利用率。通过上述方式,在提高物理机CPU资源的整体利用率和避免资源争抢之间取得优化的效果。
本实施例中,根据所述状态信息动态调整所述多个物理核中共享核的数量和独享核的数量后,确定所述多个物理核中的共享核和独享核的方式与实施例一基本相同,只是本实施例是将物理核分配给虚拟机而不是逻辑核,不再重复说明。
步骤330,对所述多个物理核中的共享核,以多个虚拟机共享的方式进行分配;对所述多个物理核中的独享核,以单个虚拟机独享的方式进行分配。
虽然本实施例是以云计算的虚拟机分配为例进行说明,但本发明CPU资源的动态分配方法并不局限于虚拟机的资源分配,也可以用于其他场景。
本实施例中,可以根据所述物理机的CPU资源占用率对分配给多个虚拟机的共享核的使用价格进行调整,所述物理机的CPU资源占用率越大,共享核的使用价格越高。
本实施例还提供了一种CPU资源的动态分配装置,可参见图2,所述动态分配装置包括:
状态监控模块,设置为:确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
数量确定模块,设置为:根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量;
资源分配模块,设置为:对所述多个物理核中的共享核,以多个虚拟机共享的方式进行分配;对所述多个物理核中的独享核,以单个虚拟机独享的方式进行分配。
本实施例中,
所述状态监控模块确定物理机工作时的状态信息,其中,所述状态信息为物理机的CPU资源占用率;
本实施例中,
所述数量确定模块根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量,包括:所述物理机的CPU资源占用率越大,则共享核的数量越小而独享核的数量越大。
本实施例中,
所述数量确定模块根据所述状态信息动态调整所述多个物理核中共享核的数量和独享核的数量后,还包括:按以下方式确定所述多个物理核中的共享核和独享核:
将所述多个物理核中的N1个物理核指定为共享核,N2个物理核指定为独享核,且使已分配的物理核中类型被改变的物理核的数量最少;或者
保持所述多个物理核中已分配的物理核的类型不变,通过对未分配的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;或者
保持所述多个物理核中已分配给多个逻辑核或多个虚拟机的物理核的类型不变,通过对未分配以及已分配给一个逻辑核或一个虚拟机的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;
其中,所述物理核的类型为共享核或独享核,N1表示根据所述状态信息确定的所述共享核的数量,N2表示根据所述状态信息确定的所述独享核的数量,N1,N2为正整数。
本实施例还提供了一种物理机,包括存储器和处理器,其中:
所述存储器设置为:保存程序代码;
所述处理器设置为:读取所述程序代码以执行以下处理:
确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量;
对所述多个物理核中的共享核,以多个逻辑核或多个虚拟机共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核或单个虚拟机独享的方式进行分配。
本实施例中,
所述处理器确定物理机工作时的状态信息,其中,所述状态信息为物理机的CPU资源占用率;
所述处理器根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量,包括:所述物理机的CPU资源占用率越大,则共享核的数量越小而独享核的数量越大。
本实施例中,
所述处理器根据所述状态信息动态调整所述多个物理核中共享核的数量和独享核的数量后,还按以下方式确定所述多个物理核中的共享核和独享核:
将所述多个物理核中的N1个物理核指定为共享核,N2个物理核指定为独享核,且使已分配的物理核中类型被改变的物理核的数量最少;或者
保持所述多个物理核中已分配的物理核的类型不变,通过对未分配的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;或者
保持所述多个物理核中已分配给多个逻辑核或多个虚拟机的物理核的类型不变,通过对未分配以及已分配给一个逻辑核或一个虚拟机的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;
其中,所述物理核的类型为共享核或独享核,N1表示根据所述状态信息确定的所述共享核的数量,N2表示根据所述状态信息确定的所述独享核的数量,N1,N2为正整数。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (13)
1.一种CPU资源的动态分配方法,包括:
确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量;
对所述多个物理核中的共享核,以多个逻辑核或多个虚拟机共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核或单个虚拟机独享的方式进行分配。
2.如权利要求1所述的方法,其特征在于:
所述状态信息为物理机的CPU资源占用率。
3.如权利要求2所述的方法,其特征在于:
根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量,包括:所述物理机的CPU资源占用率越大,则共享核的数量越小而独享核的数量越大。
4.如权利要求1或2或3所述的方法,其特征在于:
根据所述状态信息动态调整所述多个物理核中共享核的数量和独享核的数量后,还包括:按以下方式确定所述多个物理核中的共享核和独享核:
将所述多个物理核中的N1个物理核指定为共享核,N2个物理核指定为独享核,且使已分配的物理核中类型被改变的物理核的数量最少;或者
保持所述多个物理核中已分配的物理核的类型不变,通过对未分配的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;或者
保持所述多个物理核中已分配给多个逻辑核或多个虚拟机的物理核的类型不变,通过对未分配以及已分配给一个逻辑核或一个虚拟机的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;
其中,所述物理核的类型为共享核或独享核,N1表示根据所述状态信息确定的所述共享核的数量,N2表示根据所述状态信息确定的所述独享核的数量,N1,N2为正整数。
5.如权利要求2所述的方法,其特征在于:
所述方法还包括:根据所述物理机的CPU资源占用率对分配给多个虚拟机的共享核的使用价格进行调整,所述物理机的CPU资源占用率越大,共享核的使用价格越高。
6.一种CPU资源的动态分配装置,其特征在于,所述动态分配装置包括:
状态监控模块,设置为:确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
数量确定模块,设置为:根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量;
资源分配模块,设置为:对所述多个物理核中的共享核,以多个逻辑核或多个虚拟机共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核或单个虚拟机独享的方式进行分配。
7.如权利要求6所述的动态分配装置,其特征在于:
所述状态监控模块确定物理机工作时的状态信息,其中,所述状态信息为物理机的CPU资源占用率。
8.如权利要求7所述的动态分配装置,其特征在于:
所述数量确定模块根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量,包括:所述物理机的CPU资源占用率越大,则共享核的数量越小而独享核的数量越大。
9.如权利要求6或7或8所述的动态分配装置,其特征在于:
所述数量确定模块根据所述状态信息动态调整所述多个物理核中共享核的数量和独享核的数量后,还包括:按以下方式确定所述多个物理核中的共享核和独享核:
将所述多个物理核中的N1个物理核指定为共享核,N2个物理核指定为独享核,且使已分配的物理核中类型被改变的物理核的数量最少;或者
保持所述多个物理核中已分配的物理核的类型不变,通过对未分配的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;或者
保持所述多个物理核中已分配给多个逻辑核或多个虚拟机的物理核的类型不变,通过对未分配以及已分配给一个逻辑核或一个虚拟机的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;
其中,所述物理核的类型为共享核或独享核,N1表示根据所述状态信息确定的所述共享核的数量,N2表示根据所述状态信息确定的所述独享核的数量,N1,N2为正整数。
10.一种物理机,包括存储器和处理器,其特征在于:
所述存储器设置为:保存程序代码;
所述处理器设置为:读取所述程序代码以执行以下处理:
确定物理机工作时的状态信息,所述物理机的CPU包括多个物理核;
根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量;
对所述多个物理核中的共享核,以多个逻辑核或多个虚拟机共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核或单个虚拟机独享的方式进行分配。
11.如权利要求10所述的物理机,其特征在于:
所述处理器确定物理机工作时的状态信息,其中,所述状态信息为物理机的CPU资源占用率;
所述处理器根据所述状态信息,动态调整所述多个物理核中共享核的数量和独享核的数量,包括:所述物理机的CPU资源占用率越大,则共享核的数量越小而独享核的数量越大。
12.如权利要求10或11所述的物理机,其特征在于:
所述处理器根据所述状态信息动态调整所述多个物理核中共享核的数量和独享核的数量后,还按以下方式确定所述多个物理核中的共享核和独享核:
将所述多个物理核中的N1个物理核指定为共享核,N2个物理核指定为独享核,且使已分配的物理核中类型被改变的物理核的数量最少;或者
保持所述多个物理核中已分配的物理核的类型不变,通过对未分配的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;或者
保持所述多个物理核中已分配给多个逻辑核或多个虚拟机的物理核的类型不变,通过对未分配以及已分配给一个逻辑核或一个虚拟机的物理核的类型进行重新指定,使重新指定后所述多个物理核中的共享核和独享核的数量最接近于N1和N2;
其中,所述物理核的类型为共享核或独享核,N1表示根据所述状态信息确定的所述共享核的数量,N2表示根据所述状态信息确定的所述独享核的数量,N1,N2为正整数。
13.一种处理器资源的动态分配方法,包括:
确定物理机工作时的状态信息,所述物理机的处理器包括多个物理核;
根据所述状态信息,调整所述多个物理核中共享核的数量和独享核的数量;
对所述多个物理核中的共享核,以多个逻辑核或多个虚拟机共享的方式进行分配;对所述多个物理核中的独享核,以单个逻辑核或单个虚拟机独享的方式进行分配。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710452195.7A CN109144706A (zh) | 2017-06-15 | 2017-06-15 | 一种cpu资源的动态分配方法、装置及物理机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710452195.7A CN109144706A (zh) | 2017-06-15 | 2017-06-15 | 一种cpu资源的动态分配方法、装置及物理机 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109144706A true CN109144706A (zh) | 2019-01-04 |
Family
ID=64829915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710452195.7A Pending CN109144706A (zh) | 2017-06-15 | 2017-06-15 | 一种cpu资源的动态分配方法、装置及物理机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109144706A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111104219A (zh) * | 2019-11-30 | 2020-05-05 | 北京浪潮数据技术有限公司 | 虚拟核心与物理核心的绑定方法、装置、设备及存储介质 |
CN111538564A (zh) * | 2020-04-21 | 2020-08-14 | 中国铁塔股份有限公司 | 一种无线设备的共享方法及装置 |
CN111597034A (zh) * | 2019-02-21 | 2020-08-28 | 阿里巴巴集团控股有限公司 | 处理器资源调度方法、装置、终端设备及计算机存储介质 |
CN113391928A (zh) * | 2021-08-17 | 2021-09-14 | 上海燧原科技有限公司 | 硬件的资源分配方法、装置、电子设备及存储介质 |
WO2023273238A1 (zh) * | 2021-06-29 | 2023-01-05 | 天翼云科技有限公司 | 图形处理资源调配方法、装置、设备及存储介质 |
WO2023221844A1 (zh) * | 2022-05-16 | 2023-11-23 | 阿里巴巴(中国)有限公司 | 资源调度方法、设备及存储介质 |
US12001866B2 (en) | 2019-07-01 | 2024-06-04 | Microsoft Technology Licensing, Llc | Harvest virtual machine for utilizing cloud-computing resources |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106112A (zh) * | 2013-02-05 | 2013-05-15 | 浪潮(北京)电子信息产业有限公司 | 一种基于最高负载的进行负载均衡调度的方法及设备 |
CN103180830A (zh) * | 2012-08-31 | 2013-06-26 | 华为技术有限公司 | 中央处理器资源分配方法和计算节点 |
CN103729229A (zh) * | 2011-12-31 | 2014-04-16 | 华茂云天科技(北京)有限公司 | 弹性计算服务*** |
CN104348887A (zh) * | 2013-08-09 | 2015-02-11 | 中国电信股份有限公司 | 云管理平台中的资源分配方法与装置 |
CN106126319A (zh) * | 2012-08-31 | 2016-11-16 | 华为技术有限公司 | 中央处理器资源分配方法和计算节点 |
JP2017010473A (ja) * | 2015-06-26 | 2017-01-12 | 株式会社野村総合研究所 | ジョブ実行制御システム及び方法 |
CN106775925A (zh) * | 2016-11-11 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种虚拟机cpu的限额处理方法和装置 |
-
2017
- 2017-06-15 CN CN201710452195.7A patent/CN109144706A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103729229A (zh) * | 2011-12-31 | 2014-04-16 | 华茂云天科技(北京)有限公司 | 弹性计算服务*** |
CN103180830A (zh) * | 2012-08-31 | 2013-06-26 | 华为技术有限公司 | 中央处理器资源分配方法和计算节点 |
CN106126319A (zh) * | 2012-08-31 | 2016-11-16 | 华为技术有限公司 | 中央处理器资源分配方法和计算节点 |
CN103106112A (zh) * | 2013-02-05 | 2013-05-15 | 浪潮(北京)电子信息产业有限公司 | 一种基于最高负载的进行负载均衡调度的方法及设备 |
CN104348887A (zh) * | 2013-08-09 | 2015-02-11 | 中国电信股份有限公司 | 云管理平台中的资源分配方法与装置 |
JP2017010473A (ja) * | 2015-06-26 | 2017-01-12 | 株式会社野村総合研究所 | ジョブ実行制御システム及び方法 |
CN106775925A (zh) * | 2016-11-11 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种虚拟机cpu的限额处理方法和装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111597034A (zh) * | 2019-02-21 | 2020-08-28 | 阿里巴巴集团控股有限公司 | 处理器资源调度方法、装置、终端设备及计算机存储介质 |
CN111597034B (zh) * | 2019-02-21 | 2023-04-28 | 阿里巴巴集团控股有限公司 | 处理器资源调度方法、装置、终端设备及计算机存储介质 |
US12001866B2 (en) | 2019-07-01 | 2024-06-04 | Microsoft Technology Licensing, Llc | Harvest virtual machine for utilizing cloud-computing resources |
CN111104219A (zh) * | 2019-11-30 | 2020-05-05 | 北京浪潮数据技术有限公司 | 虚拟核心与物理核心的绑定方法、装置、设备及存储介质 |
CN111538564A (zh) * | 2020-04-21 | 2020-08-14 | 中国铁塔股份有限公司 | 一种无线设备的共享方法及装置 |
CN111538564B (zh) * | 2020-04-21 | 2023-10-27 | 中国铁塔股份有限公司 | 一种无线设备的共享方法及装置 |
WO2023273238A1 (zh) * | 2021-06-29 | 2023-01-05 | 天翼云科技有限公司 | 图形处理资源调配方法、装置、设备及存储介质 |
CN113391928A (zh) * | 2021-08-17 | 2021-09-14 | 上海燧原科技有限公司 | 硬件的资源分配方法、装置、电子设备及存储介质 |
WO2023221844A1 (zh) * | 2022-05-16 | 2023-11-23 | 阿里巴巴(中国)有限公司 | 资源调度方法、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109144706A (zh) | 一种cpu资源的动态分配方法、装置及物理机 | |
US11966792B2 (en) | Resource processing method of cloud platform, related device, and storage medium | |
CN103502944B (zh) | 虚拟机内存调整方法和设备 | |
CN109873868A (zh) | 一种计算能力共享方法、***及相关设备 | |
US8949848B2 (en) | Reducing usage of resource utilized by a virtual machine whose resource utilization is adversely affecting neighboring virtual machines | |
US7730185B2 (en) | Method, apparatus and computer program product for sharing resources | |
EP3289456A1 (en) | Balancing resources in distributed computing environments | |
WO2014035838A1 (en) | Client placement in a computer network system using dynamic weight assignments on resource utilization metrics | |
CN106445629A (zh) | 一种负载均衡的方法及其装置 | |
CN108170517A (zh) | 一种容器分配方法、装置、服务器及介质 | |
KR20150009662A (ko) | 가상 데스크톱 서비스 제공 방법 및 장치 | |
WO2022108631A1 (en) | Coordinated container scheduling for improved resource allocation in virtual computing environment | |
US20120233313A1 (en) | Shared scaling server system | |
CN112269641A (zh) | 一种调度方法、装置、电子设备及存储介质 | |
CN111666158A (zh) | 一种基于Kubernetes的容器调度方法、装置、存储介质及电子设备 | |
CN105893155B (zh) | 虚拟机负载均衡控制方法与装置 | |
CN106445636A (zh) | 一种paas平台下的动态资源调度算法 | |
CN107920129A (zh) | 一种数据存储的方法、装置、设备以及云存储*** | |
CN108279967A (zh) | 一种虚拟机与容器混合调度方法 | |
CN114996003A (zh) | 一种云服务部署方法、装置、电子设备及存储介质 | |
CN114116173A (zh) | 动态调整任务分配的方法、装置和*** | |
US9563532B1 (en) | Allocation of tasks in large scale computing systems | |
CN103106112A (zh) | 一种基于最高负载的进行负载均衡调度的方法及设备 | |
CN110908783A (zh) | 一种云数据中心虚拟机的管控方法、***及设备 | |
CN108196936A (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: 20190104 |
|
RJ01 | Rejection of invention patent application after publication |