云与虚拟化云计算模式( 三 )
DirectSegment:两层页表方案 , 这是学术界基于新硬件的方案 。GVA到GPA的映射管理与EPT相同 , 同样采用多级页表 。但GPA到HPA的映射采用分段机制 , GPA转换为HPA时只需要通过硬件加上一个偏移即可 。
文章图片
文章图片
GPA虽然不等于HPA , 但二者的映射关系十分简单 , 只需要DirectSegment硬件添加一个偏移 , 整个转换路径与物理机的路径相比差别很小 , 仅多了几次硬件偏移 。虚拟机使用4级页表时 , 转换路径如下图所示 , 其中DS表示GPA到HPA转换的硬件支持 。
文章图片
文章图片
优势:地址转换关系的建立开销低 , 同时转换过程的开销也很低 。
劣势:
1)需要硬件支持GPA到HPA分段映射 , 现有的硬件不具备这样的功能;
2)需要分配大段连续的内存 , 即主机不能有太多内存碎片 。
FlatEPT:两层页表方案 , 这也是学术界提出的基于新硬件的方案 。整体与EPT非常相似 , 唯一的区别在于EPT管理GPA到HPA的使用多级页表 , 一般是4级 , 每级512项;而FlatEPT使用仅有一级的扁平页表 , 表项远不止512 。
文章图片
文章图片
与EPT相同 , 虚拟机内各级页表的内容也是GPA , 查询下一级时需要先经过扁平扩展页表(nL4)转换为HPA 。由于扁平扩展页表只有一级 , 转换路径相比EPT缩短了非常多 。在虚拟机内使用4级页表时 , 转换路径如下图所示 , 最坏只需9(4+1+4*1)次查表 。
文章图片
文章图片
优势:地址转换关系的建立开销低 , 同时转换过程的开销也较低 。相比于DirectSegment对内存分配要求很低 , 只需要少量连续内存用作扁平扩展页表即可(8G规格虚拟机只需要16M) 。
劣势:需要硬件支持扁平扩展页表 , 当前的硬件只支持表项为512的多级扩展页表 。
MixSPTandEPT:混合方案 , 这是学术界较早提出的方案 , 简单而言就是动态的分时切换SPT与EPT 。在虚拟机运行时监控和采集TLBmiss与PageFault的数据 , 在二者达到设定的阈值时进行SPT与EPT之间的切换 , 如下图所示:TLBmiss率高于阈值T1 , PageFault频率低于阈值T2时 , 从EPT切换到SPTTLBmiss率低于阈值T1 , PageFault频率高于阈值T2时 , 从SPT切换到EPT
文章图片
文章图片
优势:有机会充分利用SPT与EPT的优势 , 达到更好的性能 。
劣势:
1)页表切换阈值的设定很困难 , 硬件配置都可能影响阈值;
2)SPT与EPT的切换也是有代价的 , 主要是SPT的销毁与重建 。总结
一层页表显著的优势是地址转换过程开销低 , 与物理机相同 , 需要解决的问题是减少地址转换建立的开销 。一个可能的方向是放弃一些安全性 , 让页表的修改更轻量;另一个更实际的方向是在合适的场景使用 , 即针对页表修改不频繁的负载使用 。
两层页表的优势是地址转换建立的开销小 , 虚拟机可以独立修改页表 , 需要考虑的问题是缩短转换路径 。这个方向其实可行性很高 , 但是依赖新硬件的支持 , 短期不太可能出现符合要求的新硬件 。
混合页表的设计初衷是希望充分利用两类页表的优势 , 但是做好动态的模式切换是非常困难的 , 负载的差异甚至硬件的差异都可能影响切换的效果 。或许针对已知负载做定向的调优是一个可行的方向 。
- 云泰光学仪器产值增长100%
- 加强产业融合 赋能低碳发展 海尔卡奥斯智慧能源与“青碳行”签署战略合作协议
- 人类与AI如何共处?诺奖科学家、将棋天才、“低欲望社会”提出者的不同解答
- 线上新书发布!云上带你了解有关“冬奥”的那些事儿
- 云图计划预约奖励有哪些(云图计划预约奖励介绍)
- 少前云图计划新手适合什么卡池(少前云图计划新手抽卡指南)
- 小米智能设备再次荣获国际安全认证 理论与实践并行物联网安全迈向新征程
- 云顶之弈龙族运营丧尸95阵容搭什么好(云顶之弈龙族运营丧尸95阵容搭配心得一览)
- 少女前线云图计划兑换码有哪些(少女前线云图计划最新礼包兑换码分享)
- 少前云图计划各职业有哪些角色值得培养(少前云图计划值得培养角色推荐)
