CN104636187B - 基于负载预测的numa架构中虚拟机调度方法 - Google Patents

基于负载预测的numa架构中虚拟机调度方法 Download PDF

Info

Publication number
CN104636187B
CN104636187B CN201510081101.0A CN201510081101A CN104636187B CN 104636187 B CN104636187 B CN 104636187B CN 201510081101 A CN201510081101 A CN 201510081101A CN 104636187 B CN104636187 B CN 104636187B
Authority
CN
China
Prior art keywords
mrow
msub
load
virtual machine
node
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
Application number
CN201510081101.0A
Other languages
English (en)
Other versions
CN104636187A (zh
Inventor
陈建海
左起同
王备
何钦铭
杨策
黄步添
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN201510081101.0A priority Critical patent/CN104636187B/zh
Publication of CN104636187A publication Critical patent/CN104636187A/zh
Application granted granted Critical
Publication of CN104636187B publication Critical patent/CN104636187B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于负载预测的NUMA架构中虚拟机调度方法,首先针对每个虚拟机,按照预设的时间间隔定时获取NUMA架构中各个物理节点的状态信息,根据计算负载方差,当负载方差大于方差阈值时,根据历史状态信息确定调度方案,并按照调度方案进行虚拟机调度。本发明的虚拟机调度方法提升了NUMA体系结构下VNUMA虚拟机的运行性能,能够防止NUMA体系结构下VNUMA虚拟机调度程序反复调度同一台虚拟机造成的调度“颠簸”现象;(使得调度后的系统负载均衡度小于调度前的负载均衡度,经过多次调度后能够使得系统接近理论上负载最均衡的状态。

Description

基于负载预测的NUMA架构中虚拟机调度方法
技术领域
本发明涉及网络技术领域,具体涉及一种基于负载预测的NUMA架构中虚拟机调度方法。
背景技术
随着计算机硬件的不断发展,服务器愈加倾向于承载多种相互独立的业务。虚拟化技术便很好的适应了这种需求:其对计算机硬件资源进行合理分配给多个操作系统,使得这些操作系统能够并发地运行在物理计算机之上。且操作系统间保持着相互的独立,很好地解决了此类问题。现在,虚拟化技术已被广泛运用于互联网服务,云计算等一些领域。
在虚拟化技术的诞生之初,计算机多采用SMP结构(Symmetric Multi-Processing,对称多处理结构),即内存空间为所有的CPU所共享,每一个CPU都可以对内存的任意一个地址进行访问,因此,虚拟化系统大多将虚拟机默认为SMP结构。然而,随着计算机CPU物理核个数的增加,现有的SMP结构会带来效率问题:当多个CPU同时访问内存是会造成总线的竞争,从而导致系统整体性能的下降。于是NUMA结构(Non Uniform MemoryAccess Architecture,非统一内存访问)的计算机被引入:其将若干个CPU与一块内存划分为一个节点,每个CPU访问本节点的私有内存时性能较高,访问其他节点的内存时性能较低。通过操作系统对应用程序的合理调配,其能够最大程度地减少访存的竞争,同时访存时间又不会有太大的影响。
虚拟化技术亦适应了NUMA体系结构的发展,虚拟机监视器创建支持NUMA体系结构的虚拟机。虚拟机监视器为虚拟机的VCPU和内存划分为若干个虚拟节点,并在创建虚拟机之初通过初始化虚拟机的APIC表中的SRAT表和SLIT表使得虚拟机操作系统能够感知虚拟机的虚拟化NUMA拓扑结构。此后,虚拟机监视器在分配VCPU和内存时使得每一个虚拟节点的VCPU和内存分配到同一个物理节点上,这样便解决了运行在虚拟机之上的操作系统因为不了解底层NUMA结构而造成的性能下降问题。
然而,虚拟节点和物理节点的对应关系在虚拟机的运行过程中需要根据节点的负载进行动态调整。现有的负载均衡方式往往是在负载最高的节点上根据CPU使用率和内存使用率选取一个合适的虚拟机迁移到负载较低的目标节点中去。然而,在负载高的节点上所采集到的CPU使用率并不等同于其迁移到目标节点之后给目标节点所增加的CPU使用率开销。于是,基于传统的方法进行迁移,往往会造成迁移之后系统的负载的均衡度不能做到最优。
发明内容
针对现有技术的不足,本发明提出一种基于负载预测的NUMA架构中虚拟机调度方法。
针对每个虚拟机,按照预设的时间间隔定时获取NUMA架构中各个物理节点的状态信息,所述的状态信息包括相应物理节点的CPU、内存使用率,运行于其上的VCPU总数以及运行于其上的当前虚拟机的VCPU数,每次获得状态信息后执行如下操作:
(1)根据状态信息计算各个物理节点的负载;
(2)根据各个物理节点的负载计算NUMA架构的初始负载方差,并判断初始负载方差是否大于预设的方差阈值;
若初始负载方差小于或等于预设的方差阈值则进行虚拟机调度,则不操作(即休眠一个时间间隔);
否则,确定负载最高的物理节点并作为源节点,并通过负载预测确定是否存在调度方案,所述的调度方案包括待迁移虚拟机和目标节点:
若存在调度方案,则按照所述的调度方案将待迁移虚拟机从所述源节点迁移至目标节点上;
否则,不操作。
本发明的虚拟机调度方法中进行次调度仅调度一个虚拟机,一次调度结束后,负载可能仍然均衡,此时可能需要经过多次调度才能达到负载均衡。且由于整个过程中,各个物理节点的使用状态也会改变,因此通过按照预设的时间间隔进行周期性调度,能够实时对系统负载进行调度。
本发明迁移时将待迁移虚拟机的内存和虚拟CPU同时从源节点迁移至目标节点上,不会破坏系统的原有架构。
执行步骤(1)和(2)的时间开销通常必须小于设定的时间间隔。本发明中所述的时间间隔为1~5s,作为优选,所述的时间间隔为1s。
本发明中计算各个物理节点的负载时同时考虑到CPU负载和内存负载,相应的,所述步骤(1)利用如下公式根据状态信息计算各个物理节点的负载:
Load_degreenode=wcpu*cpu_usagenode+wmem*mem_usagenode
其中,Load_degreenode为物理节点负载量,wcpu和wmem为CPU负载权重系数和内存负载权重系数,cpu_usagenode为该物理节点的CPU使用率,mem_usagenode为该物理节点的内存使用率。
其中,CPU负载权重系数wcpu和内存负载权重系数wmem满足条件:wcpu+wmem=1。考虑到实际应用时,CPU负载和内存负载对NUMA架构中各个物理节点负载的影响,作为优选,本发明中wcpu=wmem=0.5。
设定的方差阈值的大小直接关系到最终进行虚拟机调度的频率,该方差阈值可根据实际应用情况进行调整。本发明所述的方差阈值为0.25~1。
通过负载预测确定是否存在调度方案时包括如下步骤:
(2-1)以NUMA架构中除源节点外,负载小于预设的负载阈值的其他物理节点作为候选节点;
本发明中预设的负载阈值为0.75~1。
(2-2)针对源节点上的每个虚拟机,分别预测将该虚拟机迁移至每个候选节点上后NUMA架构的负载方差;
将当前虚拟机迁移至任意一个候选节点上后NUMA架构的负载方差通过如下方法预测:
(2-21)根据源节点和当前候选节点的状态信息分别预测当前虚拟机迁移至候选节点后源节点和当前候选节点的负载;
根据如下方法预测当前虚拟机迁移至当前候选节点后源节点的负载:
(a1)预测迁移后源节点的CPU使用率Csp
Csp=Cs-CVM
其中,Cs为迁移前源节点的CPU使用率,CVM为当前虚拟机在源节点上的CPU使用率;
(a2)预测迁移后源节点的内存使用率Usp
其中,PMd为源节点总内存大小,PMu为源节点在调度前已使用的内存大小(可根据检测到的内存使用率和内存量大小计算得到,也可直接采集),VMs为虚拟机在源节点上的内存大小;
(a3)根据预测的迁移后源节点的CPU使用率和内存使用率计算迁移后源节点的负载。
根据如下方法预测当前虚拟机迁移至当前候选节点后当前候选节点的负载:
(b1)根据最近若干次获取的源节点的状态信息,采用岭回归法预测源节点上当前虚拟机的正相关系数kvm和bvm,其中正相关系数kvm和bvm满足如下公式:
其中,usagevm为当前虚拟机在源节点上的CPU使用率,usagetotal为源节点的CPU总使用率,vcpuvm为当前虚拟机运行在源节点上的VCPU数,vcputotal为源节点上运行的所有虚拟机的VCPU总数;
本发明中根据最近5~15次获取的源节点的状态信息预测当前虚拟机的正相关系数kvm和bvm,优选为最近10次。其中,该公式中的vcpuvm和vcputotal从同一次获取的源节点的状态信息中得到,利用不同次获取的源节点的状态信息,根据以上公式从而预测得到源节点上当前虚拟机的正相关系数kvm和bvm
(b2)利用所述的正相关系数kvm和bvm,计算当前虚拟机在当前候选节点上的CPU使用率usagedst_vm
其中,usagedst_total为迁移前当前候选节点的CPU总使用率,vcpudst_total为当前候选节点上所有虚拟机的VCPU总数,vcpusrc_vm为当前虚拟机运行在源节点上的VCPU数;
(b3)预测当前候选节点的内存使用率Udp
其中,Pmd为候选节点总内存大小,Pmu为候选节点在调度前已使用的内存大小,VMs为虚拟机在源节点上的内存大小。
(b4)根据预测的内存使用率和CPU使用率计算迁移后当前候选节点的负载。
(2-22)根据预测得到的当前虚拟机迁移至候选节点后源节点和当前候选节点的负载以及其余候选节点的负载计算NUMA架构的负载方差。
(2-3)若所有候选节点对应的负载方差均大于或等于初始负载方差,则认为不存在调度方案;
否则,认为存在调度方案,所述调度方案以负载方差最小时对应的候选节点作为目标节点,对应的虚拟机为待迁移虚拟机。
本发明中进行预测时若能够被使用的状态信息的个数(即采集次数)不足预测时设定的数量时,直接根据能够使用的数据进行预测即可。
本发明提供的一种基于负载预测的NUMA架构中虚拟机调度方法,调度方案根据历史记录预测每台虚拟机调度到每个节点上对系统负载均衡度的影响,来决策需调度的虚拟机和调度的目标节点,引入虚拟机的正相关系数kvm,bvm的定义,并根据计算出的虚拟机正相关系数虚拟机在目标节点上的CPU使用率进行预测。
与现有技术相比,本发明具有如下优点:
(a)提升了NUMA体系结构下VNUMA虚拟机的运行性能;
(b)能够防止NUMA体系结构下VNUMA虚拟机调度程序反复调度同一台虚拟机造成的调度“颠簸”现象;
(c)能够使得调度后的系统负载均衡度小于调度前的负载均衡度,经过多次调度后能够使得系统接近理论上负载最均衡的状态。
附图说明
图1为本实施例的基于负载预测的NUMA架构中虚拟机调度方法的流程图。
具体实施方式
下面将结合附图和具体实施例对本发明进行详细描述。
一种基于负载预测的NUMA架构中虚拟机调度方法如图1所示,首先针对每个虚拟机,按照预设的时间间隔定时获取NUMA架构中各个物理节点的状态信息,状态信息包括相应物理节点的CPU使用率、内存使用率,运行于其上的VCPU总数以及运行于其上的当前虚拟机的VCPU数;
获取每个物理节点的状态信息可以以物理节点为单位,此时获取到的状态信息包括该物理节点的CPU、内存使用率和运行于其上的每个虚拟机的VCPU数以及运行于其上的VCPU总数。
为便于计算,获取时也可以以虚拟机为单位,针对每个虚拟机,分别获取每一个物理节点的CPU使用率和内存使用率,该虚拟机在该物理节点上运行部分的VCPU数,以及该物理节点上运行的VCPU总数。
本实施例中获取时以虚拟机为单位,并将获取的各个状态存储到相应的四元组中。本实施例中四元组表示如下:(usagevm,usagetotal,vcpuvm,vcputotal),其中usagevm为虚拟机在某一物理节点上的CPU使用率,usagetotal为该物理节点的CPU总使用率,vcpuvm为虚拟机在某一物理节点上的VCPU数,vcputotal为该物理节点上所有虚拟机的VCPU总数。
每次获取状态信息后进行如下操作:
(1)根据状态信息计算各个物理节点的负载;
本实施例中计算各个物理节点的负载时同时考虑到CPU负载和内存负载,相应的,利用如下公式根据状态信息计算各个物理节点的负载:
Load_degreenode=wcpu*cpu_usagenode+wmem*mem_usagenode
其中,Load_degreenode为物理节点负载量,wcpu和wmem为CPU负载权重系数和内存负载权重系数,cpu_usagenode为该物理节点的CPU使用率,mem_usagenode为该物理节点的内存使用率。
其中,CPU负载权重系数wcpu和内存负载权重系数wmem满足条件:wcpu+wmem=1,本实施例中wcpu=wmem=0.5。
(2)根据各个物理节点的负载计算NUMA架构的初始负载方差,并判断初始负载方差是否大于预设的方差阈值(本实施例中方差阈值为0.3);
若初始负载方差小于或等于预设的方差阈值则进行虚拟机调度,则不操作;
否则,确定负载最高的物理节点并作为源节点,并通过负载预测确定是否存在调度方案,调度方案包括待迁移虚拟机和目标节点:
若存在调度方案,则按照该调度方案将待迁移虚拟机从所述源节点迁移至目标节点上;
否则,不操作。
本实施例中调度时将待迁移虚拟机的内存和虚拟CPU同时从源节点迁移至目标节点上,不会破坏系统的原有架构。
本实施例中通过负载预测确定是否存在调度方案时包括如下步骤:
(2-1)以NUMA架构中除源节点外,负载小于预设的负载阈值(本实施例中负载阈值为0.9)的其他物理节点作为候选节点;
(2-2)针对源节点上的每个虚拟机,分别预测将该虚拟机迁移至每个候选节点上后NUMA架构的负载方差;
本实施例中将当前虚拟机迁移至任意一个候选节点上后NUMA架构的负载方差通过如下方法预测:
(2-21)根据源节点和当前候选节点的状态信息分别预测当前虚拟机迁移至候选节点后源节点和当前候选节点的负载;
根据如下方法预测当前虚拟机迁移至当前候选节点后源节点的负载:
(a1)预测迁移后源节点的CPU使用率Csp
Csp=Cs-CVM
其中,Cs为迁移前源节点的CPU使用率,CVM为当前虚拟机在源节点上的CPU使用率;
(a2)预测迁移后源节点的内存使用率Usp
其中,PMd为源节点总内存大小,PMu为源节点在调度前已使用的内存大小(可根据检测到的内存使用率和内存量大小计算得到,也可直接采集),VMs为虚拟机在源节点上的内存大小;
(a3)根据预测的迁移后源节点的CPU使用率和内存使用率计算迁移后源节点的负载。
根据如下方法预测当前虚拟机迁移至当前候选节点后当前候选节点的负载:
(b1)根据最近若干次(本实施例中为10次)获取的源节点的状态信息,采用岭回归法预测源节点上当前虚拟机的正相关系数kvm和bvm,其中正相关系数kvm和bvm满足如下公式:
其中,usagevm为当前虚拟机在源节点上的CPU使用率,usagetotal为源节点的CPU总使用率,vcpuvm为当前虚拟机运行在源节点上的VCPU数,vcputotal为源节点上运行的所有虚拟机的VCPU总数;
(b2)利用当前虚拟机的正相关系数kvm和bvm,计算当前虚拟机在当前候选节点上的CPU使用率usagedst_vm
其中,usagedst_total为迁移前当前候选节点的CPU总使用率,vcpudst_total为当前候选节点上所有虚拟机的VCPU总数,vcpusrc_vm为当前虚拟机运行在源节点上的VCPU数;
(b3)预测当前候选节点的内存使用率Udp
其中,Pmd为候选节点总内存大小,Pmu为候选节点在调度前已使用的内存大小,VMs为虚拟机在源节点上的内存大小。
(b4)根据预测的内存使用率和CPU使用率计算迁移后当前候选节点的负载。
(2-22)根据预测得到的当前虚拟机迁移至候选节点后源节点和当前候选节点的负载以及其余候选节点的负载计算NUMA架构的负载方差。
(2-3)若所有候选节点对应的负载方差均大于或等于初始负载方差,则认为不存在调度方案;
否则,认为存在调度方案,并以负载方差最小时对应的候选节点作为目标节点,对应的虚拟机为待迁移虚拟机形成调度方案。
本实施例中进行预测时若能够被使用的状态信息的个数(即采集次数)不足预测时10次时,直接根据能够使用的数据进行预测即可。
以上所述的具体实施方式对本发明的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种基于负载预测的NUMA架构中虚拟机调度方法,其特征在于,针对每个虚拟机,按照预设的时间间隔定时获取NUMA架构中各个物理节点的状态信息,所述的状态信息包括相应物理节点的CPU、内存使用率,运行于其上的VCPU总数以及运行于其上的当前虚拟机的VCPU数,每次获得状态信息后执行如下操作:
(1)根据状态信息计算各个物理节点的负载;
(2)根据各个物理节点的负载计算NUMA架构的初始负载方差,并判断初始负载方差是否大于预设的方差阈值;
若初始负载方差小于或等于预设的方差阈值则进行虚拟机调度,休眠一个时间间隔;
否则,确定负载最高的物理节点并作为源节点,并通过负载预测确定是否存在调度方案,所述的调度方案包括待迁移虚拟机和目标节点:
若存在调度方案,则按照所述的调度方案将待迁移虚拟机从所述源节点迁移至目标节点上;
否则,不操作。
2.如权利要求1所述的基于负载预测的NUMA架构中虚拟机调度方法,其特征在于,所述的时间间隔为1~5s。
3.如权利要求1所述的基于负载预测的NUMA架构中虚拟机调度方法,所述步骤(1)利用如下公式根据状态信息计算各个物理节点的负载:
Load_degreenode=wcpu*cpu_usagenode+wmem*mem_usagenode
其中,Load_degreenode为物理节点负载量,wcpu和wmem为CPU负载权重系数和内存负载权重系数,cpu_usagenode为该物理节点的CPU使用率,mem_usagenode为该物理节点的内存使用率。
4.如权利要求1所述的基于负载预测的NUMA架构中虚拟机调度方法,其特征在于,所述的方差阈值为0.25~1。
5.如权利要求1所述的基于负载预测的NUMA架构中虚拟机调度方法,其特征在于,通过负载预测确定是否存在调度方案时包括如下步骤:
(2-1)以NUMA架构中除源节点外,负载小于预设的负载阈值的其他物理节点作为候选节点;
(2-2)针对源节点上的每个虚拟机,分别预测将该虚拟机迁移至每个候选节点上后NUMA架构的负载方差;
(2-3)若所有候选节点对应的负载方差均大于或等于初始负载方差,则认为不存在调度方案;
否则,认为存在调度方案,所述调度方案以负载方差最小时对应的候选节点作为目标节点,对应的虚拟机为待迁移虚拟机。
6.如权利要求5所述的基于负载预测的NUMA架构中虚拟机调度方法,其特征在于,预设的负载阈值为0.75~1。
7.如权利要求5所述的基于负载预测的NUMA架构中虚拟机调度方法,其特征在于,所述步骤(2-2)中将当前虚拟机迁移至任意一个候选节点上后NUMA架构的负载方差通过如下方法预测:
(2-21)根据源节点和当前候选节点的状态信息分别预测当前虚拟机迁移至候选节点后源节点和当前候选节点的负载;
(2-22)根据预测得到的当前虚拟机迁移至候选节点后源节点和当前候选节点的负载以及其余候选节点的负载计算NUMA架构的负载方差。
8.如权利要求7所述的基于负载预测的NUMA架构中虚拟机调度方法,其特征在于,所述步骤(2-21)中根据如下方法预测当前虚拟机迁移至当前候选节点后源节点的负载:
(a1)预测迁移后源节点的CPU使用率Csp
Csp=Cs-CVM
其中,Cs为迁移前源节点的CPU使用率,CVM为当前虚拟机在源节点上的CPU使用率;
(a2)预测迁移后源节点的内存使用率Usp
<mrow> <msub> <mi>U</mi> <mrow> <mi>s</mi> <mi>p</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msub> <mi>PM</mi> <mi>u</mi> </msub> <mo>-</mo> <msub> <mi>VM</mi> <mi>s</mi> </msub> </mrow> <mrow> <msub> <mi>PM</mi> <mi>d</mi> </msub> </mrow> </mfrac> </mrow>
其中,PMd为源节点总内存大小,PMu为源节点在调度前已使用的内存大小,VMs为虚拟机在源节点上的内存大小;
(a3)根据预测的迁移后源节点的CPU使用率和内存使用率计算迁移后源节点的负载。
9.如权利要求7所述的基于负载预测的NUMA架构中虚拟机调度方法,其特征在于,所述步骤(2-21)中根据如下方法预测当前虚拟机迁移至当前候选节点后当前候选节点的负载:
(b1)根据最近若干次获取的源节点的状态信息,采用岭回归法预测源节点上当前虚拟机的正相关系数kvm和bvm,其中正相关系数kvm和bvm满足如下公式:
<mrow> <mfrac> <mrow> <msub> <mi>usage</mi> <mrow> <mi>v</mi> <mi>m</mi> </mrow> </msub> </mrow> <mrow> <msub> <mi>usage</mi> <mrow> <mi>t</mi> <mi>o</mi> <mi>t</mi> <mi>a</mi> <mi>l</mi> </mrow> </msub> </mrow> </mfrac> <mo>=</mo> <msub> <mi>k</mi> <mrow> <mi>v</mi> <mi>m</mi> </mrow> </msub> <mfrac> <mrow> <msub> <mi>vcpu</mi> <mrow> <mi>v</mi> <mi>m</mi> </mrow> </msub> </mrow> <mrow> <msub> <mi>vcpu</mi> <mrow> <mi>t</mi> <mi>o</mi> <mi>t</mi> <mi>a</mi> <mi>l</mi> </mrow> </msub> </mrow> </mfrac> <mo>+</mo> <msub> <mi>b</mi> <mrow> <mi>v</mi> <mi>m</mi> </mrow> </msub> <mo>,</mo> </mrow>
其中,usagevm为当前虚拟机在源节点上的CPU使用率,usagetotal为源节点的CPU总使用率,vcpuvm为当前虚拟机在源节点上的VCPU数,vcputotal为源节点上所有虚拟机的VCPU总数;
(b2)利用所述的正相关系数kvm和bvm,计算当前虚拟机在当前候选节点上的CPU使用率usagedst_vm
<mrow> <msub> <mi>usage</mi> <mrow> <mi>d</mi> <mi>s</mi> <mi>t</mi> <mo>_</mo> <mi>v</mi> <mi>m</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <mo>(</mo> <msub> <mi>k</mi> <mrow> <mi>v</mi> <mi>m</mi> </mrow> </msub> <mfrac> <mrow> <msub> <mi>vcpu</mi> <mrow> <mi>s</mi> <mi>r</mi> <mi>c</mi> <mo>_</mo> <mi>v</mi> <mi>m</mi> </mrow> </msub> </mrow> <mrow> <msub> <mi>vcpu</mi> <mrow> <mi>d</mi> <mi>s</mi> <mi>t</mi> <mo>_</mo> <mi>t</mi> <mi>o</mi> <mi>t</mi> <mi>a</mi> <mi>l</mi> </mrow> </msub> <mo>+</mo> <msub> <mi>vcpu</mi> <mrow> <mi>s</mi> <mi>r</mi> <mi>c</mi> <mo>_</mo> <mi>v</mi> <mi>m</mi> </mrow> </msub> </mrow> </mfrac> <mo>+</mo> <msub> <mi>b</mi> <mrow> <mi>v</mi> <mi>m</mi> </mrow> </msub> <mo>)</mo> </mrow> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mi>k</mi> <mrow> <mi>v</mi> <mi>m</mi> </mrow> </msub> <mfrac> <mrow> <msub> <mi>vcpu</mi> <mrow> <mi>s</mi> <mi>r</mi> <mi>c</mi> <mo>_</mo> <mi>v</mi> <mi>m</mi> </mrow> </msub> </mrow> <mrow> <msub> <mi>vcpu</mi> <mrow> <mi>d</mi> <mi>s</mi> <mi>t</mi> <mo>_</mo> <mi>t</mi> <mi>o</mi> <mi>t</mi> <mi>a</mi> <mi>l</mi> </mrow> </msub> <mo>+</mo> <msub> <mi>vcpu</mi> <mrow> <mi>s</mi> <mi>r</mi> <mi>c</mi> <mo>_</mo> <mi>v</mi> <mi>m</mi> </mrow> </msub> </mrow> </mfrac> <mo>+</mo> <msub> <mi>b</mi> <mrow> <mi>v</mi> <mi>m</mi> </mrow> </msub> <mo>)</mo> </mrow> </mfrac> <mo>*</mo> <msub> <mi>usage</mi> <mrow> <mi>d</mi> <mi>s</mi> <mi>t</mi> <mo>_</mo> <mi>t</mi> <mi>o</mi> <mi>t</mi> <mi>a</mi> <mi>l</mi> </mrow> </msub> <mo>,</mo> </mrow>
其中,usagedst_total为迁移前当前候选节点的CPU总使用率,vcpudst_total为当前候选节点上所有虚拟机的VCPU总数,vcpusrc_vm为当前虚拟机运行在源节点上的VCPU数;
(b3)预测当前候选节点的内存使用率Udp
<mrow> <msub> <mi>U</mi> <mrow> <mi>d</mi> <mi>p</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mrow> <msub> <mi>Pm</mi> <mi>u</mi> </msub> <mo>+</mo> <msub> <mi>VM</mi> <mi>s</mi> </msub> </mrow> <mrow> <msub> <mi>Pm</mi> <mi>d</mi> </msub> </mrow> </mfrac> </mrow>
其中,Pmd为候选节点总内存大小,Pmu为候选节点在调度前已使用的内存大小,VMs为虚拟机在源节点上的内存大小;
(b4)根据预测的内存使用率和CPU使用率计算迁移后当前候选节点的负载。
CN201510081101.0A 2015-02-15 2015-02-15 基于负载预测的numa架构中虚拟机调度方法 Active CN104636187B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510081101.0A CN104636187B (zh) 2015-02-15 2015-02-15 基于负载预测的numa架构中虚拟机调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510081101.0A CN104636187B (zh) 2015-02-15 2015-02-15 基于负载预测的numa架构中虚拟机调度方法

Publications (2)

Publication Number Publication Date
CN104636187A CN104636187A (zh) 2015-05-20
CN104636187B true CN104636187B (zh) 2018-01-09

Family

ID=53214979

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510081101.0A Active CN104636187B (zh) 2015-02-15 2015-02-15 基于负载预测的numa架构中虚拟机调度方法

Country Status (1)

Country Link
CN (1) CN104636187B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106686039B (zh) * 2015-11-10 2020-07-21 华为技术有限公司 一种云计算系统中的资源调度方法及装置
CN106020936A (zh) * 2016-06-07 2016-10-12 深圳证券通信有限公司 一种金融云平台基于运行负载的虚拟机调度方法及装置
CN108200607B (zh) * 2016-12-08 2021-07-02 中国移动通信集团四川有限公司 S-cscf池组的负荷均衡方法、装置以及系统
CN106603661B (zh) * 2016-12-14 2019-08-30 国云科技股份有限公司 一种适用于云平台的动态资源平衡调度方法
CN109062666A (zh) * 2018-07-27 2018-12-21 浪潮电子信息产业股份有限公司 一种虚拟机集群管理方法及相关装置
CN109885397B (zh) * 2019-01-15 2023-04-07 长安大学 一种边缘计算环境中时延优化的负载任务迁移算法
CN110062032A (zh) * 2019-04-01 2019-07-26 北京航天发射技术研究所 一种计算机网络集群控制平台应用重构系统
CN110461011B (zh) * 2019-07-08 2022-04-05 西安电子科技大学 一种基于意图驱动的均衡通信的负载信息处理方法
CN111651866B (zh) * 2020-05-12 2023-03-17 北京华如科技股份有限公司 一种基于动态负载迁移及时间同步的仿真执行方法及系统
CN113032145B (zh) * 2021-03-18 2023-12-26 北京计算机技术及应用研究所 基于国产化多numa节点cpu结温均衡策略的任务调度方法
CN114448909B (zh) * 2021-12-27 2023-10-13 天翼云科技有限公司 基于ovs的网卡队列轮询方法、装置、计算机设备及介质
CN117573373B (zh) * 2024-01-15 2024-03-26 中诚华隆计算机技术有限公司 一种基于云计算的cpu虚拟化调度方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236582A (zh) * 2011-07-15 2011-11-09 浙江大学 虚拟化集群负载在多台物理机中均衡分配的方法
CN104123171A (zh) * 2014-06-10 2014-10-29 浙江大学 基于numa架构的虚拟机迁移方法及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102236582A (zh) * 2011-07-15 2011-11-09 浙江大学 虚拟化集群负载在多台物理机中均衡分配的方法
CN104123171A (zh) * 2014-06-10 2014-10-29 浙江大学 基于numa架构的虚拟机迁移方法及系统

Also Published As

Publication number Publication date
CN104636187A (zh) 2015-05-20

Similar Documents

Publication Publication Date Title
CN104636187B (zh) 基于负载预测的numa架构中虚拟机调度方法
CN106776005B (zh) 一种面向容器化应用的资源管理系统及方法
CN103118124B (zh) 一种基于分层多代理的云计算负载均衡方法
US10331469B2 (en) Systems and methods of host-aware resource management involving cluster-based resource pools
CN103617086B (zh) 一种并行计算方法及系统
US9015708B2 (en) System for improving the performance of high performance computing applications on cloud using integrated load balancing
CN103336722B (zh) 一种虚拟机cpu资源监控和动态分配方法
CN103955398B (zh) 一种基于处理器性能监控的虚拟机共生调度方法
CN104657220A (zh) 混合云中基于截止时间和费用约束的调度模型及方法
CN103401939A (zh) 一种采用混合调度策略的负载均衡方法
CN107346264A (zh) 一种虚拟机负载均衡调度的方法、装置和服务器设备
CN101719081A (zh) 一种虚拟机调度方法
CN102981893B (zh) 一种虚拟机调度方法及系统
CN105718364A (zh) 一种云计算平台中计算资源能力动态评估方法
Li et al. An effective scheduling strategy based on hypergraph partition in geographically distributed datacenters
CN105426241A (zh) 一种基于云计算数据中心的统一资源调度节能方法
CN109254836B (zh) 面向云计算系统优先依赖任务的期限约束成本优化调度方法
CN103514046A (zh) 一种虚拟机放置方法及集群管理服务器
CN106775949A (zh) 一种感知复合应用特征与网络带宽的虚拟机在线迁移优化方法
CN104111875B (zh) 云数据中心新增任务数动态控制装置、系统及方法
CN109976879B (zh) 一种基于资源使用曲线互补的云计算虚拟机放置方法
CN103679564A (zh) 一种用于配电网拓扑分析分布式计算的任务分配方法
Iserte et al. An study of the effect of process malleability in the energy efficiency on GPU-based clusters
CN106844175B (zh) 一种基于机器学习的云平台容量规划方法
CN113205128A (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