




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
多核环境下虚拟机VCPU调度研究 问题与挑战 吕翔 主要内容 多核环境下虚拟机系统的架构和两级调度框架多核环境下虚拟机VCPU调度所面临的主要问题和挑战现有解决机制及未来的研究方向 多核环境下虚拟机系统架构及两级调度框架 系统架构虚拟机系统的两级调度框架 系统架构 典型的基于多核平台的虚拟机系统可分为3层 1 硬件层 2 虚拟机监视器 3 虚拟机层 典型的基于多核平台的虚拟机系统体系结构 虚拟机系统的两级调度框架 虚拟机监视器负责的第一级调度 即VCPU在物理处理单元的调度客户操作系统负责的第二级调度 即线程或进程在VCPU上的调度 多核环境下虚拟机的两级调度框架 多核环境下虚拟机VCPU调度所面临的主要问题和挑战 语义缝隙问题多处理机操作系统同步机制问题共享cache问题不对称多核问题 语义缝隙问题 多核平台虚拟机系统所采用的体系结构导致了两级调度框架中的2个主体 客户操作系统与虚拟机监视器间存在着语义缝隙 这里所指的语义缝隙 是指客户操作系统与虚拟机监视器之间因为在整个系统中功能的划分而导致的对上层应用程序或底层硬件特征认知的差异 语义缝隙的存在 妨碍了虚拟机监视器对每个虚拟机有效的硬件资源分配 具体表现在以下2个方面 1 由于虚拟机监视器无法感知运行在虚拟机中的工作负载的特性 因此虚拟机系统工作负载的多样化和不可预测性 会使CPU资源分配变得困难 对具有时间性要求的工作负载 会产生更大的影响 2 虚拟机监视器没有建立IO事件与阻塞任务的关联 这会使响应性降低 尤其是在多种负载并存的情况下 影响更为严重 多处理器操作系统同步机制问题 自旋锁自旋锁是支持多处理器的操作系统内核中实现的一种主要的同步机制 它避免了阻塞型同步机制产生的上下文切换的开销 但它要求持有锁的时间很短 一个处理器拥有自旋锁的时间越长 其他处理器不得不自旋以等待释放该自旋锁的时间就越长 这样会导致优先级高的进程得不到及时调度 在虚拟机系统中 虚拟机监视器在调度时 缺乏对客户操作系统内核自旋锁持有情况的感知 会抢占一个正持有自旋锁的VCPU 此时 同一个虚拟机中的其他VCPU可能运行在其他的物理核上 等待着自旋锁的释放 这样会浪费大量的处理器周期 多达几十毫秒 严重地影响了系统性能 cross callsSolaris操作系统采用cross call 使用同步软件中断 机制来实现不同CPU之间的通信 当一个cross call被调用时 在得到硬件通知软件中断已经被传送到远端CPU之前 系统处于忙等状态 对于SPARC处理器 如果有其他未完成的待处理中断 远端CPU会发出一个NACK信号 此时 发送者会不断重试直到接收到ACK信号 如果远端CPU被抢占 那么发送者会处于一直自旋等待状态 在虚拟机系统中 由于虚拟机监视器缺乏对客户操作系统内核机制的理解 往往会抢占如上所述的虚拟机中的远端VCPU 从而导致其他VCPU的忙等延长 降低系统的性能 cross calls对虚拟机系统性能的影响 是Solaris应用到虚拟机系统应该解决的问题 共享cache问题 多核处理器的各个核之间 通常共享最后一级cache 任务或线程对cache的共享分为2类 一类为干涉性共享 另一类为有益性共享 对于有数据共享的多个并行线程 将它们调度在共享最后一级cache的各个核上 会有效地提高系统性能 近年来 已经有大量研究关于线程间如何有效 公平地共享cache这一珍贵资源 但在虚拟机系统中 由于VCPU调度器不能直接建立线程与物理处理单元的映射关系 它所采用的调度策略可能是与客户操作系统的调度策略相背离的 因此会抵消客户操作系统所作的努力 VCPU调度器如何实现任务间或者线程间对cache有益的共享 充分发挥多核处理器的潜力 是一个大的挑战 不对称多核问题 不对称多核处理器典型的由多个指令集相同但大小 频率和能耗皆不同的核构成 不对称多核处理器由2类核构成 快核和慢核 和对称多核处理器相比 不对称多核处理器更适合多样化的工作负载 不对称调度算法有3类 第1类是通过持续地监控性能或者通过基于应用的静态统计信息的分析模型来决定线程在不对称核上的调度策略 第2类是将并行程序的串行部分调度在快核上而把并行部分调度在慢核上 第3类是公平地共享快核或者给快核分配更重的负载 在虚拟机系统中 两级调度系统的任何一级如果缺乏对不对称核的支持 都无法发挥不对称多核处理器的潜力 甚至产生相反的影响 现有的解决机制及未来的研究方向 桥接语义缝隙消除同步机制的性能影响合理利用cache共享支持不对称多核 桥接语义缝隙 Boosting机制1 Xen的Credit调度器增加了所谓的 boosting 机制 boosting 机制利用IO受限型负载的基本特性识别IO受限型负载并给予运行IO受限型负载的VCPU以相对高的优先级 提高了响应性 2 Credit调度器为VCPU提供了3种优先级 boost under和over 其中 boost优先级最高 而over优先级最低 3 这个机制的前提是一个VCPU仅运行IO受限型任务 因此 对于混合负载的虚拟机 boosting机制就失效了 Kim等人混合负载情况下IO受限型负载感知的调度机制1 IO负载的感知 通过监测虚拟机中客户操作系统内核与硬件的低级交互行为 结合基于IO负载特征的灰盒知识来推断和识别IO负载 2 partialboosting 机制 一旦有IO事件发生 对应的VCPU马上被调度到物理CPU上进行IO事件的处理 完成之后立即将CPU归还给运行计算型负载的VCPU 如果有的话 这样既保证了IO受限型负载的高响应性 同时也不违背调度的公平性原则 以上2种机制提供了克服语义缝隙 提高IO受限型负载响应性的有效途径 Credit调度器的boosting没产生额外开销 但只适合纯IO受限型负载虚拟机与其他负载 如计算型负载 虚拟机并存的情况 应用范围有限 Kim等人提出的 partialboosting调度机制适用范围更广 但也存在较大的缺陷 首先 他们对IO受限型负载的推断是基于一个前提 即IO负载仅仅消耗少量的CPU时间而计算受限型负载消耗较多的CPU时间 而事实上 有很多情况是违背这个前提的 其次 partialboosting机制是包含一个附加机制 即IO任务和IO事件的关联机制 由于IO设备的多样性 建立一个具有较大通用性的的关联机制很难 第三 partialboosting机制是基于单核物理平台实现的 没有考虑VCPU的迁移及同步问题 消除同步机制的性能影响 组调度算法是一种经典的应用于并行负载调度的调度算法它可以有效地降低并行负载的同步开销 组调度的基本思想是 线程划分为组 称为gang gang中的线程在不同的处理单元上同时运行 线程与处理单元之间保持着一对一映射关系 线程同时被抢占且同时被重新调度 将组调度思想引入到虚拟机VCPU调度中 即可巧妙解决自旋锁问题Chuliang等人提出了一个虚拟机VCPU的混合调度框架 他们把虚拟机分为两类 并行负载虚拟机和高吞吐率虚拟机 对于并行负载虚拟机 采用同步调度机制 即让并行负载虚拟机中的所有VCPU同时被调度且同时被抢占 对于高吞吐率虚拟机 由于没有较高的同步要求 则采用异步调度机制 Uhlig等人提出了2种锁持有者抢占避免调度机制 一种被称为入侵式锁持有者抢占避免调度机制 而另外一种被称为非入侵式锁持有者抢占避免调度机制 Uhlig等人提出了一个滑动抢占窗口调度机制 Wells等人提出了一种带有硬件支持的自旋管理调度机制 合理利用cache共享 Wells等人提出了逻辑划分的机制 即在多个虚拟机并存的情况下 如果VCPU的数量大于物理CPU的数量 可将同一个虚拟机中的VCPU划分为组 建立组与槽的映射关系 Tam等人提出了一个在多核平台上共享感知的调度机制 支持不对称多核 虚拟机系统的两级调度框架决定了要在虚拟机系统中实现对不对称核的支持 虚拟机监视器和客户操
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025河南南阳市中心医院招聘高层次人才50人(博士研究生)考试参考题库及答案解析
- 二建市政施工方案范本
- 垃圾处理方案工程咨询
- 肺结核咨询通知方案
- 呼和浩特石化分公司2025年秋季高校毕业生招聘考试模拟试题及答案解析
- 河南古建园林施工方案
- 房地产全套施工方案
- 精装竣工保洁方案范本
- 不锈钢表面清洗施工方案
- 2025重庆渝海物业管理有限责任公司招7人考试参考试题及答案解析
- 生产主管转正工作总结
- 工艺美术运动代表人物及作品
- (完整版)高考英语考纲3500词汇表
- 国家开放大学电大《课程与教学论》形考任务3试题及答案
- 商务英语口语900句
- 辽宁省沈阳市基层诊所医疗机构卫生院社区卫生服务中心村卫生室名单目录信息
- 锅炉空预器清洗方案
- SF∕T 0111-2021 法医临床检验规范
- 药敏试验结果的解读
- DB14∕T 1319-2021 公路工程标准工程量清单及计量规范
- 冶金行业应用产品介绍(应用)
评论
0/150
提交评论