Chinaunix首页 | 论坛 | 博客
  • 博客访问: 796717
  • 博文数量: 135
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1664
  • 用 户 组: 普通用户
  • 注册时间: 2013-07-09 16:16
个人简介

围城

文章分类

全部博文(135)

文章存档

2019年(3)

2018年(7)

2017年(14)

2016年(15)

2015年(34)

2014年(9)

2013年(53)

我的朋友

分类: LINUX

2018-01-31 18:43:35

          


从Ubuntu15的某个版本开始,在使用intel某些cpu的pc上默认使用intel_pstate cpufreq driver。后果就是只有performance和powersave两个governor可用。可通过下面命令确认:

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governor

powersave performance

可看到可选的governor很少,只有两种(对于非intel_pstate cpufreq driver而言,常见的governor有ondemand powersave performance conservative userspace等,有些android设备还有叫interactive的governor)。

或者用 cpufreq-info

$ cpufreq-info

cpufrequtils 008: cpufreq-info (C) DominikBrodowski 2004-2009

Report errors and bugs tocpufreq@vger.kernel.org, please.

analyzing CPU 0:

 driver: intel_pstate

 CPUs which run at the same hardware frequency: 0

 CPUs which need to have their frequency coordinated by software: 0

 maximum transition latency: 0.97 ms.

 hardware limits: 1.20 GHz - 2.80 GHz

 available cpufreq governors: performance, powersave

 current policy: frequency should be within 1.20 GHz and 2.80 GHz.

                  The governor"powersave" may decide which speed to use

                  within this range.

 current CPU frequency is 1.21 GHz.

注: 要使用cpufreq-info和后面要提到的cpufreq-set,请先安装cpufrequtils,后面会提到。


在使用intel_pstate cpufreq driver的情况下,即使governor是powersave或者performance,但观测发现scaling_cur_freq是一直变化的,而不是像它们的含义一样,使用最低或者最高频率。

如果要测试系统或者软件的性能,我们需要固定cpu频率。本文讲述如何在这种的pc上固定cpu频率。


1.       安装cpufrequtils

sudo apt-get install cpufrequtils


2.       Disable intel_pstate driver

in /etc/default/grub, change

GRUB_CMDLINE_LINUX_DEFAULT="quietsplash"

to

GRUB_CMDLINE_LINUX_DEFAULT="quietsplash intel_pstate=disable"

sudo update-grub

after reboot, then acpi-cpufreq driver willbe used.


3.       固定频率

这时sysfs下cpufreq相关的节点就是我们熟悉的文件了。

可使用powersave来使用固定的最低频率,

sudo cpufreq-set -g performance

也可使用performance governor来使用固定的最高频率

sudo cpufreq-set -g powersave


推荐使用userspace governor,然后设置我们期望的频率(这里假设我们要设置cpu频率为2GHz).

sudo cpufreq-set -g userspace

sudo cpufreq-set -f 2000000

阅读(2413) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~