[发明专利]一种基于动态PLE技术的虚拟机协同调度方法有效

专利信息
申请号: 201410029589.8 申请日: 2014-01-22
公开(公告)号: CN103744728B 公开(公告)日: 2017-02-08
发明(设计)人: 管海兵;马汝辉;李健;黄彬弟;周凡夫 申请(专利权)人: 上海交通大学
主分类号: G06F9/48 分类号: G06F9/48;G06F9/455
代理公司: 上海旭诚知识产权代理有限公司31220 代理人: 郑立
地址: 200240 *** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 动态 ple 技术 虚拟机 协同 调度 方法
【说明书】:

技术领域

发明涉及计算机虚拟机性能监控和虚拟机调度领域,尤其涉及一种基于动态PLE技术的虚拟机协同调度方法。

背景技术

虚拟化技术抽象计算机的物理资源,向上呈现虚拟硬件接口,使得多个操作系统能够在同一物理设备上运行。利用虚拟化技术,将原本运行于多台物理设备的服务整合到同一台物理服务器上,提高物理资源利用率的同时减少了企业在IT基础设施上的管理维护成本。另一方面通过虚拟化技术对物理资源的管理,能够对资源进行动态配置,对于各种业务适应性更强。同时虚拟化技术能够对虚拟服务器进行监控和隔离,确保虚拟服务器的正常运行以及虚拟服务器之间能够相互独立。此外,虚拟服务器能够更快捷的进行复制转移,提高可用性以及灾难恢复速度。因此,虚拟化技术成为云计算以及数据中心不可或缺的一部分。

虚拟机监控器(Virtual Machine Monitor,VMM)是目前主流的虚拟化技术,介于硬件与传统操作系统之间,负责管理计算机的物理资源,包括内存、CPU以及I/O设备等硬件资源,并虚拟出硬件接口供上层使用,使得多个操作系统能够在同一个物理设备上运行。

同时为了能够更好地提升虚拟化服务器的性能,硬件上也添加了对虚拟化的支持。Intel的VT系列虚拟化技术,提供了对虚拟化技术的支持,使得虚拟机的性能得到显著提升。

虚拟机监控器的引入,使得很多在传统操作系统中已经解决的问题出现了新的变化,同时也使得传统操作系统中现有的一些机制出现新的问题。在传统的操作系统中自旋锁(Spin-Lock)用于解决CPU之间对于共享资源的竞争。当多个CPU需要获取同一个自旋锁时,只有一个CPU可以持有该锁,其它的CPU则一直循环检测自旋锁是否被释放。传统的操作系统中持有自旋锁的CPU在非常短的时间内会将锁释放,这样等待自旋锁的CPU循环检测的时间并不会很长。但在虚拟化环境中,虚拟机中持有自旋锁的VCPU可能被虚拟机监控器调度出物理CPU,使得该虚拟机中等待该自旋锁的其它VCPU一直处于循环检测自旋锁的状态,该问题被称为LHP(Lock Holder Preemption,自旋锁持有者被抢占)问题,会导致虚拟机性能的下降。

为了解决上述LHP问题,现有的技术方案包括虚拟机中VCPU的协同调度和VCPU的忙等检测。虚拟机中VCPU的协同调度指的是将虚拟机中的一组VCPU(可以是虚拟机中全部VCPU也可以是部分VCPU)同时调度进物理CPU,这样可以有效减少LHP现象的出现,但是这种方法会造成CPU资源的碎片化以及系统延迟的不确定性增加等问题。VCPU的忙等检测,指的是在检测到VCPU忙等时将VCPU调度出物理CPU,主要分为基于虚拟机的VCPU忙等检测和基于硬件支持的VCPU忙等检测。基于虚拟机的VCPU忙等检测需要对虚拟机操作系统进行修改,在虚拟机中出现VCPU忙等时通知VMM,这种方法因为需要修改虚拟机操作系统,适用范围受限制。基于硬件支持的VCPU忙等检测需要设置虚拟机控制结构中的忙等检测参数,这些参数在计算机处于不同负载下的最优值是需要变化的。将虚拟机中VCPU的协同调度与参数动态调整的VCPU忙等检测相结合可以降低协同调度带来的负面影响,同时提高虚拟机的性能。

当前基于硬件支持的VCPU忙等检测主要是PLE(Pause Loop Exit)技术,其中忙等检测参数是PLE_GAP和PLE_WINDOW。在VCPU进行忙等时,会执行Pause指令,若两个连续的Pause指令在PLE_GAP指定的时间范围内,则可以认为该VCPU是由于等待同一个自旋锁而导致的忙等,当这种连续的Pause指令超过PLE_WINDOW指定的时间范围时,则认为该VCPU忙等时间过长,此时PLE向VMM层的调度模块提供触发信息,调度模块将该VCPU调度出物理CPU,之后从物理CPU的运行队列中选择下一个VCPU进入该物理CPU中运行,触发执行过程如图1所示。

现有PLE技术的运用中有将参数固定不变的静态PLE技术,也有根据计算机在不同负载时动态变化参数以取其最优值的动态PLE技术。

在现有的技术方案中,对VPN的协同调度和动态PLE技术只单独使用其中之一,前者仅仅基于静态PLE技术,其利用PLE的触发信息对虚拟机中的VCPU进行协同调度,并没有考虑在不同负载情况下PLE参数的调整。后者对PLE参数在不同负载情况下进行动态调整,并没有利用VCPU的协同调度减少LHP的发生。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410029589.8/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top