CN117234742B - 一种处理器核心分配方法、装置、设备及存储介质 - Google Patents

一种处理器核心分配方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN117234742B
CN117234742B CN202311515313.6A CN202311515313A CN117234742B CN 117234742 B CN117234742 B CN 117234742B CN 202311515313 A CN202311515313 A CN 202311515313A CN 117234742 B CN117234742 B CN 117234742B
Authority
CN
China
Prior art keywords
virtual machine
processor cores
operation period
processor
value
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
CN202311515313.6A
Other languages
English (en)
Other versions
CN117234742A (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.)
Suzhou Metabrain Intelligent Technology Co Ltd
Original Assignee
Suzhou Metabrain Intelligent Technology Co Ltd
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 Suzhou Metabrain Intelligent Technology Co Ltd filed Critical Suzhou Metabrain Intelligent Technology Co Ltd
Priority to CN202311515313.6A priority Critical patent/CN117234742B/zh
Publication of CN117234742A publication Critical patent/CN117234742A/zh
Application granted granted Critical
Publication of CN117234742B publication Critical patent/CN117234742B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Hardware Redundancy (AREA)

Abstract

本申请实施例涉及云服务技术领域,具体涉及一种处理器核心分配方法、装置、设备及存储介质,旨在提升云环境中处理器核心的利用率。所述方法包括:在服务器中创建第二虚拟机,第二虚拟机为高优先级虚拟机;将对应的数量的处理器核心分配至第二虚拟机,处理器核心是从预先创建的第一虚拟机中取出的,第一虚拟机为低优先级虚拟机;监控第二虚拟机在预设的运行周期数中的每个运行周期的实际使用的处理器核心的数量;根据实际使用的处理器核心的数量,对第二虚拟机在后续运行周期中的处理器核心的使用数量进行预测,得到后续运行周期中实际使用的处理器核心的数量的预测值;在后续运行周期中为第二虚拟机分配对应数量的处理器核心。

Description

一种处理器核心分配方法、装置、设备及存储介质
技术领域
本申请实施例涉及云服务技术领域,具体而言,涉及一种处理器核心分配方法、装置、设备及存储介质。
背景技术
在云环境中部署应用的用户需要向云服务器申请虚拟机,云服务器创建虚拟机后再将用户申请的处理器核心分配至虚拟机中运行用户的业务,在普通情况下,实际需要的处理器核心数较少,造成部分处理器处于闲置状态,无法被利用。相关技术中,对云环境中的所有用户创建的虚拟机中使用的处理器核心数量进行统一预测,再根据预测结果将闲置的处理器核心分配至另一台虚拟机中。
相关技术中将所有用户申请的虚拟机看做一个整体进行分析,无法有效保证每一台虚拟机中的业务的正常运行,并且没有考虑到用户对应的虚拟机的增加或减少的情况,无法合理地对处理器核心进行分配,无法有效提升处理器核心的利用率。
发明内容
本申请实施例提供一种处理器核心分配方法、装置、设备及存储介质,旨在提升云环境中处理器核心的利用率。
本申请实施例第一方面提供一种处理器核心分配方法,所述方法包括:
响应于接收到虚拟机创建请求,在服务器中创建第二虚拟机,所述第二虚拟机为高优先级虚拟机;
将所述虚拟机创建请求对应的数量的处理器核心分配至所述第二虚拟机,所述处理器核心是从预先创建的第一虚拟机中取出的,所述第一虚拟机为低优先级虚拟机;
监测所述第二虚拟机在第一阶段运行周期中的每个运行周期的实际使用的所述处理器核心的数量,确定所述第二虚拟机在每个运行周期中实际使用的所述处理器核心的数量的最大值,得到多个处理器核心数量最大值;
将所述多个处理器核心数量最大值的平均值作为第二阶段运行周期的所述处理器核心的数量的第一预测值,所述第二阶段运行周期为所述第一阶段运行周期后的第一个运行周期;
在所述第二阶段运行周期中,为所述第二虚拟机分配所述第一预测值对应的数量的所述处理器核心;
响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量等于所述第一预测值,根据预设的第一预测规则,对第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,所述第三阶段运行周期为所述第二阶段运行周期后的运行周期;
响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量小于所述第一预测值,根据预设的第二预测规则,对所述第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,得到第二预测值;
根据所述第二预测值,在所述第三阶段运行周期的第一个运行周期中为所述第二虚拟机分配对应数量的所述处理器核心;
从所述第三阶段运行周期的第二个运行周期开始,根据前一个运行周期的预测值与所述处理器核心的监测值之间的大小关系,通过对应的预测规则对下一个运行周期中使用的所述处理器核心的数量进行预测;
在所述第三阶段运行周期的后续的每个运行周期中,为所述第二虚拟机分配对应数量的所述处理器核心;
所述第一预测规则对应的表达式为:
HVMT+1 = upper(HVMT + α(X – HVMT))
HVMT是所述第二虚拟机在所述第二阶段运行周期中分配的所述处理器核心的数量,X是所述第二虚拟机申请的所述处理器核心的数量,upper代表向上取整, HVMT+1 是预测的第二虚拟机在所述第三阶段运行周期中使用的所述处理器核心的数量的预测值,α是一个属于(0,1]的值,α=( X - XMax T) / (X - XMin T),XMax T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最大值,XMin T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最小值;
所述第二预测规则对应的表达式为:
HVMT+1 = lower(HVMT - β( HVMT - XMax T))
HVMT是所述第二虚拟机在所述第二阶段运行周期中分配的所述处理器核心的数量,X是所述第二虚拟机申请的所述处理器核心的数量,lower代表向上取整, HVMT+1 是预测的第二虚拟机在所述第三阶段运行周期中使用的所述处理器核心的数量的预测值,β是一个属于(0,1]的值,β=(XMax T - XMin T ) / ( HVMT - XMin T),XMax T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最大值,XMin T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最小值。
可选地,在服务器中创建第二虚拟机之前,所述方法还包括:
响应于所述服务器的启动操作,在所述服务器中创建所述第一虚拟机;
将所述服务器拥有的所述处理器核心分配至所述第一虚拟机中。
可选地,所述方法还包括:
将从所述第二虚拟机中取出的所述处理器核心分配至除所述第二虚拟机外的高优先级虚拟机中。
可选地,所述方法还包括:
将未分配至所述高优先级虚拟机中的所述处理器核心分配至所述第一虚拟机中。
可选地,所述方法还包括:
响应于所述第二虚拟机停止运行,将所述第二虚拟机中的所述处理器核心分配至除所述第二虚拟机外的高优先级虚拟机中。
可选地,所述方法还包括:
将未分配至所述高优先级虚拟机中的所述处理器核心分配至所述第一虚拟机中。
可选地,所述响应于接收到虚拟机创建请求,在服务器中创建第二虚拟机,包括:
响应于接收到所述虚拟机创建请求,启动所述服务器中的管理程序;
通过所述管理程序,在所述服务器中创建所述第二虚拟机。
可选地,所述方法还包括:
响应于所述第二虚拟机需求的处理器核心数量值大于所述第一虚拟机中的处理器核心数量值,向所述虚拟机创建请求的发起方发送虚拟机创建失败消息。
可选地,所述将所述虚拟机创建请求对应的数量的处理器核心分配至所述第二虚拟机,包括:
根据所述虚拟机创建请求,确定对应的处理器核心数量值;
从所述第一虚拟机中取出所述处理器核心数量值对应的多个所述处理器核心;
将多个所述处理器核心分配至所述第二虚拟机。
可选地,所述所述监测所述第二虚拟机在第一阶段运行周期中的每个运行周期的实际使用的所述处理器核心的数量,包括:
响应于所述第二虚拟机开始运行,启动预设的虚拟机监控管理程序;
通过所述虚拟机监控管理程序,在所述第一阶段运行周期中对所述第二虚拟机进行监控,确定所述第二虚拟机在所述第一阶段运行周期中实际使用的所述处理器核心的数量。
可选地,所述通过所述虚拟机监控管理程序,在所述第一阶段运行周期中对所述第二虚拟机进行监控,确定所述第二虚拟机在所述第一阶段运行周期中实际使用的所述处理器核心的数量,包括:
在所述第一阶段运行周期中的每个运行周期中,通过所述虚拟机监控管理程序检测所述第二虚拟机中的每个所述处理器核心中的进程的运行状态;
根据所述进程的运行状态,确定所述处理器核心的状态;
根据所述第二虚拟机中的每个所述处理器核心的状态,确定实际使用的所述处理器核心的数量。
可选地,所述根据所述进程的运行状态,确定所述处理器核心的状态,包括:
当所述进程的运行状态为空闲状态时,确定所述处理器核心的状态为空闲状态;
当所述进程的运行状态为忙碌使用状态时,确定所述处理器核心的状态为忙碌状态。
可选地,所述根据所述第二虚拟机中的每个所述处理器核心的状态,确定实际使用的所述处理器核心的数量,包括:
确定所述处理器核心的状态为忙碌状态的所述处理器核心的数量;
将忙碌状态的所述处理器核心的数量作为实际使用的所述处理器核心的数量。
可选地,所述在所述第二阶段运行周期中,为所述第二虚拟机分配所述第一预测值对应的数量的所述处理器核心,包括:
响应于所述第一阶段运行周期运行结束,确定所述第二虚拟机中当前拥有的所述处理器核心的数量;
将所述第二虚拟机中当前拥有的所述处理器核心的数量变更为所述第一预测值对应的数量。
可选地,所述在所述第三阶段运行周期的后续的每个运行周期中,为所述第二虚拟机分配对应数量的所述处理器核心,包括:
在所述第三阶段运行周期的每一个运行周期结束时,确定下一运行周期使用的所述处理器核心数量的预测值;
在每个运行周期开始时,为所述第二虚拟机分配对应数量的所述处理器核心。
可选地,所述方法还包括:
响应于所述第二虚拟机中的所述处理器核心的使用数量的监测值为零,停止对下一运行周期的所述处理器核心的使用数量的预测。
可选地,所述第一虚拟机中至少存在一个所述处理器核心。
本申请实施例第二方面提供一种处理器核心分配装置,所述装置包括:
第二虚拟机创建模块,用于响应于接收到虚拟机创建请求,在服务器中创建第二虚拟机,所述第二虚拟机为高优先级虚拟机;
第一处理器核心分配模块,用于将所述虚拟机创建请求对应的数量的处理器核心分配至所述第二虚拟机,所述处理器核心是从预先创建的第一虚拟机中取出的,所述第一虚拟机为低优先级虚拟机;
处理器核心使用数量监测模块,用于监测所述第二虚拟机在第一阶段运行周期中的每个运行周期的实际使用的所述处理器核心的数量,确定所述第二虚拟机在每个运行周期中实际使用的所述处理器核心的数量的最大值,得到多个处理器核心数量最大值;
第一预测模块,用于将所述多个处理器核心数量最大值的平均值作为第二阶段运行周期的所述处理器核心的数量的第一预测值,所述第二阶段运行周期为所述第一阶段运行周期后的第一个运行周期;
第二处理器核心分配模块,用于在所述第二阶段运行周期中,为所述第二虚拟机分配所述第一预测值对应的数量的所述处理器核心;
第二预测模块,用于响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量等于所述第一预测值,根据预设的第一预测规则,对第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,所述第三阶段运行周期为所述第二阶段运行周期后的运行周期;
第三预测模块,用于响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量小于所述第一预测值,根据预设的第二预测规则,对所述第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,得到第二预测值;
第三处理器核心分配模块,用于根据所述第二预测值,在所述第三阶段运行周期的第一个运行周期中为所述第二虚拟机分配对应数量的所述处理器核心;
第四预测模块,用于从所述第三阶段运行周期的第二个运行周期开始,根据前一个运行周期的预测值与所述处理器核心的监测值之间的大小关系,通过对应的预测规则对下一个运行周期中使用的所述处理器核心的数量进行预测;
第四处理器核心分配模块,用于在所述第三阶段运行周期的后续的每个运行周期中,为所述第二虚拟机分配对应数量的所述处理器核心;
所述第一预测规则对应的表达式为:
HVMT+1 = upper(HVMT + α(X – HVMT))
HVMT是所述第二虚拟机在所述第二阶段运行周期中分配的所述处理器核心的数量,X是所述第二虚拟机申请的所述处理器核心的数量,upper代表向上取整, HVMT+1 是预测的第二虚拟机在所述第三阶段运行周期中使用的所述处理器核心的数量的预测值,α是一个属于(0,1]的值,α=( X - XMax T) / (X - XMin T),XMax T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最大值,XMin T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最小值;
所述第二预测规则对应的表达式为:
HVMT+1 = lower(HVMT - β( HVMT - XMax T))
HVMT是所述第二虚拟机在所述第二阶段运行周期中分配的所述处理器核心的数量,X是所述第二虚拟机申请的所述处理器核心的数量,lower代表向上取整, HVMT+1 是预测的第二虚拟机在所述第三阶段运行周期中使用的所述处理器核心的数量的预测值,β是一个属于(0,1]的值,β=(XMax T - XMin T ) / ( HVMT - XMin T),XMax T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最大值,XMin T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最小值。
可选地,所述装置还包括:
第一虚拟机创建模块,用于响应于所述服务器的启动操作,在所述服务器中创建所述第一虚拟机;
第一虚拟机处理器核心分配模块,用于将所述服务器拥有的所述处理器核心分配至所述第一虚拟机中。
可选地,所述装置还包括:
第二虚拟机处理器核心取出模块,用于将从所述第二虚拟机中取出的所述处理器核心分配至除所述第二虚拟机外的高优先级虚拟机中。
可选地,所述装置还包括:
第一虚拟机处理器核心获取模块,用于将未分配至所述高优先级虚拟机中的所述处理器核心分配至所述第一虚拟机中。
可选地,所述装置还包括:
第二虚拟机处理器核心释放模块,用于响应于所述第二虚拟机停止运行,将所述第二虚拟机中的所述处理器核心分配至除所述第二虚拟机外的高优先级虚拟机中。
可选地,所述装置还包括:
第一虚拟机接收释放处理器核心模块,用于将未分配至所述高优先级虚拟机中的所述处理器核心分配至所述第一虚拟机中。
可选地,所述第二虚拟机创建模块包括:
管理程序启动子模块,用于响应于接收到所述虚拟机创建请求,启动所述服务器中的管理程序;
管理程序运行子模块,用于通过所述管理程序,在所述服务器中创建所述第二虚拟机。
可选地,所述装置还包括:
虚拟机创建失败消息返回模块,用于响应于所述第二虚拟机需求的处理器核心数量值大于所述第一虚拟机中的处理器核心数量值,向所述虚拟机创建请求的发起方发送虚拟机创建失败消息。
可选地,所述第一处理器核心分配模块包括:
处理器核心数量值确定子模块,用于根据所述虚拟机创建请求,确定对应的处理器核心数量值;
处理器核心取出子模块,用于从所述第一虚拟机中取出所述处理器核心数量值对应的多个所述处理器核心;
第二虚拟机处理器核心分配子模块,用于将多个所述处理器核心分配至所述第二虚拟机。
可选地,所述处理器核心使用数量监测模块包括:
虚拟机监控管理程序启动子模块,用于响应于所述第二虚拟机开始运行,启动预设的虚拟机监控管理程序;
处理器核心数量确定子模块,用于通过所述虚拟机监控管理程序,在所述第一阶段运行周期中对所述第二虚拟机进行监控,确定所述第二虚拟机在所述第一阶段运行周期中实际使用的所述处理器核心的数量。
可选地,所述处理器核心数量确定子模块包括:
进程运行状态确定子模块,用于在所述第一阶段运行周期中的每个运行周期中,通过所述虚拟机监控管理程序检测所述第二虚拟机中的每个所述处理器核心中的进程的运行状态;
处理器核心状态确定子模块,用于根据所述进程的运行状态,确定所述处理器核心的状态;
实际使用数量确定子模块,用于根据所述第二虚拟机中的每个所述处理器核心的状态,确定实际使用的所述处理器核心的数量。
可选地,所述处理器核心状态确定子模块包括:
空闲状态确定子模块,用于当所述进程的运行状态为空闲状态时,确定所述处理器核心的状态为空闲状态;
忙碌状态确定子模块,用于当所述进程的运行状态为忙碌使用状态时,确定所述处理器核心的状态为忙碌状态。
可选地,所述实际使用数量确定子模块包括:
忙碌状态处理器核心数量确定子模块,用于确定所述处理器核心的状态为忙碌状态的所述处理器核心的数量;
数量获取子模块,用于将忙碌状态的所述处理器核心的数量作为实际使用的所述处理器核心的数量。
可选地,所述第二处理器核心分配模块包括:
处理器核心数量确定子模块,用于响应于所述第一阶段运行周期运行结束,确定所述第二虚拟机中当前拥有的所述处理器核心的数量;
处理器核心分配子模块,用于将所述第二虚拟机中当前拥有的所述处理器核心的数量变更为所述第一预测值对应的数量。
可选地,所述第四处理器核心分配模块包括:
预测值确定子模块,用于在所述第三阶段运行周期的每一个运行周期结束时,确定下一运行周期使用的所述处理器核心数量的预测值;
第四处理器核心分配子模块,用于在每个运行周期开始时,为所述第二虚拟机分配对应数量的所述处理器核心。
可选地,所述装置还包括:
预测停止子模块,用于响应于所述第二虚拟机中的所述处理器核心的使用数量的监测值为零,停止对下一运行周期的所述处理器核心的使用数量的预测。
可选地,所述第一虚拟机中至少存在一个所述处理器核心。
本申请实施例第三方面提供一种可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现如本申请第一方面所述的方法中的步骤。
本申请实施例第四方面提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现本申请第一方面所述的方法的步骤。
采用本申请提供的处理器核心分配方法,响应于接收到虚拟机创建请求,在服务器中创建第二虚拟机,所述第二虚拟机为高优先级虚拟机;将所述虚拟机创建请求对应的数量的处理器核心分配至所述第二虚拟机,所述处理器核心是从预先创建的第一虚拟机中取出的,所述第一虚拟机为低优先级虚拟机;监测所述第二虚拟机在第一阶段运行周期中的每个运行周期的实际使用的所述处理器核心的数量,确定所述第二虚拟机在每个运行周期中实际使用的所述处理器核心的数量的最大值,得到多个处理器核心数量最大值;将所述多个处理器核心数量最大值的平均值作为第二阶段运行周期的所述处理器核心的数量的第一预测值,所述第二阶段运行周期为所述第一阶段运行周期后的第一个运行周期;在所述第二阶段运行周期中,为所述第二虚拟机分配所述第一预测值对应的数量的所述处理器核心;响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量等于所述第一预测值,根据预设的第一预测规则,对第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,所述第三阶段运行周期为所述第二阶段运行周期后的运行周期;响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量小于所述第一预测值,根据预设的第二预测规则,对所述第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,得到第二预测值;根据所述第二预测值,在所述第三阶段运行周期的第一个运行周期中为所述第二虚拟机分配对应数量的所述处理器核心; 从所述第三阶段运行周期的第二个运行周期开始,根据前一个运行周期的预测值与所述处理器核心的监测值之间的大小关系,通过对应的预测规则对下一个运行周期中使用的所述处理器核心的数量进行预测;在所述第三阶段运行周期的后续的每个运行周期中,为所述第二虚拟机分配对应数量的所述处理器核心。
本申请中,将用户申请创建的虚拟机作为高优先级虚拟机,将处理器核心全部放入预先创建的低优先级虚拟机中,根据用户申请的处理器核心的数量,从低优先级虚拟机中取出对应的数量的处理器核心分配至高优先级虚拟机中,在高优先级虚拟机运行的前几个周期中监控其实际使用的处理器核心的数量,根据其实际使用的处理器核心的数量,对该虚拟机在后续运行周期中使用的处理器核心的使用数量进行预测,再根据预测的结果为该虚拟机在后续运行周期中分配对应数量的处理器核心,这种处理器核心分配的方式通过监测服务器中的每台虚拟机各自的业务运行状况,为高优先级虚拟机分配合适数量的处理器核心,将闲置的处理器核心放置在低优先级虚拟机中执行系统分配的任务,在保证为用户提供稳定业务的情况下,有效提高了服务器中的处理器核心的利用率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提出的处理器核心分配方法的流程图;
图2是本申请一实施例提出的服务器结构示意图;
图3是本申请一实施例提出的预测算法流程示意图;
图4是本申请一实施例提出的处理器核心分配装置的示意图;
图5是本申请一实施例示出的一种电子设备的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参考图1,图1是本申请一实施例提出的处理器核心分配方法的流程图。如图1所示,该方法包括以下步骤:
S11:响应于接收到虚拟机创建请求,在服务器中创建第二虚拟机,所述第二虚拟机为高优先级虚拟机。
本实施例中,虚拟机是软件模拟的具有完整硬件系统功能的、运行在云环境中的完整计算机系统。虚拟机创建请求是由用户端向云环境中的服务器发送的请求,用于请求服务器创建虚拟机,虚拟机创建请求中至少包含了创建的虚拟机的处理器核心的数量。第二虚拟机是服务器接收到用户发出的虚拟机创建请求后,根据该虚拟机创建请求创建的虚拟机。在服务器提供虚拟机服务时,处理器核心有限保证高优先级虚拟机的业务需求。
本实施例中,用户登录云环境中,并发送虚拟机创建请求,将该请求发送至服务器,服务器接收到虚拟机创建请求后,运行管理程序,根据该虚拟机创建请求,在服务器中创建第二虚拟机,并且将创建的第二虚拟机的优先级标记为高优先级。
本实施例中,需要注意的是,预先设置了服务器的运行周期,在每个运行周期结束时,是调整虚拟机中的核心数量的时机,在一个运行周期内,无法在服务器中创建新的虚拟机以及为已经创建的虚拟机调整处理器核心数量,因此服务器在接收到虚拟机创建请求时,需要等待本周期结束再创建第二虚拟机。
参考图2,图2是本申请一实施例提出的服务器结构示意图,如图2所示,服务器中有管理程序,虚拟机监控管理程序,n台高优先级虚拟机(VM),从高优先级虚拟机1至高优先级虚拟机n,一台低优先级虚拟机(VM)。虚拟机监控管理程序负责监控服务器中的虚拟机,管理程序负责对服务器进行整体的管理。
示例地,一个运行周期时长为20秒,服务器在某一个运行周期的第10秒接收到虚拟机创建请求,则该服务器等待10秒中,在该运行周期完毕时,创建该虚拟机创建请求对应的虚拟机。
本实施例中,述响应于接收到虚拟机创建请求,在服务器中创建第二虚拟机的具体步骤包括:
S11-1:响应于接收到所述虚拟机创建请求,启动所述服务器中的管理程序。
本实施例中,管理程序运行于服务器中,负责虚拟机的创建和移除以及周期性的控制虚拟机监控管理程序,收集服务器中的各个高优先级虚拟机内的处理器核心的使用情况,再通过预测算法确定下一周期各个高优先级虚拟机的处理器核心的使用数量,同时也确定了下一周期低优先级虚拟机可以使用的处理器核心数量。
本实施例中,当服务器在接收到用户端发送的虚拟机创建请求时,启动服务器中的管理程序。
S11-2:通过所述管理程序,在所述服务器中创建所述第二虚拟机。
本实施例中,启动管理程序之后,通过管理程序,在服务器中创建一个新的虚拟机,即第二虚拟机。
本实施例中,响应于所述第二虚拟机需求的处理器核心数量值大于所述第一虚拟机中的处理器核心数量值,向所述虚拟机创建请求的发起方发送虚拟机创建失败消息。
本实施例中,当第二虚拟机需求的处理器核心数量值大于第一虚拟机中的处理器核心数量值,则无法满足第二虚拟机需求的处理器核心的数量,故无法正常创建虚拟机,此时向虚拟机创建请求的发起方发送创建失败消息。
S12:将所述虚拟机创建请求对应的数量的处理器核心分配至所述第二虚拟机,所述处理器核心是从预先创建的第一虚拟机中取出的,所述第一虚拟机为低优先级虚拟机。
本实施例中,处理器核心是服务器中的核心计算部件,虚拟机所需要的业务通过处理器核心进行运行处理。第一虚拟机是预先创建的低优先级虚拟机,服务器将所有的处理器核心都放入第一虚拟机中,当高优先级虚拟机需要使用处理器核心时,从第一虚拟机中取出对应数量的虚拟机。低优先级处理器用于运行系统任务,例如压缩文件等业务。
本实施例中,服务器根据接收到的虚拟机创建请求中申请的处理器核心的数量,为第二虚拟机分配对应的数量的处理器核心,从预先创建的第一虚拟机中取出对应的数量的处理器核心,将取出的处理器核心放入第二虚拟机中。
示例地,服务器中的总核心数量为T,第二虚拟机需要的处理器核心的数量为X,则此时从第一虚拟机中取出X个处理器核心,第一虚拟机中还剩余T-X个处理器核心。
本实施例中,将所述虚拟机创建请求对应的数量的处理器核心分配至所述第二虚拟机的具体步骤包括:
S12-1:根据所述虚拟机创建请求,确定对应的处理器核心数量值。
本实施例中,虚拟机创建请求中包括了用户申请的处理器核心的数量,服务器根据虚拟机创建请求,即可获取到该虚拟机创建请求对应的处理器核心数量值。
S12-2:从所述第一虚拟机中取出所述处理器核心数量值对应的多个所述处理器核心。
本实施例中,第一虚拟机在未创建高优先级虚拟机的情况下,拥有服务器所有的处理器核心,当新创建了第二虚拟机后,从第一虚拟机中取出对应数量的处理器核心。
S12-3:将多个所述处理器核心分配至所述第二虚拟机。
本实施例中,从第一虚拟机中取出多个处理器核心之后,将取出的多个处理器核心分配至第二虚拟机中。
示例地,服务器的总处理器核心数量为T为36,初始状态下,低优先级虚拟机创建,包含36个处理器核心,管理程序以此时作为0时刻,开始第一个运行周期,当管理程序在15秒时接收到虚拟机创建请求,该请求申请10个处理器核心,则创建第二虚拟机,从第一虚拟机中取出10个处理器核心,第一虚拟机中还剩余36个处理器核心,除去第一虚拟机中至少保留的1个处理器核心,剩余可分配的处理器核心为25个处理器核心。
S13:监测所述第二虚拟机在第一阶段运行周期中的每个运行周期的实际使用的所述处理器核心的数量,确定所述第二虚拟机在每个运行周期中实际使用的所述处理器核心的数量的最大值,得到多个处理器核心数量最大值。
本实施例中,第一阶段运行周期是预先设置的对第二虚拟机进行监测的周期数,是预先设置的运行周期数,在第一阶段运行周期中的周期内,不对第二虚拟机中的处理器核心数量进行改变,只是监测该虚拟机实际使用的处理器核心的数量的最大值与最小值。
本实施例中,服务器在创建第二虚拟机后,从第二虚拟机运行的第一个周期开始,通过虚拟机监控管理程序对第二虚拟机在每个周期内实际使用的处理器核心数量的最大值与最小值进行监测,直至达到预设的虚拟机运行周期数为止。
示例地,第一阶段运行周期的周期数量为3个周期,则服务器通过虚拟机监控管理程序对第二虚拟机运行的前3个周期进行监测。
本实施例中,监测所述第二虚拟机在第一阶段运行周期中的每个运行周期的实际使用的所述处理器核心的数量,确定所述第二虚拟机在每个运行周期中实际使用的所述处理器核心的数量的最大值,得到多个处理器核心数量最大值的步骤包括:
S13-1:响应于所述第二虚拟机开始运行,启动预设的虚拟机监控管理程序。
本实施例中,虚拟机监控管理程序具有两个功能,一个是对虚拟机进行监测,监测虚拟机在一个周期内的处理器核心使用情况,具体包括此周期内高优先级虚拟机实际使用的处理器核心数目的XMax T和最小值 XMin T,另一个是根据要求改变虚拟机内处理器核心的数目,并提供对应的操作接口。
本实施例中,当服务器监测到第二虚拟机开始运行时,启动预设的虚拟机监控管理程序。
S13-2:通过所述虚拟机监控管理程序,在所述第一阶段运行周期中对所述第二虚拟机进行监控,确定所述第二虚拟机在所述第一阶段运行周期中实际使用的所述处理器核心的数量。
本实施例中,在启动虚拟机监控管理程序后,通过该程序在第一阶段运行周期中的每个运行周期中对第二虚拟机进行监控,确定第二虚拟机在每个运行周期中实际使用的处理器核心的数量。
本实施例中,虚拟机在运行时,一般使用到的处理器核心数量都比申请的处理器核心数量少,即有部分处理器核心处于闲置状态,通过虚拟机监控管理程序确定该虚拟机在运行过程中的实际使用的处理器核心的数量,有助于掌握虚拟机中闲置的处理器核心的数量。
示例地,当预设的运行周期为3个周期时,虚拟机监控管理程序会监测2个周期内实际使用的处理器核心数目最大值为XMax 0,XMax 1, XMax 2
本实施例中,所述通过所述虚拟机监控管理程序,在所述第一阶段运行周期中对所述第二虚拟机进行监控,确定所述第二虚拟机在所述第一阶段运行周期中实际使用的所述处理器核心的数量,包括:
S13-2-1:在所述第一阶段运行周期中的每个运行周期中,通过所述虚拟机监控管理程序检测所述第二虚拟机中的每个所述处理器核心中的进程的运行状态。
本实施例中,在第一阶段运行周期中的每个运行周期中,通过虚拟机监控管理程序检测第二虚拟机中的每个处理器核心中的进程的运行状态。
本实施例中,处理器核心在运行业务时,会建立该业务对应的进程,在监测过程中,通过监测处理器核心上的进程的运行状态来判断处理器核心的状态。
S13-2-2:根据所述进程的运行状态,确定所述处理器核心的状态。
本实施例中,当确定进程的运行状态后,根据进程的运行状态确定处理器核心的运行状态,具体的步骤包括:
S13-2-2-1:当所述进程的运行状态为空闲状态时,确定所述处理器核心的状态为空闲状态。
本实施例中,空闲状态的处理器核心即未使用的处理器核心。
本实施例中,当处理器核心上的进程的运行状态为空闲时,确定处理器核心的状态为空闲状态。
S13-2-2-2:当所述进程的运行状态为忙碌使用状态时,确定所述处理器核心的状态为忙碌状态。
本实施例中,忙碌状态的处理器核心即为正在使用的处理器核心。
本实施例中,当处理器核心上的进程的运行状态为空闲时,确定处理器核心的状态为忙碌状态。
S13-2-3:根据所述第二虚拟机中的每个所述处理器核心的状态,确定实际使用的所述处理器核心的数量。
本实施例中,当确定了第二虚拟机中的每个处理器核心的状态后,根据每个处理器核心的状态,确定第二虚拟机中实际使用的处理器核心的数量,具体的步骤包括:
S13-2-3-1:确定所述处理器核心的状态为忙碌状态的所述处理器核心的数量。
S13-2-3-2:将忙碌状态的所述处理器核心的数量作为实际使用的所述处理器核心的数量。
本实施例中,确定处理器核心的状态为忙碌状态的处理器核心的数量,将忙碌状态的处理器核心的数量作为实际使用的处理器核心的数量,当处理器核心的状态为忙碌状态时,代表该处理器上运行有业务,并不是闲置的处理器核心。
S14:将所述多个处理器核心数量最大值的平均值作为第二阶段运行周期的所述处理器核心的数量的第一预测值,所述第二阶段运行周期为所述第一阶段运行周期后的第一个运行周期。
本实施例中,在确定了在第一阶段运行周期内的处理器核心使用数量的最大值之后,确定第一阶段运行周期内数内的处理器核心使用数量的最大值的平均值,对该平均值进行向上取整,得到下一个周期,即第二阶段运行周期的处理器核心数的预测值,即第一预测值。
示例地,当预设的运行周期为3个周期时,当3个周期运行完毕后,下一周期第二虚拟机将占用的处理器核心数量为前3个周期的实际使用的处理器核心数量的最大值的平均值向上取整HVM3 = upper(( XMax 0 + XMax 1 + XMax 2)/ 3 ),此时低优先级的虚拟机使用的核心数目由T-X变为T-HVM3,但可以分配的处理器核心数量S不变,只有在发生虚拟机添加或者移除的情况,S才会发生变化。
当预设运行周期数为3个周期时,监测到这三个周期中处理器核心的使用数量的峰值分别为4,8,7,待3个周期结束之后,预测第二虚拟机第4个周期使用的处理器的核心数为HVM4=upper((4+8+6)/ 3)=7,此时低优先级虚拟机可以使用的处理器核心数目为29。
S15:在所述第二阶段运行周期中,为所述第二虚拟机分配所述第一预测值对应的数量的所述处理器核心。
本实施例中,在第二阶段运行周期中为该虚拟机分配第一预测值对应数量的处理器核心。
本实施例中,所述在所述第二阶段运行周期中,为所述第二虚拟机分配所述第一预测值对应的数量的所述处理器核心的具体步骤包括:
S15-1:响应于所述第一阶段运行周期运行结束,确定所述第二虚拟机中当前拥有的所述处理器核心的数量。
本实施例中,当第一阶段运行周期结束时,确定第二虚拟机中当前拥有的核心处理器的数量,也就是在刚刚结束的运行周期中,第二虚拟机实际被分配到的处理器核心的数量,因为是在第一阶段运行周期中,所以当前第二虚拟机拥有的处理器核心的数量实际上就是第二虚拟机在创建时所分配到得处理器核心的数量。
S15-2:将所述第二虚拟机中当前拥有的所述处理器核心的数量变更为所述第一预测值对应的数量。
本实施例中,当得到第一预测值之后,将第二虚拟机中当前拥有的处理器核心的数量变更为第一预测值对应的数量。当预测值的数量少于第二虚拟机当前拥有的处理器核心的数量时,从第二虚拟机中取出对应数量的处理器核心,当预测值等于第二虚拟机当前拥有的处理器核心的数量时,不变动处理器核心的数量,第一预测值不会大于第二虚拟机请求的处理器核心的数量。
示例地,当第一阶段运行周期数为3个周期,使用的处理器核心的最大值的平均值向上取整数为7时,在第4个运行周期中,即第二阶段运行周期中,为第二虚拟机分配7个处理器核心。
S16:响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量等于所述第一预测值,根据预设的第一预测规则,对第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,所述第三阶段运行周期为所述第二阶段运行周期后的运行周期。
本实施例中,在第二阶段运行周期中监测虚拟机实际使用的处理器核心的数量,当实际使用的处理器核心数量未达到第一预测值时,根据预设的第一预测规则在预测值的基础上减少处理器核心的数量,得到第三阶段运行周期中的第一个运行周期中,第二虚拟机使用的处理器核心数量的预测值,第三阶段运行周期为第二阶段运行周期后的运行周期。
本实施例中,第一预设规则和第二预设规则需要在第二阶段运行周期后被使用,当第二阶段运行周期结束后,此时知晓的信息有,第二阶段运行周期中第二虚拟机拥有的处理器核心数 HVM3,该核心数为第一阶段运行周期的多个核心处理器使用数量的最大值的平均值向上取整。还有由虚拟机监控管理程序监测到的本周期第二虚拟机实际使用的核心数目的最大值和最小值XMax 3和 XMin 3
本实施例中,当第二虚拟机在第二阶段运行周期内的监测值等于第一预测值时,说明第二虚拟机的处理器核心处于满载状态,因此需要增加处理器核心的数量,因此根据预设的第一预测规则,在第一预测值的基础上增加处理器核心的数量,得到第三阶段运行周期中的预测值。
示例地,若第二阶段运行周期中的XMax T的数值等于第一预测值,则使用第一预测规则预测第三阶段运行周期的HVMT+1的数值为:
HVMT+1 = upper(HVMT + α(X – HVMT)) (1)
其中 HVMT是预测T周期内此高优先级虚拟机使用的处理器核心数目, X是此高优先级虚拟机申请的处理器核心数目,α是一个属于(0,1]的值,α=( X - XMax T) / (X -XMin T),upper表示向上取整。XMax T 和 XMin T两值相差越大,表明此虚拟机使用处理器的数目波动越大,对此虚拟机不应大幅度添加较多的处理器数目,以免浪费,所以α值应该小。
当第一阶段运行周期的周期数为3个周期,第4个周期监测到的处理器核心使用数量的最大值为7,最小值为4时,下一个周期使用的处理器核心数量的预测值为HVM5=upper(7+(10-7)/(10-4)*(10-7)) = 9。
S17:响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量小于所述第一预测值,根据预设的第二预测规则,对所述第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,得到第二预测值。
本实施例中,当第二虚拟机在第二阶段运行周期中的监测值小于第一预测值时,说明第二虚拟机中有闲置的处理器核心,处理器核心有浪费情况发生,因此根据预设的第二预测规则,在第一预测值的基础上减少处理器核心数量,得到第三运行周期中的第二预测值。
本实施例中,XMax T不等于HVMT(即小于HVMT),则使用第二预测规则预测下一周期:
HVMT+1 = lower(HVMT - β( HVMT - XMax T)) (2)
其中 HVMT是预测T周期内此高优先级虚拟机使用的处理器核心数目, X是此高优先级虚拟机申请的处理器核心数目,β是一个属于(0,1]的值,β=(XMax T - XMin T ) / ( HVMT- XMin T),lower表示向下取整。XMax T 和 XMin T两值相差越大,表明此虚拟机使用处理器的数目波动越大,可以大幅度减少虚拟机可使用的处理器数目,此处为减法,β值应该大。
当第一阶段运行周期的周期数为3个周期,第4个周期监测到的处理器核心使用数量的最大值为7,最小值为4时,下一个周期虚拟机使用的处理器核心的预测值为HVM5=lower(7-(6-4)/(7-4)*(7-6)) = 6。
参考图3,图3是本申请一实施例提出的预测算法流程示意图,首先在第一阶段运行周期结束后得到第一预测值,再根据第一预测值与第二阶段运行周期内的监测值,得到第二预测值,从第三运行周期的第二个运行周期开始,根据前一个运行周期得到的预测值,为下一周期分配对应的处理器核心数量。
S18:根据所述第二预测值,在所述第三阶段运行周期的第一个运行周期中为所述第二虚拟机分配对应数量的所述处理器核心。
本实施例中,在得到第二预测之后,在第三阶段运行周期的第一个运行周期中,为第二虚拟机分配对应数量的处理器核心,在分配时,将第二虚拟机中的处理器核心数量变更为第二预测值对应的数量。
S19:从所述第三阶段运行周期的第二个运行周期开始,根据前一个运行周期的预测值与所述处理器核心的监测值之间的大小关系,通过对应的预测规则对下一个运行周期中使用的所述处理器核心的数量进行预测。
本实施例中,从第三阶段运行周期的第二个运行周期开始,根据每一个运行周期的预测值,为下一个运行周期的第二虚拟机分配对应的数量的处理器核心。
S110:在所述第三阶段运行周期的后续的每个运行周期中,为所述第二虚拟机分配对应数量的所述处理器核心。
本实施例中,在第三极端运行周期的后续的每个运行周期中,为第二虚拟机分配对应的数量的处理器核心,具体步骤包括:
S20-1: 在所述第三阶段运行周期的每一个运行周期结束时,确定下一运行周期使用的所述处理器核心数量的预测值。
本实施例中,在第三阶段运行周期的每个运行周期结束时,确定基于预设的第一预测规则或者第二预测规则得到的预测值,即预测的下一运行周期中第二虚拟机需要使用的处理器核心的数量。
S20-2:在每个运行周期开始时,为所述第二虚拟机分配对应数量的所述处理器核心。
本实施例中,在每个运行周期开始时,为第二虚拟机分配对应数量的处理器核心。
本实施例中,若管理程序在某一运行周期内又接收到新的虚拟机创建申请,此时在该运行周期结束后创建对应的虚拟机,并将该虚拟机创建申请对应的处理器核心分配至该虚拟机中,该虚拟机为第三虚拟机,对于第三虚拟机来说,同样在运行预设的运行周期数后,通过预设的预测算法对后续周期中的处理器核心使用数量进行预测,直至该虚拟机停止工作或被移出该服务器中。对于多个虚拟机来说,都可以使用该方式创建并灵活分配处理器核心数量。
示例地,若管理程序在50秒时,又收到申请20个处理器核心的高优先级虚拟机VM2创建请求,X2=20。和第二虚拟机一致,仍是等到当前周期结束,即60秒时开始创建。随后也是先以20个处理器核心运行3个周期,第四周期的处理器核心数取前3个周期实际使用处理器核心数目最大值的平均峰值,随后根据预测算法确定下一周期的处理器核心数目。
本实施例中,将服务器的处理器核心预先分配至低优先级虚拟机中,通过管理程序管理服务器中的虚拟机的创建和移除,每当创建新的虚拟机时,都通过预设的预测算法对该虚拟机使用的处理器核心数量进行预测,针对每台虚拟机的不同业务进行了充分的考虑,在保证用户业务正常运行的前提下,最大化的提升了服务器中的处理器核心的利用率。
在本申请的另一个实施例中,响应于所述第二虚拟机中的所述处理器核心的使用数量的监测值为零,停止对下一运行周期的所述处理器核心的使用数量的预测。
本实施例中,当在某一运行周期中,第二虚拟机中的处理器核心的使用数量的监测值为零时,说明虚拟机中的处理器核心都处于闲置状态,因此停止对下一运行周期的处理器核心的数量进行预测。
在本申请的另一个实施例中,在服务器中创建第二虚拟机之前,所述方法还包括:
S21:响应于所述服务器的启动操作,在所述服务器中创建所述第一虚拟机。
本实施例中,当服务启动时,运行服务器管理程序,在服务器中创建第一虚拟机。
S22:将所述服务器拥有的所述处理器核心分配至所述第一虚拟机中。
本实施例中,在创建了第一虚拟机之后,将服务拥有的所有的处理器核心分配至第一虚拟机中。
在本申请的另一个实施例中,所述方法还包括:
S31:将从所述第二虚拟机中取出的所述处理器核心分配至除所述第二虚拟机外的高优先级虚拟机中。
本实施例中,在运行周期结束进入下一周期时,当预测值降低时,将从第二虚拟机中取出的处理器核心分配至该服务器中除了第二虚拟机外的高优先级虚拟机中。
本实施例中,所述方法还包括:
S32:将未分配至所述高优先级虚拟机中的所述处理器核心分配至所述第一虚拟机中。
本实施例中,当取出的处理器核心分配完毕后还剩下未分配至高优先级虚拟机的处理器核心时,将剩余的处理器核心分配至第一虚拟机即低优先级虚拟机中。
在本申请另一个实施例中,所述方法还包括:
S41:响应于所述第二虚拟机停止运行,将所述第二虚拟机中的所述处理器核心分配至除所述第二虚拟机外的高优先级虚拟机中。
本实施例中,当第二虚拟机停止运行时,通过管理程序移除该虚拟机,并且将第二虚拟机中的处理器核心分配至除第二虚拟机外的高优先级虚拟机中。
本实施例中,所述方法还包括:
S42:将未分配至所述高优先级虚拟机中的所述处理器核心分配至所述第一虚拟机中。
本实施例中,当高优先级虚拟机不需要处理器核心时,将未分配至高优先级虚拟机的处理器核心分配至第一虚拟机中。
示例地,若第二虚拟机在515秒时结束运行,则其使用的处理器核心被释放。等到当前周期结束,即520秒时,重新预测和计算各个虚拟机需要使用的处理器核心数,优先把第二虚拟机释放的处理器核心交由高优先级虚拟机使用,剩余的交由低优先级虚拟机使用。
本实施例中,当虚拟机移除时,将其内的处理器核心优先分配至高优先级虚拟机中,剩余的处理器核心交由低优先级虚拟机,实现了处理器核心的高效率利用。
基于同一发明构思,本申请一实施例提供一种处理器核心分配装置。参考图3,图3是本申请一实施例提出的处理器核心分配装置300的示意图。如图3所示,该装置包括:
第二虚拟机创建模块401,用于响应于接收到虚拟机创建请求,在服务器中创建第二虚拟机,所述第二虚拟机为高优先级虚拟机;
处理器核心分配模块402,用于将所述虚拟机创建请求对应的数量的处理器核心分配至所述第二虚拟机,所述处理器核心是从预先创建的第一虚拟机中取出的,所述第一虚拟机为低优先级虚拟机;
处理器核心使用数量监测模块403,用于监测所述第二虚拟机在第一阶段运行周期中的每个运行周期的实际使用的所述处理器核心的数量,确定所述第二虚拟机在每个运行周期中实际使用的所述处理器核心的数量的最大值,得到多个处理器核心数量最大值;
第一预测模块404,用于将所述多个处理器核心数量最大值的平均值作为第二阶段运行周期的所述处理器核心的数量的第一预测值,所述第二阶段运行周期为所述第一阶段运行周期后的第一个运行周期;
第二处理器核心分配模块405,用于在所述第二阶段运行周期中,为所述第二虚拟机分配所述第一预测值对应的数量的所述处理器核心;
第二预测模块406,用于响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量等于所述第一预测值,根据预设的第一预测规则,对第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,所述第三阶段运行周期为所述第二阶段运行周期后的运行周期;
第三预测模块407,用于响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量小于所述第一预测值,根据预设的第二预测规则,对所述第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,得到第二预测值;
第三处理器核心分配模块408,用于根据所述第二预测值,在所述第三阶段运行周期的第一个运行周期中为所述第二虚拟机分配对应数量的所述处理器核心;
第四预测模块409,用于从所述第三阶段运行周期的第二个运行周期开始,根据前一个运行周期的预测值与所述处理器核心的监测值之间的大小关系,通过对应的预测规则对下一个运行周期中使用的所述处理器核心的数量进行预测;
第四处理器核心分配模块410,用于在所述第三阶段运行周期的后续的每个运行周期中,为所述第二虚拟机分配对应数量的所述处理器核心;
所述第一预测规则对应的表达式为:
HVMT+1 = upper(HVMT + α(X – HVMT))
HVMT是所述第二虚拟机在所述第二阶段运行周期中分配的所述处理器核心的数量,X是所述第二虚拟机申请的所述处理器核心的数量,upper代表向上取整, HVMT+1 是预测的第二虚拟机在所述第三阶段运行周期中使用的所述处理器核心的数量的预测值,α是一个属于(0,1]的值,α=( X - XMax T) / (X - XMin T),XMax T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最大值,XMin T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最小值;
所述第二预测规则对应的表达式为:
HVMT+1 = lower(HVMT - β( HVMT - XMaxT))
HVMT是所述第二虚拟机在所述第二阶段运行周期中分配的所述处理器核心的数量,X是所述第二虚拟机申请的所述处理器核心的数量,lower代表向上取整, HVMT+1 是预测的第二虚拟机在所述第三阶段运行周期中使用的所述处理器核心的数量的预测值,β是一个属于(0,1]的值,β=(XMax T - XMin T ) / ( HVMT - XMin T),XMax T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最大值,XMin T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最小值。
可选地,所述装置还包括:
第一虚拟机创建模块,用于响应于所述服务器的启动操作,在所述服务器中创建所述第一虚拟机;
第一虚拟机处理器核心分配模块,用于将所述服务器拥有的所述处理器核心分配至所述第一虚拟机中。
可选地,所述装置还包括:
第二虚拟机处理器核心取出模块,用于将从所述第二虚拟机中取出的所述处理器核心分配至除所述第二虚拟机外的高优先级虚拟机中。
可选地,所述装置还包括:
第一虚拟机处理器核心获取模块,用于将未分配至所述高优先级虚拟机中的所述处理器核心分配至所述第一虚拟机中。
可选地,所述装置还包括:
第二虚拟机处理器核心释放模块,用于响应于所述第二虚拟机停止运行,将所述第二虚拟机中的所述处理器核心分配至除所述第二虚拟机外的高优先级虚拟机中。
可选地,所述装置还包括:
第一虚拟机接收释放处理器核心模块,用于将未分配至所述高优先级虚拟机中的所述处理器核心分配至所述第一虚拟机中。
可选地,所述第二虚拟机创建模块包括:
管理程序启动子模块,用于响应于接收到所述虚拟机创建请求,启动所述服务器中的管理程序;
管理程序运行子模块,用于通过所述管理程序,在所述服务器中创建所述第二虚拟机。
可选地,所述装置还包括:
虚拟机创建失败消息返回模块,用于响应于所述第二虚拟机需求的处理器核心数量值大于所述第一虚拟机中的处理器核心数量值,向所述虚拟机创建请求的发起方发送虚拟机创建失败消息。
可选地,所述第一处理器核心分配模块包括:
处理器核心数量值确定子模块,用于根据所述虚拟机创建请求,确定对应的处理器核心数量值;
处理器核心取出子模块,用于从所述第一虚拟机中取出所述处理器核心数量值对应的多个所述处理器核心;
第二虚拟机处理器核心分配子模块,用于将多个所述处理器核心分配至所述第二虚拟机。
可选地,所述处理器核心使用数量监测模块包括:
虚拟机监控管理程序启动子模块,用于响应于所述第二虚拟机开始运行,启动预设的虚拟机监控管理程序;
处理器核心数量确定子模块,用于通过所述虚拟机监控管理程序,在所述第一阶段运行周期中对所述第二虚拟机进行监控,确定所述第二虚拟机在所述第一阶段运行周期中实际使用的所述处理器核心的数量。
可选地,所述处理器核心数量确定子模块包括:
进程运行状态确定子模块,用于在所述第一阶段运行周期中的每个运行周期中,通过所述虚拟机监控管理程序检测所述第二虚拟机中的每个所述处理器核心中的进程的运行状态;
处理器核心状态确定子模块,用于根据所述进程的运行状态,确定所述处理器核心的状态;
实际使用数量确定子模块,用于根据所述第二虚拟机中的每个所述处理器核心的状态,确定实际使用的所述处理器核心的数量。
可选地,所述处理器核心状态确定子模块包括:
空闲状态确定子模块,用于当所述进程的运行状态为空闲状态时,确定所述处理器核心的状态为空闲状态;
忙碌状态确定子模块,用于当所述进程的运行状态为忙碌使用状态时,确定所述处理器核心的状态为忙碌状态。
可选地,所述实际使用数量确定子模块包括:
忙碌状态处理器核心数量确定子模块,用于确定所述处理器核心的状态为忙碌状态的所述处理器核心的数量;
数量获取子模块,用于将忙碌状态的所述处理器核心的数量作为实际使用的所述处理器核心的数量。
可选地,所述第二处理器核心分配模块包括:
处理器核心数量确定子模块,用于响应于所述第一阶段运行周期运行结束,确定所述第二虚拟机中当前拥有的所述处理器核心的数量;
处理器核心分配子模块,用于将所述第二虚拟机中当前拥有的所述处理器核心的数量变更为所述第一预测值对应的数量。
可选地,所述第四处理器核心分配模块包括:
预测值确定子模块,用于在所述第三阶段运行周期的每一个运行周期结束时,确定下一运行周期使用的所述处理器核心数量的预测值;
第四处理器核心分配子模块,用于在每个运行周期开始时,为所述第二虚拟机分配对应数量的所述处理器核心。
可选地,所述装置还包括:
预测停止子模块,用于响应于所述第二虚拟机中的所述处理器核心的使用数量的监测值为零,停止对下一运行周期的所述处理器核心的使用数量的预测。
可选地,所述第一虚拟机中至少存在一个所述处理器核心。
基于同一发明构思,本申请另一实施例提供一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请上述任一实施例所述的处理器核心分配方法中的步骤。
基于同一发明构思,本申请另一实施例提供一种电子设备500,如图5所示。图5是本申请一实施例示出的一种电子设备的示意图,包括存储器502、处理器501及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行时实现本申请上述任一实施例所述处理器核心分配方法中的步骤。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的处理器核心分配方法、装置、设备及存储介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (20)

