科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道服务器组件2006-2010 英特尔处理器虚拟化技术简介

2006-2010 英特尔处理器虚拟化技术简介

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

服务器虚拟化已经成为当前企业IT架构中越来越重要的组成部分,可能仍然有不少企业的IT架构没有涉足服务器虚拟化这一领域,但我相信所有的IT主管都会关注这一技术的发展与进步。

作者:赵效民 来源:ZDNet【原创】 2010年6月7日

关键字: 虚拟化 英特尔 CPU

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共3页)

第三代虚拟化技术:Pause-Loop Exiting

2010年3月,英特尔推出了最新的6核32nm处理器家族Westmere,随它而来的也有一个新的VT-x虚拟化技术,即Pause-Loop Exiting(PLE,暂停-循环退出),它的主要用意就是减少因为循环等待而造成了CPU虚拟资源的浪费。

而一个拥有两个vCPU的SMP(多对称多处理器)虚拟机中,由于串行代码仍然大量存在(不可能全是并行的代码),所以在串行代码执行时的保护机制,会给vCPU“上锁”,此时另一个vCPU则将进入处旋状态,等待得到这个锁来执行指令(这与编程相关),在这个不断的自旋等待中,就造成了CPU资源的浪费,vCPU的数量越多,这种影响就会越严重。而PLE则可以将这种循环锁的造成的CPU资源的浪费大幅度降低。

虚拟机中两个vCPU的锁止与等待示意图

PLE通过设置自旋等待暂停指令,以及相应的暂停周期来触发相应的退出动作。它定义了两个周期间隔,一个PLE_Gap,它是指在一个自旋循环中两个暂停指令的间隔,而另一个是PLE_Window,是指在执行虚拟机退出前所经过的等待循环的周期。比如,当一个暂停指令发出时,如果与上一代暂停指令之间超出了PLE_Gap的规定,那么PLE就设定开始了一个新的循环,而如果没有超出,那么就进行周期的累加,直到超过PLE_Window即触发虚拟机退出动作。VMM可以对于PLE的设定进行配置。

这是一个典型的PLE指令模式,当得到锁的尝试失败后,即发出暂停指令,如果没有得到锁的时长超过了PLE_Window,那么就触VM Exit操作,而如果在PLE_Window之内得到了锁,那么显然下一次的暂停指令将会超出标准的PLE_Gap,从而开始新的一个自旋等待周期。PEL的最大作用在于检测锁抢占状态,如果发生了锁抢占状况(上图中的上面的状态,其他vCPU经历了多次尝试仍然无法获得锁),那么VMM将重新进行vCPU的规划与调配,以尽量降低vCPU的无效时间

通过采用PLE,我们可以看出来,虚拟机越多(vCPU越多)时,PLE较非PLE平台的性能最多可提高40%,性能优化效果非常明显

从Nehalem开始,超线程(HT)技术也正式回归英特尔处理器,从而也让虚拟化进一步获益,因为它能提供两倍的逻辑处理器,这也意味着多虚拟机的并行处理能力的进一步增强,而PLE则在此基础上锦上添花,使vCPU的利用效率更高,而这也是最新一代Westmere相对于Nehalem处理器,在虚拟化方面的最大进步。而在未来,英特尔还将进步完善VT-x技术,使x86虚拟化平台的CPU系统开销再创新低。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章