虚拟机CPU区间绑定的实现方法及系统技术方案

技术编号:36894080 阅读:14 留言:0更新日期:2023-03-15 22:15
本发明专利技术公开了虚拟机CPU区间绑定的实现方法及系统,属于云计算技术领域,要解决的技术问题为如何在保证超分配的前提下、减少CPU的上下文切换。包括如下步骤:配置虚拟机的规格,在虚拟规格中定义CPU绑定信息;对CPU绑定区间进行验证,验证通过后获取CPU绑定算法;基于CPU绑定区间和CPU绑定算法,计算出虚拟机CPU和物理机CPU的绑定关系,生成映射信息;解析映射信息,将虚拟机PCU到物理机CPU的映射关系应用到虚拟机,构造虚拟机XML;调用虚拟化接口实现虚拟机创建,完成CPU区间绑定的虚拟机。完成CPU区间绑定的虚拟机。完成CPU区间绑定的虚拟机。

【技术实现步骤摘要】
虚拟机CPU区间绑定的实现方法及系统


[0001]本专利技术涉及云计算
,具体地说是虚拟机CPU区间绑定的实现方法及系统。

技术介绍

[0002]随着openstack的快速发展壮大,越来越多的用户开始选择openstack作为云计算管理平台。而Openstack作为虚拟资源的管理平台,超分配功能是虚拟化的基础功能之一,使用超分配技术可以模拟出多于实际物理资源数量的虚拟资源,进而提高物理资源的使用率。
[0003]不过目前openstack提供方案中,超分配特性只能在共享CPU方案下支持,但是共享CPU方案,又有自身的弊端:虚拟CPU共享使用物理CPU池中的所有CPU,当物理CPU数量较多同时压力较大时,虚拟CPU会动态映射到不同的物理CPU上,比如某虚拟CPU上一时刻对应物理0号CPU,而下一时刻又对应物理12号CPU,这样就会导致不断的上下文切换,进而导致性能的大幅下降。
[0004]所谓的上下文切换,就是指CPU在某一时刻A执行任务1,此时CPU缓存(CPU的寄存器和计数器等)的数据都是任务1的数据。到后来某一时刻B,任务1还没有执行完毕,由于CPU时间片用完被调度用来执行任务2,此时CPU就需要把A时刻的数据先备份保存下来,同时再把任务2的数据加载进来,完成任务2。完成任务2之后,CPU时间片继续执行任务1,此时需要将之前备份的数据重新加载进来,才能继续执行任务1。
[0005]每次上下文切换都需要几十纳秒到数微秒的CPU时间。这个时间还是相当可观的,特别是在进程上下文切换次数较多的情况下,很容易导致CPU将大量时间耗费在寄存器、内核栈以及虚拟内存等资源的保存和恢复上,进而大大缩短了真正运行进程的时间。
[0006]如何在保证超分配的前提下、减少CPU的上下文切换,是需要解决的技术问题。

技术实现思路

[0007]本专利技术的技术任务是针对以上不足,提供是虚拟机CPU区间绑定的实现方法及系统,来解决如何在保证超分配的前提下、减少CPU的上下文切换的技术问题。
[0008]第一方面,本专利技术一种虚拟机CPU区间绑定的实现方法,应用于Openstack中虚拟机CPU与物理机CPU的绑定,所述方法包括如下步骤:
[0009]配置虚拟机的规格,在虚拟规格中定义CPU绑定信息,所述CPU绑定信息至少包括CPU绑定算法以及CPU绑定区间;
[0010]创建虚拟机时读取包括CPU绑定信息的规格,对CPU绑定区间进行验证,验证通过后获取CPU绑定算法;
[0011]基于CPU绑定区间和CPU绑定算法,计算出虚拟机CPU和物理机CPU的绑定关系,生成映射信息;
[0012]解析映射信息,将虚拟机PCU到物理机CPU的映射关系应用到虚拟机,构造虚拟机XML;
[0013]调用虚拟化接口实现虚拟机创建,完成CPU区间绑定的虚拟机。
[0014]作为优选,CPU以列表的形式展示,形成CPU列表;
[0015]所述CPU绑定算法包括:
[0016]随机选择,所述随机选择为在指定区间内、从CPU列表中随机选择部分CPU;
[0017]顺序获取,所述顺序获取为在指定区间内、从CPU列表中选择排序在前列的CPU。
[0018]作为优选,所述CPU绑定区间以字符的形式展示,支持常规CPU列声明方式,所述常规CPU列声明方式包括单个声明、区间声明和取反声明。
[0019]作为优选,对CPU绑定区间进行验证,包括格式校验、逻辑校验和CPU数量校验,CPU数量校验需要满足:用户输入的CPU数量不允许小于规格中声明的虚拟CPU数量。
[0020]作为优选,对CPU绑定区间进行验证,验证通过后获取CPU绑定算法,包括如下步骤:
[0021]对规格中定义的CPU绑定区间进行验证;
[0022]如果CPU绑定区间为空,表示不创建CPU区间绑定虚拟机,而是创建普通虚拟机;
[0023]如果规格中有声明CPU绑定区间,则读取CPU绑定算法;
[0024]如果规格中有声明指定的CPU绑定算法,则选用指定的CPU绑定算法,如果没有声明CPU绑定算法,则选用默认的CPU绑定算法。
[0025]第二方面,本专利技术一种虚拟机CPU区间绑定的实现系统,用于通过执行如第一方面任一项所述的一种虚拟机CPU区间绑定的实现方法执行Openstack中虚拟机CPU与物理机CPU的绑定,所述系统包括:
[0026]规格配置模块,所述规格配置模块通过配置界面对外交互,用于配置虚拟机的规格,在虚拟规格中定义CPU绑定信息,所述CPU绑定信息至少包括CPU绑定算法以及CPU绑定区间;
[0027]信息验证模块,所述信息验证模块用于创建虚拟机时读取包括CPU绑定信息的规格,对CPU绑定区间进行验证,验证通过后获取CPU绑定算法;
[0028]映射构建模块,所述映射构建模块用于基于CPU绑定区间和CPU绑定算法,计算出虚拟机CPU和物理机CPU的绑定关系,生成映射信息;
[0029]虚拟机XML构建模块,所述虚拟机XML构建模块用于解析映射信息,将虚拟机PCU到物理机CPU的映射关系应用到虚拟机,构造虚拟机XML;
[0030]虚拟机构建模块,所述虚拟机构建模块用于调用虚拟化接口实现虚拟机创建,完成CPU区间绑定的虚拟机。
[0031]作为优选,CPU以列表的形式展示,形成CPU列表;
[0032]所述CPU绑定算法包括:
[0033]随机选择,所述随机选择为在指定区间内、从CPU列表中随机选择部分CPU;
[0034]顺序获取,所述顺序获取为在指定区间内、从CPU列表中选择排序在前列的CPU。
[0035]作为优选,所述CPU绑定区间以字符的形式展示,支持常规CPU列声明方式,所述常规CPU列声明方式包括单个声明、区间声明和取反声明。
[0036]作为优选,对CPU绑定区间进行验证,包括格式校验、逻辑校验和CPU数量校验,CPU数量校验需要满足:用户输入的CPU数量不允许小于规格中声明的虚拟CPU数量。
[0037]作为优选,所述信息验证模块用于执行如下:
[0038]对规格中定义的CPU绑定区间进行验证;
[0039]如果CPU绑定区间为空,表示不创建CPU区间绑定虚拟机,而是创建普通虚拟机;
[0040]如果规格中有声明CPU绑定区间,则读取CPU绑定算法;
[0041]如果规格中有声明指定的CPU绑定算法,则选用指定的CPU绑定算法,如果没有声明CPU绑定算法,则选用默认的CPU绑定算法。
[0042]本专利技术的虚拟机CPU区间绑定的实现方法及系统具有以下优点:
[0043]1、实现虚拟CPU与物理CPU的一对一绑定,减少CPU上下文切换,从而大幅提升虚拟CPU性能;
[0044]2、虚拟CPU不独占物理CPU,保留CPU超分配能力;
[0045]3、算法解耦,可以灵活的增删CP本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种虚拟机CPU区间绑定的实现方法,其特征在于,应用于Openstack中虚拟机CPU与物理机CPU的绑定,所述方法包括如下步骤:配置虚拟机的规格,在虚拟规格中定义CPU绑定信息,所述CPU绑定信息至少包括CPU绑定算法以及CPU绑定区间;创建虚拟机时读取包括CPU绑定信息的规格,对CPU绑定区间进行验证,验证通过后获取CPU绑定算法;基于CPU绑定区间和CPU绑定算法,计算出虚拟机CPU和物理机CPU的绑定关系,生成映射信息;解析映射信息,将虚拟机PCU到物理机CPU的映射关系应用到虚拟机,构造虚拟机XML;调用虚拟化接口实现虚拟机创建,完成CPU区间绑定的虚拟机。2.根据权利要求1所述的虚拟机CPU区间绑定的实现方法,其特征在于,CPU以列表的形式展示,形成CPU列表;所述CPU绑定算法包括:随机选择,所述随机选择为在指定区间内、从CPU列表中随机选择部分CPU;顺序获取,所述顺序获取为在指定区间内、从CPU列表中选择排序在前列的CPU。3.根据权利要求1所述的虚拟机CPU区间绑定的实现方法,其特征在于,所述CPU绑定区间以字符的形式展示,支持常规CPU列声明方式,所述常规CPU列声明方式包括单个声明、区间声明和取反声明。4.根据权利要求1所述的虚拟机CPU区间绑定的实现方法,其特征在于,对CPU绑定区间进行验证,包括格式校验、逻辑校验和CPU数量校验,CPU数量校验需要满足:用户输入的CPU数量不允许小于规格中声明的虚拟CPU数量。5.根据权利要求1所述的虚拟机CPU区间绑定的实现方法,其特征在于,对CPU绑定区间进行验证,验证通过后获取CPU绑定算法,包括如下步骤:对规格中定义的CPU绑定区间进行验证;如果CPU绑定区间为空,表示不创建CPU区间绑定虚拟机,而是创建普通虚拟机;如果规格中有声明CPU绑定区间,则读取CPU绑定算法;如果规格中有声明指定的CPU绑定算法,则选用指定的CPU绑定算法,如果没有声明CPU绑定算法,则选用默认的CPU绑定算法。6.一种虚拟机CPU区间绑定的实现系统,其特征在于,用于通过执行如权利要求1

5任一项所述的一种虚拟机CPU区间绑定的...

【专利技术属性】
技术研发人员:谢福平刘庆厉肃
申请(专利权)人:山东浪潮科学研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1