https://wiki.archlinux.org/api.php?action=feedcontributions&user=Zzwen&feedformat=atom
ArchWiki - User contributions [en]
2024-03-29T06:40:56Z
User contributions
MediaWiki 1.41.0
https://wiki.archlinux.org/index.php?title=CPU_frequency_scaling_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)&diff=54167
CPU frequency scaling (简体中文)
2008-11-26T08:57:33Z
<p>Zzwen: /* 调速器 (CPU 电源方案) */</p>
<hr />
<div>[[Category:电源管理)]]<br />
[[Category:CPU (简体中文)]]<br />
[[Category:守护进程和系统服务]]<br />
[[Category:HOWTOs (简体中文)]]<br />
[[Category:简体中文]]<br />
<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|Cpufrequtils}}<br />
{{i18n_entry|Русский|Cpufrequtils (Русский)}}<br />
{{i18n_entry|Español|Cpufrequtils (Español)}}<br />
{{i18n_entry|Português|Cpufrequtils (Português)}}<br />
{{i18n_entry|简体中文|Cpufrequtils (简体中文)}}<br />
{{i18n_links_end}}<br />
<br />
= 概要 =<br />
<tt>Cpufrequtils</tt> 是一套被设计为协助 CPU 频率调节的工具,CPU 频率调节是一种主要被笔记本电脑用于让操作系统调节 CPU 速度的技术,而这取决于当前的系统负载和(或者)电源管理方案。例如,CPU 频率调节可以在笔记本电脑使用电池工作时,将 2Ghz 的处理器降低到 1Ghz 来延长续航时间,减少发热和减少风扇噪音。<br />
<br />
若与 [[Pm-utils]] 一起使用,可以提供一套完整的电源管理功能。<br />
<br />
= 安装 =<br />
<tt>Cpufrequtils</tt> 软件包可以从 [http://www.archlinux.org/packages/search/?q=cpufrequtils Extra] 软件源得到:<br />
# pacman -S cpufrequtils<br />
<br />
= 设置 =<br />
设置 CPU 频率调节需要三步:<br />
# 加载合适的 CPU 频率调节驱动程序<br />
# 加载需要的调速器<br />
# 设置并加载 CPU 频率调节守护进程 (可选)<br />
<br />
== CPU 频率调节驱动程序 ==<br />
要使频率调节正常工作,操作系统必须知道您的 CPU 所具有的一些限制,为此,可以加载一个能读取、管理您的 CPU 规格的内核驱动。<br />
<br />
大部分较新的笔记本电脑可以简单地使用 '''<tt>acpi-cpufreq</tt>''' 驱动,其他选项包括 ''p4-clockmod, powernow-k6, powernow-k7, powernow-k8,'' 和 ''speedstep-centrino'' 驱动。<br />
<br />
手动加载 CPU 频率调节驱动:<br />
# modprobe acpi-cpufreq<br />
<br />
若要自动加载驱动,将合适的驱动添加到 <tt>/etc/rc.conf</tt> 的 MODULES 列,如:<br />
MODULES=( '''''acpi-cpufreq''''' vboxdrv fuse fglrx iwl3945 ... )<br />
<br />
加载合适的 cpufreq 驱动后,您可以用一下命令来查看您的 CPU 的详细信息:<br />
<br />
$ cpufreq-info<br />
<br />
样板输出 <tt>cpufreq-info</tt> (Intel Duo Core T2500):<br />
analyzing CPU 0:<br />
driver: acpi-cpufreq<br />
CPUs which need to switch frequency at the same time: 0 1<br />
hardware limits: 1000 MHz - 2.00 GHz<br />
available frequency steps: 2.00 GHz, 1.67 GHz, 1.33 GHz, 1000 MHz<br />
available cpufreq governors: ondemand, performance<br />
current policy: frequency should be within 1000 MHz and 2.00 GHz.<br />
The governor "performance" may decide which speed to use<br />
within this range.<br />
current CPU frequency is 2.00 GHz.<br />
analyzing CPU 1:<br />
driver: acpi-cpufreq<br />
CPUs which need to switch frequency at the same time: 0 1<br />
hardware limits: 1000 MHz - 2.00 GHz<br />
available frequency steps: 2.00 GHz, 1.67 GHz, 1.33 GHz, 1000 MHz<br />
available cpufreq governors: ondemand, performance<br />
current policy: frequency should be within 1000 MHz and 2.00 GHz.<br />
The governor "performance" may decide which speed to use<br />
within this range.<br />
current CPU frequency is 2.00 GHz.<br />
<br />
== 调速器 (CPU 电源方案) ==<br />
调速器可以被看作是预先设置好的 CPU 电源方案,它们必须被作为内核模块加载才能够被 kpowersave 和 gnome-power-manager 之类的程序识别。您可以加载多个调速器,但是在同一时间您只能激活一个。<br />
<br />
可用的调速器:<br />
*performance '''(默认)''' -- Performance 调速器使 CPU 运行在最高频率,它已经被编译进内核。<br />
*cpufreq_ondemand ''(推荐)'' -- 根据系统负载动态调节 CPU 频率。<br />
*cpufreq_conservative -- 与 ondemand 相似但更为保守 (clock speed changes are more graceful)<br />
*cpufreq_powersave -- 使 CPU 运行在最低频率。<br />
*cpufreq_userspace -- 由用户手动选择 CPU 频率。<br />
<br />
将需要的调速器加入 <tt>/etc/rc.conf</tt> 的 MODULES 列:<br />
MODULES=(acpi-cpufreq '''''cpufreq_ondemand cpufreq_powersave''''' vboxdrv fuse fglrx iwl3945 ... )<br />
<br />
作为选择,您可以以 root 执行 <tt>cpufreq-set</tt> 命令来手动设置调速器,但这在关机或重启后不会保存。如:<br />
<br />
# cpufreq-set -g ondemand<br />
<br />
运行 '''<tt>cpufreq-set --help</tt>''' 或者 '''<tt>man cpufreq-set</tt>''' 来获得更多信息。<br />
<br />
添加cpu监视器<br />
监视cpu频率的系统就有,右键单击面板,选择“添加到面板”,里面找到“cpu频率范围监视器”。<br />
另外,如果嫌命令行麻烦,可以这么做<br />
代码:<br />
# sudo chmod +s /usr/bin/cpufreq-selector<br />
然后,cpu频率范围监视器的首选项里就会多出一个“频率选择器”,显示菜单选择“频率和调速器”。鼠标左键单击cpu频率范围监视器,会发现“频率”和“调速器”两个菜单,就可以随便调了<br />
<br />
== 守护进程 ==<br />
<tt>cpufrequtils</tt> 也安装了一个守护进程,可以在启动系统的时候就设置调速器和 CPU 的最高、最低频率,而不需要额外的如 kpowersave 之类的程序。这对于运行轻量级桌面,如 Openbox 的人来说是一个完善的解决方案。<br />
<br />
在启动守护进程之前,以 root 编辑 <tt>/etc/conf.d/cpufreq</tt>,选择需要的调速器并且设置 CPU 的最高、最低频率,例如:<br />
<br />
#configuration for cpufreq control<br />
# valid governors:<br />
# ondemand, performance, powersave,<br />
# conservative, userspace<br />
governor="ondemand"<br />
<br />
# valid suffixes: Hz, kHz (default), MHz, GHz, THz<br />
min_freq="1GHz"<br />
max_freq="2GHz"<br />
<br />
'''''注意:''' 精确的 min/max 数值可以由运行 '''cpufreq-info''' 查看 (在加载 CPU 驱动之后,如 ''modprobe acpi-cpufreq'')。不过,这是可选的,您可以将它们完全忽略,例如删除或者注释这两行,这样它将会自动工作。''<br />
<br />
设置好配置文件后,可以运行以下命令来启动守护进程:<br />
# /etc/rc.d/cpufreq start<br />
<br />
若要在启动系统时自动加载守护进程,将 <tt>cpufreq</tt> 加到 <tt>/etc/rc.conf</tt> 的 DAEMONS 列,如:<br />
DAEMONS=(syslog-ng hal '''''cpufreq''''' dhcdbd networkmanager !network !netfs @alsa @crond @cups @fam @ntpd @sshd)<br />
<br />
= 其他资源 =<br />
[[CPU_Frequency_Scaling]] - 为桌面环境用户准备的一些额外信息。 (Arch Wiki Entry)<br><br />
[[Pm-utils]] - 由 openSUSE 社区提供的挂起/休眠框架 (Arch Wiki Entry)</div>
Zzwen