ページへ戻る
印刷
Gentoo Linuxな生活/CPU省電力で悩む
をテンプレートにして作成 ::
Nest Of Hawk
xpwiki
:Gentoo Linuxな生活/CPU省電力で悩む をテンプレートにして作成
開始行:
*時代はエコ
最近は省電力化がうるさいですね。で、CPUも暇なときは動作周...
*技術背景
昔から、ノートPCあたりでは、周波数自動調整機能などは、結...
:Intel|EIST(Enhanced Intel SpeedStep Technorogy) Core2Duo...
:AMD|PowerNow! Athron64以降が対応しているみたい。おいちゃ...
*設定
**Linuxカーネル
まずは、Linuxカーネル側を設定します。おなじみmake menucon...
Power management and ACPI options --->
[*] ACPI (Advanced Configuration and Power Interface) Su...
<*> Processor
<*> Thermal Zone
CPU Frequency scaling --->
Default CPUFreq governor (ondemand) --->
-*- 'performance' governor
<M> 'powersave' governor
<M> 'userspace' governor for userspace frequency sca...
-*- 'ondemand' cpufreq policy governor
<*> 'conservative' cpufreq governor
*** CPUFreq processor drivers ***
<*> ACPI Processor P-States driver
< > AMD Opteron/Athlon64 PowerNow!
< > Intel Enhanced SpeedStep (deprecated)
< > Intel Pentium 4 clock modulation
うちの設定ですと、こんな感じ。ポイントは、
-ACPIを有効にする
-ProcessorのACPIをONにする
-CPU Frequency scalingのgovernorを選択する。その際使用し...
-CPU周波数変更用のドライバをチョイスする。
さて、governorってなんやねん?これは、動作時のCPU周波数変...
:performance|選択周波数内の最大値を選択
:powersave|選択周波数内の最小値を選択
:userspace|ユーザーが動作周波数を手動で設定
:ondemand|CPU負荷や、センサー温度などを判定して自動的に周...
:conservative|ondemandと似ているが、いきなり変更ではなく...
CPU周波数変更用ドライバは
:Intel Core2以上(EIST)| ACPI Processor P-States driver
:AMD| AMD Opteron/Athlon64 PowerNow!
:Intel EIST非対応(Pentium4等)|Intel Pentium 4 clock modul...
を選択します
**CPU周波数変更用のツール類
***cpufrequtils
こいつらは、CPU周波数情報のモニタツールです。
# emerge cpufrequtils
でインストール。
-cpufreq-info
-cpufreq-set
といったツール群がインストールされます
***cpufreqd
ユーザーランド常駐型CPU周波数変更用ポリシーを可変させてく...
# emerge cpufreqd
でインストール。 /etc cpufreqd.confに設定ファイルがありま...
# this is a comment
# see CPUFREQD.CONF(5) manpage for a complete reference
[General]
pidfile=/var/run/cpufreqd.pid
poll_interval=2
verbosity=4
enable_remote=1
remote_group=wheel
[/General]
[Profile]
name=On Demand High
minfreq=0%
maxfreq=100%
up_threshold=60
policy=ondemand
[/Profile]
[Profile]
name=Performance High
minfreq=100%
maxfreq=100%
policy=performance
#exec_post=echo 8 > /proc/acpi/sony/brightness
[/Profile]
[Profile]
name=Performance Low
minfreq=1596000
maxfreq=1596000
policy=performance
[/Profile]
[Rule]
name=Default
cpu_interval=0-100
profile=On Demand High
[/Rule]
[Rule]
name=Compile
programs=gcc
cpu_interval=0-100
profile=Performance High
[/Rule]
[General]タグには、汎用設定を。~
[Profile]タグには、CPU動作変更ポリシーをいくつか並べます...
[Rule]タグには、どういう状態のときに、どのプロファイル動...
こんな風に、デフォルトはこうだが、ある特定のプログラムが...
詳細はmanとか見てね~。デフォルトのcpufreqd.confにも設定例...
設定できたら
# rc-update add cpufreqd boot
私はboot runlevelへ設定。CPU周波数の変更動作は、起動時か...
*動作検証
# watch 'grep "cpu MHz" /proc/cpuinfo'
なんて打ってみると、周期的に現在動作中CPUを出してくれます...
# cpufreq-info
cpufrequtils 005: cpufreq-info (C) Dominik Brodowski 200...
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which need to switch frequency at the same time: 0
hardware limits: 1.60 GHz - 2.39 GHz
available frequency steps: 2.39 GHz, 1.60 GHz
available cpufreq governors: conservative, ondemand, pe...
current policy: frequency should be within 1.60 GHz and...
The governor "ondemand" may decide whic...
within this range.
current CPU frequency is 1.60 GHz (asserted by call to ...
analyzing CPU 1:
driver: acpi-cpufreq
CPUs which need to switch frequency at the same time: 1
hardware limits: 1.60 GHz - 2.39 GHz
available frequency steps: 2.39 GHz, 1.60 GHz
available cpufreq governors: conservative, ondemand, pe...
current policy: frequency should be within 1.60 GHz and...
The governor "ondemand" may decide whic...
within this range.
current CPU frequency is 1.60 GHz (asserted by call to ...
このコマンドで、現在の動作状態を見ることもできます。ん~...
終了行:
*時代はエコ
最近は省電力化がうるさいですね。で、CPUも暇なときは動作周...
*技術背景
昔から、ノートPCあたりでは、周波数自動調整機能などは、結...
:Intel|EIST(Enhanced Intel SpeedStep Technorogy) Core2Duo...
:AMD|PowerNow! Athron64以降が対応しているみたい。おいちゃ...
*設定
**Linuxカーネル
まずは、Linuxカーネル側を設定します。おなじみmake menucon...
Power management and ACPI options --->
[*] ACPI (Advanced Configuration and Power Interface) Su...
<*> Processor
<*> Thermal Zone
CPU Frequency scaling --->
Default CPUFreq governor (ondemand) --->
-*- 'performance' governor
<M> 'powersave' governor
<M> 'userspace' governor for userspace frequency sca...
-*- 'ondemand' cpufreq policy governor
<*> 'conservative' cpufreq governor
*** CPUFreq processor drivers ***
<*> ACPI Processor P-States driver
< > AMD Opteron/Athlon64 PowerNow!
< > Intel Enhanced SpeedStep (deprecated)
< > Intel Pentium 4 clock modulation
うちの設定ですと、こんな感じ。ポイントは、
-ACPIを有効にする
-ProcessorのACPIをONにする
-CPU Frequency scalingのgovernorを選択する。その際使用し...
-CPU周波数変更用のドライバをチョイスする。
さて、governorってなんやねん?これは、動作時のCPU周波数変...
:performance|選択周波数内の最大値を選択
:powersave|選択周波数内の最小値を選択
:userspace|ユーザーが動作周波数を手動で設定
:ondemand|CPU負荷や、センサー温度などを判定して自動的に周...
:conservative|ondemandと似ているが、いきなり変更ではなく...
CPU周波数変更用ドライバは
:Intel Core2以上(EIST)| ACPI Processor P-States driver
:AMD| AMD Opteron/Athlon64 PowerNow!
:Intel EIST非対応(Pentium4等)|Intel Pentium 4 clock modul...
を選択します
**CPU周波数変更用のツール類
***cpufrequtils
こいつらは、CPU周波数情報のモニタツールです。
# emerge cpufrequtils
でインストール。
-cpufreq-info
-cpufreq-set
といったツール群がインストールされます
***cpufreqd
ユーザーランド常駐型CPU周波数変更用ポリシーを可変させてく...
# emerge cpufreqd
でインストール。 /etc cpufreqd.confに設定ファイルがありま...
# this is a comment
# see CPUFREQD.CONF(5) manpage for a complete reference
[General]
pidfile=/var/run/cpufreqd.pid
poll_interval=2
verbosity=4
enable_remote=1
remote_group=wheel
[/General]
[Profile]
name=On Demand High
minfreq=0%
maxfreq=100%
up_threshold=60
policy=ondemand
[/Profile]
[Profile]
name=Performance High
minfreq=100%
maxfreq=100%
policy=performance
#exec_post=echo 8 > /proc/acpi/sony/brightness
[/Profile]
[Profile]
name=Performance Low
minfreq=1596000
maxfreq=1596000
policy=performance
[/Profile]
[Rule]
name=Default
cpu_interval=0-100
profile=On Demand High
[/Rule]
[Rule]
name=Compile
programs=gcc
cpu_interval=0-100
profile=Performance High
[/Rule]
[General]タグには、汎用設定を。~
[Profile]タグには、CPU動作変更ポリシーをいくつか並べます...
[Rule]タグには、どういう状態のときに、どのプロファイル動...
こんな風に、デフォルトはこうだが、ある特定のプログラムが...
詳細はmanとか見てね~。デフォルトのcpufreqd.confにも設定例...
設定できたら
# rc-update add cpufreqd boot
私はboot runlevelへ設定。CPU周波数の変更動作は、起動時か...
*動作検証
# watch 'grep "cpu MHz" /proc/cpuinfo'
なんて打ってみると、周期的に現在動作中CPUを出してくれます...
# cpufreq-info
cpufrequtils 005: cpufreq-info (C) Dominik Brodowski 200...
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which need to switch frequency at the same time: 0
hardware limits: 1.60 GHz - 2.39 GHz
available frequency steps: 2.39 GHz, 1.60 GHz
available cpufreq governors: conservative, ondemand, pe...
current policy: frequency should be within 1.60 GHz and...
The governor "ondemand" may decide whic...
within this range.
current CPU frequency is 1.60 GHz (asserted by call to ...
analyzing CPU 1:
driver: acpi-cpufreq
CPUs which need to switch frequency at the same time: 1
hardware limits: 1.60 GHz - 2.39 GHz
available frequency steps: 2.39 GHz, 1.60 GHz
available cpufreq governors: conservative, ondemand, pe...
current policy: frequency should be within 1.60 GHz and...
The governor "ondemand" may decide whic...
within this range.
current CPU frequency is 1.60 GHz (asserted by call to ...
このコマンドで、現在の動作状態を見ることもできます。ん~...
ページ名: