增强Windows7多核心功能不是一句空话

去年1月份的时候,我曾经在多种平台上对当时的Windows 7、Vista和XP的多核/多处理器性能做过详细的评测 。具体情况请参阅51CTO文章:Windows 7多核评测:究竟快了多少? 。当时我的结论是Windows 7在从单核心向双核和四核架构扩展时能够提供更好的可扩展性,不过那时在我看来,这一优势还不足以让Windows 7能够在繁重的工作中全面取代更为精简高效的XP 。当然,非常肯定的是随着多核技术的发展和核心数量的不断增加,Windows 7内核的卓越可扩展性会帮助它在各种应用上全面而快速的超越XP 。
一年的时间很快过去了,我们来看看现在有了什么变化!这一次我用的是一台新的双四核Xeon 5500 HP Z800工作站,测试结果让我非常高兴:Windows 7不仅赶上了XP,而且在多项指标上比前辈超出47%甚至178% 。此外,无论是单四核还是双四核,Windows 7在这台Z800上都表现出远超他人的可扩展性 。看来,微软声称将增强Windows 7多核心功能不是一句空话 。
简单地说,在先进的多核芯片上运行繁重的多任务工作时,Windows 7的表现显著好于XP 。考虑到PC硬件的设计正在大踏步的向多核迈进,这种优势应该足以让任何人跳入Windows 7的行列 。
Windows 7杀手锏的原因
有几个因素造成了Windows 7在多核心上的优势 。例如NUMA(Non-Uniform Memory Access,分布式内存存取)技术的采用使计算密度变得更高,此外Nehalem的QPI(Quick Path Interconnect)架构取代了Intel使用多年的前端总线架构,通过内存控制器让CPU直接访问物理内存 。
当然,如果没有操作系统的支持,NUMA 和QPI也无处发挥,这就是为什么Windows 7的多核调整如此重要的原因,如果没有它,Intel和AMD的处理器即使再强大,性能的提高也无法传递到用户那里 。相关文章您可以参阅51CTO.com报道:“多核时代的Windows 7:如何跑得更快 。
Windows 7杀手锏让自身更加智能
Windows XP是一个伟大的操作系统,这一定从它占据了将近10年的王位就可以证明 。但是,当面对Windows 7的复杂的多核心支持时,XP也不得不承认自己已经老了 。
相比之下,Windows 7的视角显得更加细致入微,它能够体会单核CPU与多核CPU之间的区别,NUMA设计也帮助它在多处理器环境中发挥自如 。总之,这些新出现的处理器技术让Windows 7内核变得更加智能,能够更好地管理底层硬件,并且更合理的管理线程和分配内存 。
当然,一切都要拿证据说话 。尽管微软从一开始就表示Windows 7会在多核系统中全方位超越XP,但说起来容易做起来难 。事实上,在我的这台移动工作站上,在双核的情况下Windows 7的指标性能远远落后于XP,在四核时双方的发挥也不过半斤八两 。幸而我早有心理准备,当使用8核心(16线程)的新指标之后,Windows 7终于将XP远远的甩在身后,无论是SQL数据库(快47%)、MAPI工作流(快178%),还是多媒体播放任务 。
在可扩展性方面,在单处理器4核心和双处理器8核心的情况下Windows 7都完胜XP 。在SQL数据库任务中Windows 7的表现超出XP的两倍,而完成MAPI工作流任务时Windows 7更是高达XP的360% 。
总而言之,这是Windows 7的重大胜利,新的操作系统显然对多核处理器、同步多线程(SMT)和NUMA提供了强有力的支持 。虽然Windows 7直到8核心才彻底超越了XP,但提高的幅度足以让人欣喜,这加深了我对Windows内核开发团队的倾佩,这些家伙真的清楚该如何操作最底层的硬件平台 。
Windows 7杀手锏的未来发展
显然,那些使用多核心工作站的大用户们很快就能获得Windows 7的好处 。而潜在的受益者名单并不到此为止,新一代的Core i7 PC和笔记本用户也会从Windows 7的更智能的代码/缓存管理和多核调整中享受到性能飞跃 。

推荐阅读