服务器 频道

为什么会更节能 Win7/2008 R2改进解析

  还有一个处于核心的关于节能方面的改进是Timer Coalescing,Timer可以是时钟或定时器,Coalescing则是聚合的意思,Timer Coalescing就是时钟聚合。它基于这样的考虑:将激活处理器的时钟中断都集中起来,让处理器集中忙一段时间,然后其它的时间可以用来睡觉。在没有时钟聚合的时候,处理器不停地处理各种时钟,没有时间休息。


时钟中断可以在任意时候发生,因此可以随机中断当前的睡眠,时钟聚合功能可以让一些时钟发生的时间略微偏移、集中起来,当然,需要使用新的API,通过新API,程序或驱动可以指定可忍受的时钟延迟时间;一些程序或许不喜欢忍受那么一丁点延迟

关于时钟中断,还有一个改进就是刷新系统时间的主时钟不再打断所有的逻辑处理器,而只是打断不处于限制状态的逻辑处理器;主时钟中断用来刷新进程/线程的运行时间,以及用来计算它们使用的时间片

本页最开始的那张图的图示是错误的,这张图才正确表示了时钟聚合的工作方式:在指向未来的时间坐标轴上,上方是非聚合的时钟时间,下方则是时钟事件,可见,聚合的时钟保持了较长的间隔,在间隔内,处理器可以得到较多的休息

最终时钟聚合可以降低处理器占用率,对性能的影响倒是不大,主要是在节能方面:

非聚合时钟的休息时间片基本上都是1毫秒之内,而时钟聚合后,可以获得较多的4-8毫秒时间,从而可以让处理器进入更深层次的节能睡眠状态
0
相关文章