跳至主要内容

Hyper-V和多处理器虚机入门解读

Hyper-V采用基于Hyperisor的架构,并且充分利用Windows驱动模型,以便提供广泛的硬件支持。Hypervisor可以把单个服务器划分为多个CPU和内存的容器。由于采用微内核架构,Hyper-V可以提供高效的分区间通信机制,并在此基础上搭建高性能的虚拟I/O架构。根分区包含物理I/O设备,还将提供虚拟栈用来为子分区所实现的I/O服务。

虚拟栈可以实现模拟I/O设备,例如IDE控制器和DEC 21140A网卡。然而模拟这种设备的代价很昂贵。发送单个I/O请求,就有可能导致虚拟栈和子分区之间的多次切换。相反,Hyper-V提供专门为虚机环境所设计的虚拟I/O设备。这些虚拟设备连接到VMBus,这是一个支持即插即用的总线,使用共享内存,以便可以有效地进行分区间通信。Windows虚机可以自动检测到VMBus上的虚拟设备,并且加载合适的驱动程序。

Hyper-V中的虚拟输入/输出采用客户端/服务器架构,在根分区中包含VSP(虚拟服务提供程序),在子分区中包含VSC(虚拟服务客户端)。该架构极大地减少发送I/O请求所需的开销。如果Virtual Server用户把虚机迁移到Hyper-V中,他们将体会到高I/O的工作负载的CPU开销大大降低。

在这第一篇文章里,笔者想着重指出Hyper-V的主要性能特性:多处理器的虚机。Hyper-V支持4 CPU的Windows Server 2008虚机,和2 CPU的Windows Server 2003虚机。如果服务器工作负载需要很高的性能,我们可以考虑用2 CPU或者4 CPU的Hyper-V虚机对其进行虚拟化。当然,只有当工作负载确实需要的时候,才应该使用多处理器虚机,因为拥有更多的处理器会带来一些额外的开销。

  然而,操作系统内核和驱动会采用自旋锁(Spin Lock)的机制,在获得自旋锁之前,(线程)并不会阻塞,并一直处于自旋状态,前提是自旋锁只会保持很短的时间。但是虚拟化会打破这种条件,因为虚拟处理器是按时间片进行调度的。如果在保持自旋锁的时候竞争虚拟处理器,则其他虚拟处理器就要自旋很长时间,导致CPU循环的浪费。[盆盆注:自旋锁是多处理器操作系统的一种互斥机制,有点类似于互斥锁,但是保持时间更短。更详细信息,可以参考《Windows Internals》第四版的P152]

  我们在Hypervisor和Windows Server 2008内核里加入创新设计,尽可能防止出现自旋锁的长时间等待条件,如果确实存在长时间等待条件,也会有效地加以检测并对其进行处理。我们还对Hypervisor进行设计,包括调度程序和内存虚拟化逻辑,以使它们在大多数临界区中都不会锁定,从而确保多处理器系统能够获得很好的延展性。

  所以,4 CPU的Windows Server 2008虚机,其延展性可以和物理4 CPU系统一较高下。这是一个很好的注解,来诠释Windows Server 2008虚机和Hyper-V如何一起提供性能上的改进。我们还将在后续的版本里继续提高多处理器系统和多处理器虚机的延展性。

评论

此博客中的热门博文

小米3 谷歌地图无法定位的解决方法

  最近在刷机后,安装的谷歌地图无法wifi和移动网络定位,只能使用gps定位.   于是在尝试了几个方法之后,终于解决.在几个版本的miui上面都可以正常开启.    其实无法定位的原因在于没有同意谷歌的网络位置定位协议.     为了弹出这个同意协议的对话框,需要执行几个简单的步骤.    1.关闭锁屏密码,设置无密码    2.开启开发者选项    3.设置开机直接进入桌面    4.打开谷歌地图,执行wifi或移动网络定位(依然无法定位)    5.重启手机    6.重启手机之后,打开谷歌地图,显示位置服务以及关闭,选择低耗电模式,就会弹出同一网络位置定位的协议,注意选择同意协议,然后关闭    7.回到谷歌地图就可以定位了,与之相关的位置报告等也都可以使用了  