1.一种处理器核心分配方法,其特征在于,所述方法包括:
响应于接收到虚拟机创建请求,在服务器中创建第二虚拟机,所述第二虚拟机为高优先级虚拟机;
将所述虚拟机创建请求对应的数量的处理器核心分配至所述第二虚拟机,所述处理器核心是从预先创建的第一虚拟机中取出的,所述第一虚拟机为低优先级虚拟机;
监测所述第二虚拟机在第一阶段运行周期中的每个运行周期的实际使用的所述处理器核心的数量,确定所述第二虚拟机在每个运行周期中实际使用的所述处理器核心的数量的最大值,得到多个处理器核心数量最大值;
将所述多个处理器核心数量最大值的平均值作为第二阶段运行周期的所述处理器核心的数量的第一预测值,所述第二阶段运行周期为所述第一阶段运行周期后的第一个运行周期;
在所述第二阶段运行周期中,为所述第二虚拟机分配所述第一预测值对应的数量的所述处理器核心;
响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量等于所述第一预测值,根据预设的第一预测规则,对第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,所述第三阶段运行周期为所述第二阶段运行周期后的运行周期;
响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量小于所述第一预测值,根据预设的第二预测规则,对所述第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,得到第二预测值;
根据所述第二预测值,在所述第三阶段运行周期的第一个运行周期中为所述第二虚拟机分配对应数量的所述处理器核心;
从所述第三阶段运行周期的第二个运行周期开始,根据前一个运行周期的预测值与所述处理器核心的监测值之间的大小关系,通过对应的预测规则对下一个运行周期中使用的所述处理器核心的数量进行预测;
在所述第三阶段运行周期的后续的每个运行周期中,为所述第二虚拟机分配对应数量的所述处理器核心;
所述第一预测规则对应的表达式为:
HVMT+1 = upper(HVMT + α(X – HVMT))
HVMT是所述第二虚拟机在所述第二阶段运行周期中分配的所述处理器核心的数量,X是所述第二虚拟机申请的所述处理器核心的数量,upper代表向上取整, HVMT+1是预测的第二虚拟机在所述第三阶段运行周期中使用的所述处理器核心的数量的预测值,α是一个属于(0,1]的值,α=( X - XMax T) / (X -XMin T),XMax T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最大值,XMin T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最小值;
所述第二预测规则对应的表达式为:
HVMT+1 = lower(HVMT - β( HVMT - XMax T))
HVMT是所述第二虚拟机在所述第二阶段运行周期中分配的所述处理器核心的数量,X是所述第二虚拟机申请的所述处理器核心的数量,lower代表向下取整, HVMT+1是预测的第二虚拟机在所述第三阶段运行周期中使用的所述处理器核心的数量的预测值,β是一个属于(0,1]的值,β=(XMax T - XMin T ) / ( HVMT - XMin T),XMax T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最大值,XMin T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最小值。
2.根据权利要求1所述的方法,其特征在于,在服务器中创建第二虚拟机之前,所述方法还包括:
响应于所述服务器的启动操作,在所述服务器中创建所述第一虚拟机;
将所述服务器拥有的所述处理器核心分配至所述第一虚拟机中。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将从所述第二虚拟机中取出的所述处理器核心分配至除所述第二虚拟机外的高优先级虚拟机中。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
将未分配至所述高优先级虚拟机中的所述处理器核心分配至所述第一虚拟机中。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述第二虚拟机停止运行,将所述第二虚拟机中的所述处理器核心分配至除所述第二虚拟机外的高优先级虚拟机中。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
将未分配至所述高优先级虚拟机中的所述处理器核心分配至所述第一虚拟机中。
7.根据权利要求1所述的方法,其特征在于,所述响应于接收到虚拟机创建请求,在服务器中创建第二虚拟机,包括:
响应于接收到所述虚拟机创建请求,启动所述服务器中的管理程序;
通过所述管理程序,在所述服务器中创建所述第二虚拟机。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
响应于所述第二虚拟机需求的处理器核心数量值大于所述第一虚拟机中的处理器核心数量值,向所述虚拟机创建请求的发起方发送虚拟机创建失败消息。
9.根据权利要求1所述的方法,其特征在于,所述将所述虚拟机创建请求对应的数量的处理器核心分配至所述第二虚拟机,包括:
根据所述虚拟机创建请求,确定对应的处理器核心数量值;
从所述第一虚拟机中取出所述处理器核心数量值对应的多个所述处理器核心;
将多个所述处理器核心分配至所述第二虚拟机。
10.根据权利要求1所述的方法,其特征在于,所述监测所述第二虚拟机在第一阶段运行周期中的每个运行周期的实际使用的所述处理器核心的数量,包括:
响应于所述第二虚拟机开始运行,启动预设的虚拟机监控管理程序;
通过所述虚拟机监控管理程序,在所述第一阶段运行周期中对所述第二虚拟机进行监控,确定所述第二虚拟机在所述第一阶段运行周期中实际使用的所述处理器核心的数量。
11.根据权利要求10所述的方法,其特征在于,所述通过所述虚拟机监控管理程序,在所述第一阶段运行周期中对所述第二虚拟机进行监控,确定所述第二虚拟机在所述第一阶段运行周期中实际使用的所述处理器核心的数量,包括:
在所述第一阶段运行周期中的每个运行周期中,通过所述虚拟机监控管理程序检测所述第二虚拟机中的每个所述处理器核心中的进程的运行状态;
根据所述进程的运行状态,确定所述处理器核心的状态;
根据所述第二虚拟机中的每个所述处理器核心的状态,确定实际使用的所述处理器核心的数量。
12.根据权利要求11所述的方法,其特征在于,所述根据所述进程的运行状态,确定所述处理器核心的状态,包括:
当所述进程的运行状态为空闲状态时,确定所述处理器核心的状态为空闲状态;
当所述进程的运行状态为忙碌使用状态时,确定所述处理器核心的状态为忙碌状态。
13.根据权利要求11所述的方法,其特征在于,所述根据所述第二虚拟机中的每个所述处理器核心的状态,确定实际使用的所述处理器核心的数量,包括:
确定所述处理器核心的状态为忙碌状态的所述处理器核心的数量;
将忙碌状态的所述处理器核心的数量作为实际使用的所述处理器核心的数量。
14.根据权利要求1所述的方法,其特征在于,所述在所述第二阶段运行周期中,为所述第二虚拟机分配所述第一预测值对应的数量的所述处理器核心,包括:
响应于所述第一阶段运行周期运行结束,确定所述第二虚拟机中当前拥有的所述处理器核心的数量;
将所述第二虚拟机中当前拥有的所述处理器核心的数量变更为所述第一预测值对应的数量。
15.根据权利要求1所述的方法,其特征在于,所述在所述第三阶段运行周期的后续的每个运行周期中,为所述第二虚拟机分配对应数量的所述处理器核心,包括:
在所述第三阶段运行周期的每一个运行周期结束时,确定下一运行周期使用的所述处理器核心数量的预测值;
在每个运行周期开始时,为所述第二虚拟机分配对应数量的所述处理器核心。
16.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述第二虚拟机中的所述处理器核心的使用数量的监测值为零,停止对下一运行周期的所述处理器核心的使用数量的预测。
17.根据权利要求1所述的方法,其特征在于,所述第一虚拟机中至少存在一个所述处理器核心。
18.一种处理器核心分配装置,其特征在于,所述装置包括:
第二虚拟机创建模块,用于响应于接收到虚拟机创建请求,在服务器中创建第二虚拟机,所述第二虚拟机为高优先级虚拟机;
处理器核心分配模块,用于将所述虚拟机创建请求对应的数量的处理器核心分配至所述第二虚拟机,所述处理器核心是从预先创建的第一虚拟机中取出的,所述第一虚拟机为低优先级虚拟机;
处理器核心使用数量监测模块,用于监测所述第二虚拟机在第一阶段运行周期中的每个运行周期的实际使用的所述处理器核心的数量,确定所述第二虚拟机在每个运行周期中实际使用的所述处理器核心的数量的最大值,得到多个处理器核心数量最大值;
第一预测模块,用于将所述多个处理器核心数量最大值的平均值作为第二阶段运行周期的所述处理器核心的数量的第一预测值,所述第二阶段运行周期为所述第一阶段运行周期后的第一个运行周期;
第二处理器核心分配模块,用于在所述第二阶段运行周期中,为所述第二虚拟机分配所述第一预测值对应的数量的所述处理器核心;
第二预测模块,用于响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量等于所述第一预测值,根据预设的第一预测规则,对第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,所述第三阶段运行周期为所述第二阶段运行周期后的运行周期;
第三预测模块,用于响应于所述第二阶段运行周期中监测到的所述第二虚拟机使用的所述处理器核心的数量小于所述第一预测值,根据预设的第二预测规则,对所述第三阶段运行周期中的第一个运行周期中,所述第二虚拟机使用的所述处理器核心的数量进行预测,得到第二预测值;
第三处理器核心分配模块,用于根据所述第二预测值,在所述第三阶段运行周期的第一个运行周期中为所述第二虚拟机分配对应数量的所述处理器核心;
第四预测模块,用于从所述第三阶段运行周期的第二个运行周期开始,根据前一个运行周期的预测值与所述处理器核心的监测值之间的大小关系,通过对应的预测规则对下一个运行周期中使用的所述处理器核心的数量进行预测;
第四处理器核心分配模块,用于在所述第三阶段运行周期的后续的每个运行周期中,为所述第二虚拟机分配对应数量的所述处理器核心;
所述第一预测规则对应的表达式为:
HVMT+1 = upper(HVMT + α(X – HVMT))
HVMT是所述第二虚拟机在所述第二阶段运行周期中分配的所述处理器核心的数量,X是所述第二虚拟机申请的所述处理器核心的数量,upper代表向上取整, HVMT+1是预测的第二虚拟机在所述第三阶段运行周期中使用的所述处理器核心的数量的预测值,α是一个属于(0,1]的值,α=( X - XMax T) / (X -XMin T),XMax T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最大值,XMin T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最小值;
所述第二预测规则对应的表达式为:
HVMT+1 = lower(HVMT - β( HVMT - XMax T))
HVMT是所述第二虚拟机在所述第二阶段运行周期中分配的所述处理器核心的数量,X是所述第二虚拟机申请的所述处理器核心的数量,lower代表向下取整, HVMT+1是预测的第二虚拟机在所述第三阶段运行周期中使用的所述处理器核心的数量的预测值,β是一个属于(0,1]的值,β=(XMax T - XMin T ) / ( HVMT - XMin T),XMax T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最大值,XMin T为所述第二虚拟机在所述第二阶段运行周期中使用的所述处理器核心数量的最小值。
19.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时,实现如权利要求1至17任一所述的方法中的步骤。
20.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现如权利要求1至17任一所述的方法的步骤。
CN202311515313.6A 2023-11-14 2023-11-14 一种处理器核心分配方法、装置、设备及存储介质 Active CN117234742B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311515313.6A CN117234742B (zh) 2023-11-14 2023-11-14 一种处理器核心分配方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311515313.6A CN117234742B (zh) 2023-11-14 2023-11-14 一种处理器核心分配方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN117234742A CN117234742A (zh) 2023-12-15
CN117234742B true CN117234742B (zh) 2024-02-09

Family

ID=89084671

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311515313.6A Active CN117234742B (zh) 2023-11-14 2023-11-14 一种处理器核心分配方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN117234742B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103823714A (zh) * 2014-01-15 2014-05-28 浙江大学 一种基于虚拟化下NUMA节点内存QoS的调节方法及装置
CN104283946A (zh) * 2014-09-26 2015-01-14 东北大学 一种单物理机下多虚拟机的资源自适应调整系统及方法
CN105589751A (zh) * 2015-11-27 2016-05-18 杭州华三通信技术有限公司 一种物理资源调度方法及装置
CN106445690A (zh) * 2016-10-17 2017-02-22 深圳市深信服电子科技有限公司 虚拟机资源的动态调配方法及装置
CN108762885A (zh) * 2018-04-27 2018-11-06 北京奇艺世纪科技有限公司 一种虚拟机创建方法、装置、管理设备及终端设备
US10248450B2 (en) * 2016-07-25 2019-04-02 Fujitsu Limited Virtual machine migration using a prediction algorithm
CN110362377A (zh) * 2018-04-09 2019-10-22 阿里巴巴集团控股有限公司 虚拟机的调度方法和装置
CN110362388A (zh) * 2018-04-11 2019-10-22 中移(苏州)软件技术有限公司 一种资源调度方法及装置
CN110673928A (zh) * 2019-09-29 2020-01-10 天津卓朗科技发展有限公司 线程绑定方法、装置、存储介质及服务器
CN113849260A (zh) * 2020-06-28 2021-12-28 华为技术有限公司 一种实例的处理核分配方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105378669A (zh) * 2013-07-19 2016-03-02 惠普发展公司,有限责任合伙企业 虚拟机资源管理系统及其方法
JP2017107274A (ja) * 2015-12-07 2017-06-15 富士通株式会社 仮想マシン増設方法、情報処理装置および仮想マシン増設システム

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103823714A (zh) * 2014-01-15 2014-05-28 浙江大学 一种基于虚拟化下NUMA节点内存QoS的调节方法及装置
CN104283946A (zh) * 2014-09-26 2015-01-14 东北大学 一种单物理机下多虚拟机的资源自适应调整系统及方法
CN105589751A (zh) * 2015-11-27 2016-05-18 杭州华三通信技术有限公司 一种物理资源调度方法及装置
US10248450B2 (en) * 2016-07-25 2019-04-02 Fujitsu Limited Virtual machine migration using a prediction algorithm
CN106445690A (zh) * 2016-10-17 2017-02-22 深圳市深信服电子科技有限公司 虚拟机资源的动态调配方法及装置
CN110362377A (zh) * 2018-04-09 2019-10-22 阿里巴巴集团控股有限公司 虚拟机的调度方法和装置
CN110362388A (zh) * 2018-04-11 2019-10-22 中移(苏州)软件技术有限公司 一种资源调度方法及装置
CN108762885A (zh) * 2018-04-27 2018-11-06 北京奇艺世纪科技有限公司 一种虚拟机创建方法、装置、管理设备及终端设备
CN110673928A (zh) * 2019-09-29 2020-01-10 天津卓朗科技发展有限公司 线程绑定方法、装置、存储介质及服务器
CN113849260A (zh) * 2020-06-28 2021-12-28 华为技术有限公司 一种实例的处理核分配方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
云计算环境下基于需求预测的虚拟机节能分配方法研究;吴毅华;曹健;李明禄;;小型微型计算机系统(04);全文 *

Also Published As

Publication number Publication date
CN117234742A (zh) 2023-12-15

Similar Documents

Publication Publication Date Title
US9727355B2 (en) Virtual Hadoop manager
US9495215B2 (en) Optimizing virtual machines placement in cloud computing environments
US20150312167A1 (en) Maximizing server utilization within a datacenter
CN107851039A (zh) 用于资源管理的系统和方法
JP2005182796A (ja) グリッド・システム資源の自律的制御のための装置、システム、および方法
US20170017511A1 (en) Method for memory management in virtual machines, and corresponding system and computer program product
JP2012058815A (ja) 計算機システム、及び、計算機システムの制御方法
JP2012094030A (ja) 計算機システム及び処理制御方法
JP2017016505A (ja) 起動制御プログラム、起動制御方法及び起動制御装置
JP2020531967A (ja) 分散システム資源配分の方法、装置、及びシステム
CN110750336B (zh) 一种OpenStack虚拟机内存热扩容方法
CN111258746A (zh) 资源分配方法和服务设备
CN111798113A (zh) 资源分配方法、装置、存储介质和电子设备
US11201824B2 (en) Method, electronic device and computer program product of load balancing for resource usage management
CN109960579B (zh) 一种调整业务容器的方法及装置
US8001341B2 (en) Managing dynamically allocated memory in a computer system
CN117234742B (zh) 一种处理器核心分配方法、装置、设备及存储介质
CN109739634A (zh) 一种原子任务执行方法及装置
CN113595772A (zh) 一种多用户的靶场环境中场景复用方法与装置
CN109189581B (zh) 一种作业调度方法和装置
US9971683B1 (en) Automatic computer memory management coordination across a group of servers
CN116400999A (zh) 资源调度方法、设备、存储介质和系统
CN106131187B (zh) 一种授权的控制方法及装置
CN115794306A (zh) 基于抢占实例的资源分配方法及装置、电子设备及介质
CN114356567A (zh) 一种slurm集群的伸缩方法、系统及设备

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
GR01 Patent grant
GR01 Patent grant