CPU超频与电源设置对性能测试的影响

之前在Linux上做性能测试的时候,经常出现这样的情况:

同样的机器和配置,理论上性能的波动应当是很平均的,然而实际却是,在相当长一段时间里,性能很好;但在相当长一段时间里,却有明显的下降。当然,尽可能延长测试时间可以取到一个平均值,但是什么在背后影响性能的波动呢?

出现这种情况,主要是忽视了机器硬件优化对性能的影响。

以DL380 G8服务器为例,影响处理器性能的主要有两个因素:turbo mode 和rapid clock speed switching

1.turbo mode

即超频模式。在足够低温状态,os借用一部分空闲CPU的性能来提高繁忙CPU的性能。超频属于不可重现的测试环境,必须要关闭。

关闭turbo mode必须接上显示器,重启服务器F9进入BIOS设置:

SystemOptions -> Processor Options -> Intel (R) Turbo Boost Technology ->Enabled/Disabled

系统默认Enabled改为Disabled

2.Rapid clock speed switching 

即省电模式。为了省电,OS会降低空闲状态CPU的时钟速度,从而节省空闲CPU的能耗。带来的负面效果是:当不同核频率不一致时,我们不知道程序到底是在那个核上运行的。

省电模式默认为on-demand,即由OS按需要控制CPU的调度;对空闲CPU进行“暂停运行”。我们需要将其调整为Performance模式,即“从不省电”。

省电模式可以有三种方式设置

  1)通过BIOS设置

  2)在启动状态通过governors的command - /usr/bin/cpupower 管理:

      a)To show values, run “cpupower frequency-info”

      b)Tochange governors value, run “cpupower frequency-set -g performance”

      c)Then run “cpupower frequency-info” again to check

          正常应显示:

  currentpolicy: frequency should be within 1.60 GHz and 2.67 GHz.

                 The governor "performance"may decide which speed to use

                 within this range.

    注:具体的命令要看linux内核。较低版本命令为 /usr/bin/powersave ;同时,该模式需要所用的CPU支持Speedstepping

    3)使用power management profile. 有三种预定义的策略定义在/etc/pm-profiler:balanced_low_latency, low_latency, powersaving 

        要使用pm profile,需要先将 PM_PROFILER_PROFILE="low_latency" 写入/etc/pm-profiler.conf,然后执行

        rcpm-profiler start

        chkconfigpm-profiler on


经过设置去掉上述硬件优化后,整体系统性能会有明显下降,但好处是测试结果会更加稳定。如果要严格测试程序版本间的性能变化,刨除这些不稳定因素变得至关重要。

参考:

http://kretzfamily.de/blog/archives/144-Benchmarking-on-Modern-CPUs.html


  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值