戴爾發布全新 XPS 13/14/16 筆記本:酷睿 Ultra 處理器 + OLED 屏

戴尔今日发布新款XPS 16、XPS 14 和XPS 13 笔记本,搭载英特尔酷睿Ultra 处理器,起价分别为1899.99 美元(IT之家备注:当前约13604 元人民币)、1699.99 美元(当前约12172 元人民币)和1299.99美元(当前约9308 元人民币),今年1 季度上市。 据介绍,新款XPS 16 取代老款XPS 17,XPS 14 取代老款XPS 15,XPS 13 取代XPS 13 Plus 系列。 新款XPS 16 可选Ultra 9 185H、64GB 内存和4TB PCIe 4.0 SSD,显卡可选RTX 4070;屏幕为16.3 英寸OLED 面板,3840*2400 分辨率,支持触控,支持48-90Hz 可变刷新率。 接口包括三个雷电4、MicroSD 卡槽、3.5mm 耳机插槽等。 机身厚度18.7mm,重2.1-2.2kg,电池容量99.5Wh。 新款XPS 14 可选Ultra 7 165H、64GB 内存和4TB PCIe 4.0 SSD,显卡可选RTX 4050;屏幕为14.5 英寸OLED 面板,3200*2000 分辨率,支持触控,支持48-120Hz 可变刷新率。 接口包括三个雷电4、MicroSD 卡槽、3.5mm 耳机插槽等。 机身厚度18mm,重1.68-1.74kg,电池容量69.5Wh。 新款XPS 13 可选Ultra 7 165H、64GB 内存和4TB PCIe 4.0 SSD;屏幕为13.4 英寸OLED 面板,2800*1800 分辨率,支持触控,支持48-60Hz 可变刷新率。 接口包括两个雷电4。 机身厚度14.8-15.3mm,重1.17-1.19kg,电池容量55Wh。

lunar lake 会是一个拯救intel的产品吗

 距离intel 发布lunar lake 已经过去几天了,虽然正式的产品还有半个月才上市,但各路平台已经有很多关于这产品线的多种评论了,看起来还是不错的。 最近几年,一直强大的intel开始面临了许多的挑战,特别是在移动端失利的情况下,桌面版和服务器端受限于自身工艺路线的进展缓慢,在x86市场上面对老对手AMD 的Zen架构和新台积电工艺的组合攻势下,显得疲于应对。 苹果出走x86以后,在移动端打拼多年的高通也加入到了桌面处理器这个复杂的赛道上来,突然间原本只有intel 和amd 两位选手的市场,一下子变得更热闹了。特别是扛着AI PC的旗帜下,各路选手突然间都有了自己的优势。 苹果M系列处理器推出后,让人们见识到了Arm处理器,做为桌面产品也可以很强大,特别是低功耗,当然这价格也是不菲的,特别是苹果产品一直以来的价格水平,让大家觉得这价格更值了。高通在自研Arm 架构的情况下,也做出了非常不错的X Elit,性能、功耗都接近了x86的产品,这让intel愈发尴尬了,基于intel7 工艺的产品竟然毫无优势了。 lunar lake 应该是intel 现在能拿出的最佳的选择了,使用了台积电代工,并且重新设计了芯片的结构,和苹果M系列一样集成了内存,在保持性能的前提下,将x86的功耗降低到新的水平。能耗看起来比骁龙X Elite稍微领先,但原生的X86架构,是不需要转译运行的,兼容性也大大的好于骁龙X。对于原本希望用骁龙X,来提升windows 平台的续航,AI 性能等目的,看起来已经优势不大了。这场竞赛看起来,还可以再进行一段时间,毕竟Windows On Arm 还是不如传统的windows的。后续intel的18A 工艺,新产品的综合性能,都是一个需要考量的问题。