【IT168 应用技巧】众所周知,由于开发时间(2000-2001年)较早的缘故,Windows XP是一个针对单核处理器的产品。虽然支持对称单核多处理器(SMP),但是对2005年以后出现的双核,单处理器如AMD 双核移动炫龙和英特尔酷睿移动处理器支持并不理想。很多的双核笔记本用户反应双核处理器在运行没有针对双核设计的程序和游戏时,出现Windows XP系统运行不稳定的情况或者跟单核处理器相比,运行速度不增反而减慢的奇怪现象 尤其是在游戏中,经常出现游戏玩家口中所谓的“卡机”现象。
微软知识库中的三篇文档对这种现象进行了描述:
KB896256:如果计算机装有多个支持处理器电源管理功能(如高级配置和电源界面 (ACPI) 处理器性能状态)的处理器,则需要安装 Microsoft Windows XP Service Pack 2 (SP2)。并且使用本更新来优化运行 Windows XP SP2 的计算机的性能和行为。如果没有安装此类更新,则装有这些具有电源管理功能的移动双核处理器的计算机可能出现性能下降或行为异常。注意:此问题还会影响基于 x64 版本的 Microsoft Windows Server 2003。但是,关联的专用修补程序无法解决在 AMD 双核计算机上运行的游戏和其他应用程序中的计时问题。
原始地址:http://support.microsoft.com/kb/896256/
KB924441 :安装本更新程序可以解决以下问题:使用支持 ACPI 处理器性能状态 (AMD PowerNow!) 的 Advanced Micro Devices (AMD) 双内核处理器或多处理器的系统停止响应问题。
KB909944:当您尝试使用双核心处理器, 在 基于 WindowsXP 计算机上运行游戏,计算机性能可能很差。 例如, 可能会遇到以下症状之一:
- 游戏停止响应在游戏过程。
- 游戏停止响应在呈现过程。
- 游戏速度很慢。
如果使用不是运行双核心处理器计算机上设计游戏有时可能会出现这些性能问题。 发生性能问题的原因是游戏无法正确捕获计时信息。
原始地址:http://support.microsoft.com/kb/909944/
相应的,微软在网站上提供了这个双核补丁的下载,
Windows XP 更新程序 (KB896256),载地址:微软官方( http://www.microsoft.com/downloads/details.aspx?FamilyID=c2ab5a48-8240-4934-bbd8-34fb8a0fce3b&DisplayLang=zh-cn )
单单是关于双核处理器性能下降问题,微软就发表了至少三篇相关知识库文章,我们作为双核笔记本用户,究竟需要哪个双核补丁呢?就让我们来逐个分析,探索一个究竟。
首先我们再来看一下KB896256的描述,让笔者把其中的关键文字用黑体标注出来:
KB896256:具有多个支持 ACPI 处理器性能状态的 CPU 的计算机需要安装 Windows XP SP2。此要求适用于支持下列项目的计算机:
- 多个物理插槽
- 多核设计
- 多个逻辑线程,如 Intel 超线程技术
由于 Windows XP 最初并不支持多处理器配置的性能状态,因此需要进行更改才能在多处理器系统上正确实现这种支持。Windows XP Service Pack 2 包括对核心电源管理器所需的更改。这些更改可以确保 Windows XP 在具有处理器性能状态的多处理器系统上能够正确运行。
此修补程序还解决了在具有多个支持处理器性能状态的处理器的计算机上存在的下列问题:
- 处理器性能状态在使用按需切换功能时,单线程工作负荷的性能可能会下降。
- 在多处理器系统上使用 ACPI 电源管理计时器时,处理器时间戳计数器 (TSC) 的同步跨处理器进行注册。
- 核心电源管理器中的 ACPI C 状态升级和降级问题。
背景知识:什么是“按需切换”?
按需切换 (DBS) 是指使用 ACPI 处理器性能状态(动态调整电压和频率)来响应系统工作负荷。Windows XP 处理器电源管理使用自适应处理器限制策略来实现 DBS。此策略会自动地动态调节处理器的当前性能状态,以响应系统 CPU 的使用情况而无需用户干预。 就是我们平常所说的动态调频技术,支持这种技术的CPU在负荷不大的情况下,自动降低运行频率,在CPU占用率增高的情况下,可以在1/2000秒内将运行频率切换到全速运行,这样降低了音频、视频播放、上网、文字处理、文件下载这类轻量级任务时候,笔记本的发热量,也保证视频编码、文件压缩、3D渲染的时候的机器性能。
如果单线程工作负荷运行于包括双核配置的多处理器系统上,则工作负荷可以在可用的 CPU 内核间迁移。此行为是 Windows 在可用 CPU 资源之间安排工作的正常现象。但是,在具有处理器性能状态的系统上,如果该处理器性能状态使用自适应处理器限制策略运行,则此线程迁移可能会导致 Windows 核心电源管理器错误地计算处理器的非常好的目标性能状态。发生此行为的原因是,单个处理器内核(逻辑的或物理的)看起来好像没有整个处理器包实际那么繁忙。在使用单线程工作负荷的性能基准上,此产物的结果可能是性能下降,也可能是连续运行的相同基准测试之间存在很大程度的差异。 导致运行繁重的单核任务的时候,处理器工作在错误的降频状态!
此双核补丁程序包括对核心电源管理器的更改,以跟踪处理器包之间的 CPU 使用情况。通过这些更改可以看到复合 CPU 的真实活动级别,因此有助于正确地计算增加的目标性能状态。
很明显,从上面可以得出2个结论:
- 必须是支持SpeedStep,PowerNows!此类按需切换技术的CPU,双核补丁才能发挥作用,赛扬处理器,不支持按需切换 (DBS)的桌面双核处理器,补丁起不到作用。
- Windows电源管理必须处于CPU自动变频状态,补丁才能发挥作用。
以上是根据微软公司相关文档得出的结论,接下来我们通过测试验证双核补丁在什么条件下,能够多大程度影响Windows XP性能?